У меня есть две кнопки, и у каждой кнопки есть каждая функция, но я также хотел бы добавить другую функцию, когда пользователь нажимает эти кнопки одновременно.Вот мой код:
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private Button button1, button2;
private TextView textView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button1 = findViewById(R.id.button1);
button2 = findViewById(R.id.button2);
textView = findViewById(R.id.textView);
button1.setOnClickListener(this);
button2.setOnClickListener(this);
}
private long mLastClickTime = 0;
@Override
public void onClick(View v) {
if (System.currentTimeMillis() - mLastClickTime < 1000) {
textView.setText("Double Action");
SPLogger.logMassage("Same", (System.currentTimeMillis() - mLastClickTime) + "");
return;
}
mLastClickTime = System.currentTimeMillis();
SPLogger.logMassage("notSame", System.currentTimeMillis() + "");
if (v.getId() == R.id.button1) {
textView.setText("Only First Action");
} else if (v.getId() == R.id.button2) {
textView.setText("Only Second Action");
}
}
}
Этот код почти работает, но у меня есть одна маленькая проблема.Когда я быстро нажимаю, например, на первую кнопку, она работает как действие в то же время.Может кто-нибудь сказать мне, что не так в моем коде?Также Каков лучший способ проверить тот же клик в Android?Спасибо