gpt4 book ai didi

java - RecyclerView 通过 Intent extras 传递数据

转载 作者:行者123 更新时间:2023-12-01 21:28:56 25 4
gpt4 key购买 nike

因此,我尝试通过 Intent extras 将一些数据传递给第二个 Activity 。这段代码在 ListView 中运行良好,但现在当我切换到 RecyclerView 时,它不显示任何文本,文本区域为空白。

代码如下:(从 onBindViewHolder() 开始)

 holder.container.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
passData();
}
});

}

private void passData() {
Todo item = new Todo();
Intent i = new Intent(c, Details.class);
i.putExtra("nazivTodoa", item.getTitle());
i.putExtra("datumTodoa", item.getRecordDate());
i.putExtra("idTodoa", item.getItemId());
c.startActivity(i);
}

这就是我进入第二个 Activity 的方式:

  Bundle extras = getIntent().getExtras();
String naslov = extras.getString("nazivTodoa");
String datum = extras.getString("datumTodoa");

textViewNazivTodoaDetails.setText(naslov);
textViewDatumTodoaDetails.setText(datum);

我做错了什么?

最佳答案

您做错了什么,是您没有获取当前单击的对象。您可以通过从适配器中使用的数组列表获取对象来实现此目的。这样做:

Arraylist<Item> yourlist = new Arraylist();

@Override
public void onClick(View v) {
// position = pass the current position of the object you want
passData(int position);

}
});

}

private void passData(int position) {
Todo item = new Todo();
Intent i = new Intent(c, Details.class);
i.putExtra("nazivTodoa", yourlist.get(position).getTitle());
i.putExtra("datumTodoa", yourlist.get(position).item.getRecordDate());
i.putExtra("idTodoa", yourlist.get(position).item.getItemId());
c.startActivity(i);
}

关于java - RecyclerView 通过 Intent extras 传递数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37666243/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com