0

在我的应用程序中,我使用数组动态添加了文本视图,并为每个变量赋予了一个计数变量,该变量根据添加的文本视图增加计数。在每个文本视图的 onClickListener 中,我想执行一些操作,但是当我试图在所有文本视图上执行此操作。下面是代码,我没有弄错。请帮助我。

// here i have added textview dynamically
       mtxtview[colTextCount]=new TextView(this);
       mtxtview[colTextCount].setId(colTextCount);
       mtxtview[colTextCount].setLayoutParams(new LayoutParams(20,20));

而在 onclickListener-

@Override
public void onClick(View v) {
    System.out.println("onclick...");

    for(jj=0;jj<_mTextViewId;jj++){
        String hh=mtxtview[jj].getText().toString();
        System.out.println("................................."+hh);     
        System.out.println("id is...."+_mTextHeight[jj].getId());
    //if i added 3 textview.its giving me all 3 textview's text(getText())  

    }

           }
4

2 回答 2

1

在开始 for 循环之前使用switch-caseandView.getId()检查哪个 TextView 被点击。试试看:

@Override
public void onClick(View v) {
    System.out.println("onclick...");
    switch(v.getId())
     {
       case _mTextViewId:  
         for(jj=0;jj<_mTextViewId;jj++){
          String hh=mtxtview[jj].getText().toString();
          System.out.println("................................."+hh);     
          System.out.println("id is...."+_mTextHeight[jj].getId());

         }
       break ;

      // same for others....       

    }

 }
于 2013-03-05T11:13:17.300 回答
0

请参阅TextView onClick() 不起作用

您应该为每个 TextView 对象执行 setOnClickListener 。

于 2018-05-30T03:23:59.543 回答