【问题标题】:TextView onclickListener文本视图 onclickListener
【发布时间】:2018-05-30 11:23:59
【问题描述】:

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

// 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())  

    }

           }

【问题讨论】:

  • 那么问题/问题是什么?
  • 如果我点击第一个 textview.its 提供所有 textviews 的信息。我只想要第一个 textview 信息
  • TextView onClick() not working你应该为每个TextView设置OnClickListener

标签: android textview onclicklistener


【解决方案1】:

使用 switch-caseView.getId() 在开始 for loop 之前检查单击了哪个 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....       

    }

 }

【讨论】:

    【解决方案2】:

    TextView onClick() not working

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

    【讨论】:

      猜你喜欢
      • 2016-10-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多