package com.github.anastr.speedview; import android.graphics.Color; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.CheckBox; import android.widget.CompoundButton; import android.widget.EditText; import android.widget.SeekBar; import android.widget.TextView; import com.github.anastr.speedviewlib.SpeedView; import java.util.Locale; public class ControlActivity extends AppCompatActivity { SpeedView speedView; SeekBar seekBar; EditText maxSpeed, speedometerWidth; CheckBox withTremble; TextView textSpeed; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_control); speedView = (SpeedView) findViewById(R.id.awesomeSpeedometer); seekBar = (SeekBar) findViewById(R.id.seekBar); textSpeed = (TextView) findViewById(R.id.textSpeed); maxSpeed = (EditText) findViewById(R.id.maxSpeed); speedometerWidth = (EditText) findViewById(R.id.speedometerWidth); withTremble = (CheckBox) findViewById(R.id.withTremble); withTremble.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { speedView.setWithTremble(isChecked); } }); seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { textSpeed.setText(String.format(Locale.getDefault(), "%d", progress)); } @Override public void onStartTrackingTouch(SeekBar seekBar) { } @Override public void onStopTrackingTouch(SeekBar seekBar) { } }); speedView.speedTo(50); } public void setSpeed(View view) { speedView.speedTo(seekBar.getProgress()); } public void setMaxSpeed(View view) { try { int max = Integer.parseInt(maxSpeed.getText().toString()); seekBar.setMax(max); speedView.setMaxSpeed(max); } catch (Exception e) { maxSpeed.setError(e.getMessage()); } } public void setSpeedometerWidth(View view) { try { float width = Float.parseFloat(speedometerWidth.getText().toString()); speedView.setSpeedometerWidth(width); } catch (Exception e) { speedometerWidth.setError(e.getMessage()); } } public void setSpeedTextSize(View view) { EditText speedTextSize = (EditText) findViewById(R.id.speedTextSize); try { float size = Float.parseFloat(speedTextSize.getText().toString()); speedView.setSpeedTextSize(size); } catch (Exception e) { speedTextSize.setError(e.getMessage()); } } public void setIndicatorColor(View view) { EditText indicatorColor = (EditText) findViewById(R.id.indicatorColor); try{ speedView.setIndicatorColor(Color.parseColor(indicatorColor.getText().toString())); } catch (Exception e) { indicatorColor.setError(e.getMessage()); } } public void setCenterCircleColor(View view) { EditText centerCircleColor = (EditText) findViewById(R.id.centerCircleColor); try{ speedView.setCenterCircleColor(Color.parseColor(centerCircleColor.getText().toString())); } catch (Exception e) { centerCircleColor.setError(e.getMessage()); } } public void setLowSpeedColor(View view) { EditText lowSpeedColor = (EditText) findViewById(R.id.lowSpeedColor); try{ speedView.setLowSpeedColor(Color.parseColor(lowSpeedColor.getText().toString())); } catch (Exception e) { lowSpeedColor.setError(e.getMessage()); } } public void setMediumSpeedColor(View view) { EditText mediumSpeedColor = (EditText) findViewById(R.id.mediumSpeedColor); try{ speedView.setMediumSpeedColor(Color.parseColor(mediumSpeedColor.getText().toString())); } catch (Exception e) { mediumSpeedColor.setError(e.getMessage()); } } public void setHighSpeedColor(View view) { EditText highSpeedColor = (EditText) findViewById(R.id.highSpeedColor); try{ speedView.setHighSpeedColor(Color.parseColor(highSpeedColor.getText().toString())); } catch (Exception e) { highSpeedColor.setError(e.getMessage()); } } }