Я хочу запустить событие дважды в один клик кнопки «Назад» на Android. Как это будет возможно?Дважды в один клик дважды запускается событие «Сброс». Android
0
A
ответ
0
Запустить событие дважды в переопределены методом щелчка
Button mClickButton1 = (Button)findViewById(R.id.clickButton1);
mClickButton1.setOnClickListener(this);
@Override
public void onClick(View v) {
event();
event();
}
0
, если нажать на кнопку назад он будет вызывать метод ниже:
@Override
public void onBackPressed() {
super.onBackPressed();
}
и этот метод будет называть super.onBackPressed (); что это вызовет приложение для завершения и прекратит его.
, если вам нужно вызвать некоторые методы при нажатии кнопки назад дважды, вы должны реализовать счетчик для прессы, как метод ниже:
@Override
public void onBackPressed() {
long t = System.currentTimeMillis();
if (backPressedTime == '') {
backPressedTime = t;
counter = 1;
}
else if (t - backPressedTime > 2000) { // 2 secs
counter = 0;
backPressedTime = t;
Toast.makeText(MainActivity.this, R.string.retry_to_exit,
Toast.LENGTH_SHORT).show();
}
else
{
counter++;
if(counter > 2)
{
}
else
{
// this guy is serious
// clean up
super.onBackPressed(); // bye
finish();
}
}
}
и в конце концов, если вам нужно вызвать некоторые методы в backpress событий, может добавить свой метод
@Override
public void onBackPressed() {
yourEvent();
yourEvent();
super.onBackPressed();
}
, если вам нужно работать в другом потоке можно назвать
new Runnable() {
@Override
public void run() {
yourMethod()
}
};
, и если вам нужно позвонить методам с некоторой задержкой, вы можете использовать
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
tourMethod();
}
}, 2000);