我正在尝试将 recyclerview 的位置传递给我正在调用改造界面的另一个 Activity 。我可以传递 Recyclerview 项目的位置以便我可以从 api 加载不同的帖子
@Override
public void onBindViewHolder(TagAdapter.Tag_ViewHolder holder, final int position) {
holder.tagName.setText(Tags.get(position));
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (position < 8){
int pos = (int) getItemId(position) + 1;
Intent intent = new Intent (view.getContext(), Tag1Post.class);
intent.putExtra("pos", pos);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);
}
}
我的终点是
@GET("/tag/{id}/")
Call<Tag> test(@Path("id") int id);
我想用 RecyclerView 位置替换 id。
最佳答案
您可以创建一个接口(interface),然后将位置从适配器传输到 Activity 。
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (position < 8){
int pos = (int) getItemId(position) + 1;
Intent intent = new Intent (view.getContext(), Tag1Post.class);
intent.putExtra("pos", pos);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);
//create your interface in Activity, then send it to adapter and call it here:
yourListener.onTransferPosition(position);
}
}
关于实现接口(interface)的 Activity :
public void onTransferPosition(int position) {
this.position= position;
}
关于android - 如何将 RecyclerView 的位置传递给 Activity?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42688062/