В этом упражнении я использую вибрацию, поэтому пользователь должен выбрать шар, который движется в ритме вибрации, но когда я хочу вернуться к экрану назад, то есть к MainActivity
, Приложение продолжает вибрацию, не останавливая ее. Это мой код, я уже все перепробовал и не могу это исправить.
Я пытался закрыть его от MainActivity
, создав объект типа Вибрация и ничего, только вибрация продолжается. Фактически, если я не закрою приложение полностью, оно может продолжить просмотр на моем устройстве, и вибрация на устройстве будет следовать. Я sh они могли бы помочь мне решить такой конфликт. onDestroy()
это просто тестирование, которое я проводил, но оно не работает, я хотел бы получить еще одно предложение для решения этой проблемы.
public class RitmoUno1Activity extends AppCompatActivity {
Button buttonBolaRoja;
Button buttonBolaAmarilla;
Button buttonBolaAzul;
Button buttonSalir;
//Vibrator
Vibrator vibrator;
//Bola modelo uno
ImageView imageBolaModeloUno;
AnimationDrawable bolaModeloUnoRitmo;
//Bola modelo dos
ImageView imageBolaModeloDos;
AnimationDrawable bolaModeloDosRitmo;
//Bola modelo tres
ImageView imageBolaModeloTres;
AnimationDrawable bolaModeloTresRitmo;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_ritmo_uno1);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
getSupportActionBar().setTitle("Vibraciones");
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
buttonBolaRoja= (Button) findViewById(R.id.btn_bola_roja);
buttonBolaAmarilla= (Button) findViewById(R.id.btn_bola_amarilla);
buttonBolaAzul= (Button) findViewById(R.id.btn_bola_azul);
buttonSalir = (Button) findViewById(R.id.btn_ritmo_salir);
//Animación de bola roja
imageBolaModeloUno = (ImageView) findViewById(R.id.img_bola_ritmo_uno);
imageBolaModeloUno.setImageResource(R.drawable.bola_ritmo_uno);
bolaModeloUnoRitmo = (AnimationDrawable) imageBolaModeloUno.getDrawable();
bolaModeloUnoRitmo.start();
//Animación de bola amarilla
imageBolaModeloDos = (ImageView) findViewById(R.id.img_bola_ritmo_dos);
imageBolaModeloDos.setImageResource(R.drawable.bola_ritmo_dos);
bolaModeloDosRitmo = (AnimationDrawable) imageBolaModeloDos.getDrawable();
bolaModeloDosRitmo.start();
//Animación de bola azul
imageBolaModeloTres = (ImageView) findViewById(R.id.img_bola_ritmo_tres);
imageBolaModeloTres.setImageResource(R.drawable.bola_ritmo_tres);
bolaModeloTresRitmo = (AnimationDrawable) imageBolaModeloTres.getDrawable();
bolaModeloTresRitmo.start();
vibrator = (Vibrator) getSystemService(VIBRATOR_SERVICE);
//La unidad de medida de las vibraciones son los milisegundos
//1000 milisegundos equivalen a 1 segundo
//Duerme por 200 milisegundos y vibra por 500 milisegundos
final long [] pattern = {200, 500};
vibrator.vibrate(pattern, 0);
buttonBolaRoja.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
openSiguientePantalla();
}
});
buttonBolaAmarilla.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
buttonBolaAzul.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
}
public void openSiguientePantalla(){
Intent intent = new Intent(this, RitmoUno2Activity.class);
startActivity(intent);
}
//No funciona esto, sólo son pruebas que hice
public void onDestroy() {
super.onDestroy();
}
}