其他分享
首页 > 其他分享> > android – 如何将RecyclerView的位置传递给Activity?

android – 如何将RecyclerView的位置传递给Activity?

作者:互联网

我正在尝试将recyclerview的位置传递给另一个我正在呼吁改造界面的活动.我可以通过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.

解决方法:

您可以创建一个接口,然后将位置从适配器传输到活动.

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);
            }
        }

在您的实现接口的活动上:

 public void onTransferPosition(int position) {
    this.position= position;
  }

标签:android,android-intent,retrofit2,android-recyclerview,cardview
来源: https://codeday.me/bug/20190622/1265797.html