【问题标题】:How to pass button position inside listview to another activity?如何将列表视图中的按钮位置传递给另一个活动?
【发布时间】:2016-06-01 17:25:49
【问题描述】:

就像标题一样,如果我在列表视图中按下一个按钮,我希望将按钮的位置发送到另一个活动

我不知道你要检查什么代码。

我把按钮按下时的方法,这个方法在listadapter里面

   listHolderRiepilogo.btnNota.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent i = new Intent(v.getContext() ,Pop_Nota.class);
            i.putExtra("posizione", ---WHAT TO PUT HERE---);
            i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            context.startActivity(i);
        }
    });

【问题讨论】:

  • 是listview还是recyclerview?
  • 您可以在侦听器内部使用 button.setTag(position) 函数并在检索调用 Integer.parseInt(button.getTag()) 时使用
  • 我不知道在这种情况下如何使用 setTag(),我没有什么可以放入 ()
  • 首先在listview监听器内部编写setTag()函数,以便您可以在按钮单击监听器中检索值

标签: android listview android-intent android-button


【解决方案1】:
make position of getView method final and send it in intent

 @Override
    public View getView(final int position, View convertView, ViewGroup parent) 
{
      listHolderRiepilogo.btnNota.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent i = new Intent(v.getContext() ,Pop_Nota.class);
            i.putExtra("posizione", position);
            i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            context.startActivity(i);
        }
    });
}

【讨论】:

  • 我按照你说的做了,但是当我传递值时它似乎是 -> null
  • 在下一个活动中检查 putextra 字符串和 getextra 的拼写是否匹配?
  • 它的作品,在下一个活动中,我把 String 而不是 int。
猜你喜欢
  • 1970-01-01
  • 2015-03-21
  • 1970-01-01
  • 2012-01-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多