@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_second); // Init Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); getSupportActionBar().setDisplayHomeAsUpEnabled(true); mButton = (FloatingActionButton) findViewById(R.id.startFab); mSeekbar = (SeekBar) findViewById(R.id.mySeekBar); myMap = (ImageMap) findViewById(R.id.mMap); myMap.setOnTouchListener(this); fromSpin = (Spinner) findViewById(R.id.spinnerFrom); toSpin = (Spinner) findViewById(R.id.spinnerTo); // Step Sensor sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE); stepSensor = sensorManager.getDefaultSensor(Sensor.TYPE_STEP_COUNTER); sensorManager.registerListener(this, stepSensor, SensorManager.SENSOR_DELAY_FASTEST); readGraph(); mButton.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { if (!started) { RobotControl.getInstance().setHeading(); mSeekbar.setEnabled(false); /** GRAPH CALCULATION Begin * */ RobotControl rc = RobotControl.getInstance(); mGraph.setNewOrigin(rc.getX(), rc.getY()); final String from = fromSpin.getSelectedItem().toString(); final String to = toSpin.getSelectedItem().toString(); mNodes = mGraph.getShortestPath(from, to); Log.d("SUPER LOG", mNodes.toString()); rc.driveAlong( mNodes, new Runnable() { @Override public void run() { Toast.makeText(getApplicationContext(), "Success!", Toast.LENGTH_SHORT) .show(); fromSpin.setPrompt(to); mSeekbar.setEnabled(true); } }); // GRAPH PART END started = true; } } }); mSeekbar.setOnSeekBarChangeListener( new SeekBar.OnSeekBarChangeListener() { @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { RobotControl.getInstance().rotateTo((float) progress); } @Override public void onStartTrackingTouch(SeekBar seekBar) {} @Override public void onStopTrackingTouch(SeekBar seekBar) {} }); }