画面の特定領域においてのみマルチタッチできるようにしたい
■解決したいこと
JAVAでAndroidスマホアプリを作っております。
画面の特定領域(最下段に示したyellowArea)においてのみ、
マルチタッチできる、コードの記述方法をご教示ください。
■自分で試したこと
下記ソースコードにて、マルチタッチ(T1→T2・・・)してみました。
その結果、T1は、yellowAreaのみ受け付けてくれますが、
それ以降のタッチ(T2・・・)は、yellowArea以外の領域でも
受け付けられてしまいます。T2以降も、yellowAreaのみ受け付けて
くれるように、検討を進めておりますが、
なかなか解決に至らず。質問させて頂いた次第です。方向性だけでも
ご教示頂ければ幸いです。
MainActivity
//MainActivityの基本コードは省略します。
yellowArea.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
//マルチタッチのループ
int count = event.getPointerCount();
for (int j=0; j<count; j++) {
int eventAction = event.getActionMasked();
int pid = event.getPointerId(j);
int id = event.findPointerIndex(pid);
switch (eventAction) {
//最初のタッチ(T1)
case MotionEvent.ACTION_DOWN:
//処理内容は省略
break;
//追加タッチ(T2以降)
case MotionEvent.ACTION_POINTER_DOWN:
//処理内容は省略
break;
//その他のアクションは省略
}
//処理内容は省略
} //マルチタップのループ
return true;
} //boolean onTouch
}); //リスナー
■スマホ画面(横置きの例)
0