как добавить динамический textview и ontouchlistners для Android - PullRequest
1 голос
/ 08 февраля 2012

Я создал 5 текстовых представлений, теперь я хочу знать, какое текстовое представление было затронуто. Я сделал Touchlistner, но он ссылается только на последний ... PLZ, направьте меня.

    final LinearLayout ll = (LinearLayout)findViewById(R.id.linearLayout1);     


           for(int i=0; i< 5;i++){
             tv = new TextView(this);
             tv.setTextSize(90);
             tv.setId(i);
             tv.setText("Text");
             tvlist.add(tv);
             ll.addView(tv, i);
    } 




     tv.setOnTouchListener(new OnTouchListener() {
        public boolean onTouch(View v, MotionEvent event) {
            Log.i("TAG", "touchdown" + Integer.toString(v.getId()));
            Log.i("TAG", "touchdown 2" + tvlist.get(v.getId()));

            return false;
        }
    });

Ответы [ 2 ]

1 голос
/ 08 февраля 2012

Используйте вот так и для лучшей обработки textview вы должны перейти к массиву TextView

 for(int i=0; i< 5;i++){
         tv = new TextView(this);
         tv.setTextSize(90);
         tv.setId(i);
         tv.setText("Text");
         tvlist.add(tv);
         ll.addView(tv, i);


  tv.setOnTouchListener(new OnTouchListener() {
    public boolean onTouch(View v, MotionEvent event) {
        Log.i("TAG", "touchdown" + Integer.toString(v.getId()));
        Log.i("TAG", "touchdown 2" + tvlist.get(v.getId()));

        return false;
    }
});
} 
0 голосов
/ 08 февраля 2012

Вы также можете использовать следующее:

TextView tv=new Textview[5];
int txtid =0;
for(int i=0; i< 5;i++){
     tv = new TextView(this);
     tv[i].setTextSize(90);
     tv[i].setId(i);
     tv[i].setText("Text");
     tv[i].setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
            txtid = tv[i].getId();
            return false;
     }
});
}


     ll.addView(tv);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...