2つのTextViewのタッチが両方とも見えなくなるようなアイデアを思いつきました。このアイデアは、TextViewで1本の指に触れると1つのTextViewだけが見えなくなります。しかし、私は2本の指でそれをテストすると、1つのTextviewだけが見えなくなります。両方のテキストビューが見えなくなるわけではありません。2つのテキストビューをアンドロイドのタッチで見えないようにする方法
私は次のコードを書いています。
public class MatchMeaning1 extends Activity implements OnTouchListener{
private static final String TAG = MatchMeaning1.class.getSimpleName();
TextView[] txtWord, txtMeaning;
int [] wordID = {R.id.txtWord1, R.id.txtWord2, R.id.txtWord3, R.id.txtWord4, R.id.txtWord5};
int[] meaningID = {R.id.txtMeaning1,R.id.txtMeaning2, R.id.txtMeaning3, R.id.txtMeaning4, R.id.txtMeaning5 };
String[] word = {"1.abidcation","2.abhor","3.abide","4.abyssmal","5.award"};
String[] meaning = {"a.deep","b.stay","c.cede","d.accolade","5.hate"};
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.match_meaning);
txtWord = new TextView[5];
txtMeaning = new TextView[5];
for(int i = 0; i < txtWord.length; i++){
txtWord[i] = (TextView)findViewById(wordID[i]);
txtMeaning[i] = (TextView)findViewById(meaningID[i]);
txtWord[i].setText(word[i]);
txtMeaning[i].setText(meaning[i]);
txtWord[i].setOnTouchListener(this);
txtMeaning[i].setOnTouchListener(this);
}
}
@Override
public boolean onTouch(View v, MotionEvent event) {
int pointerCount = event.getPointerCount();
if(pointerCount == 2){
TextView [] tv = new TextView[2];
for(int i = 0; i < tv.length ;i++){
tv[i] = (TextView)v;
tv[i].setVisibility(TextView.INVISIBLE);
}
}
return true;
}
}
上記のコードはpointerCount = 2のために動作しませんが、それはpointerCountのために働く= 1 は、誰も私にこれに対する解決策を教えてください。
上記のコードは、pointerCount = 1と同じくらい良いシングルタッチでしか動作しません。上記のコードは、テキストビュー上で一度に1本の指をポイントして消えるようにします。私は一度に両方のテキストビューを消したい。 –