У меня возникла идея, что при прикосновении двух текстовых представлений оба становятся невидимыми. Эта идея работает, когда я касаюсь одного пальца на TextView, и только один TextView становится невидимым. Но когда я проверяю это двумя пальцами, только один Textview становится невидимым. Это не делает оба текстовых представления невидимыми.
Я написал следующий код.
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.
Может кто-нибудь сказать мне решение для этого?