私はウェアラブル デバイスを使用しており、そのためのアプリを作成しています。スタートボタンをクリックすると開始するタイマーとその他のものがいくつかあります。問題は、スタートボタンがスペースを占有し、物事が混雑しているように見えることです. Wearable Action Drawer を使用しましたが、見栄えがよくないので、タイマーなどのオブジェクトを配置するビューで onTouchlistner を使用することにしました。
レイアウトは FrameLayout です。onTouchListner を使用すると、検出した MotionEvent が ACTION_DOWN になります。開始したいものを開始するために、これを 2 回カウントし、4 回になったら AlertDialog を呼び出すにはどうすればよいですか?
frameLayout = (FrameLayout)findViewById(R.id.myscreen);
frameLayout.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
int x = (int) event.getX();
int y = (int) event.getY();
clicked = clicked + 1;
if(event.getAction() == MotionEvent.ACTION_DOWN)
{
startTimer();
//Check flow rate
if(num == 450)
{
try {
flow.setText(String.valueOf(num));
progressBar.setIndeterminateDrawable(Circle);
progressBar.setVisibility(View.VISIBLE);
} catch (NullPointerException e) {
e.printStackTrace();
}
}
else if(num == 150)
{
try {
flow.setText(String.valueOf(num));
progressBar.setIndeterminateDrawable(Circle);
progressBar.setVisibility(View.VISIBLE);
} catch (NullPointerException e) {
e.printStackTrace();
}
}
}
else if(event.getAction() == MotionEvent.ACTION_DOWN && clicked == 4)
{
Handler mHandler = new Handler(Looper.getMainLooper());
mHandler.post(new Runnable() {
@Override
public void run() {
// Your UI updates here
AlertMessage();
}
});
}
return true;
}
});
clickedはゼロで初期化された整数で、ボタンを使用してクリック数をカウントするときに使用しました。画面へのタップ数をカウントしたいので、2回タップした場合----> 4回タップした場合に開始------> AlertDialogを呼び出します