如何在另一项活动onClick上显示Cardview的图像和文字?

时间:2015-04-30 10:14:56

标签: android onclicklistener android-cardview android-viewholder android-recyclerview

我有一个来自exoguru的示例应用程序,其中包含cardview,每张卡片都包含一个图像和相应的文本。现在如何在点击该特定卡片时在另一个活动中显示该图像和文本?

以下是屏幕截图enter image description here

这是ViewHolder,其中包含cardview的onclick

 class ViewHolder extends RecyclerView.ViewHolder{

        public ImageView imgThumbnail;
        public TextView tvNature;
        public TextView tvDesNature;

        public ViewHolder(View itemView) {
            super(itemView);
            imgThumbnail = (ImageView)itemView.findViewById(R.id.img_thumbnail);
            tvNature = (TextView)itemView.findViewById(R.id.tv_nature);
            tvDesNature = (TextView)itemView.findViewById(R.id.tv_des_nature);
            itemView.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {

               v.getContext().startActivity(new Intent(v.getContext(),FullInfo.class));

                }
            });
        }
    }

这是应显示图像和文本的活动布局

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context="exoguru.lists.com.naturepics.FullInfo"
style="@style/Base.TextAppearance.AppCompat.Headline">

<ImageView
    android:id="@+id/iv_card"
    android:layout_width="match_parent"
    android:layout_height="140dp" />
<TextView
    android:id="@+id/tv_card_title"
    android:layout_below="@+id/iv_card"

    android:text="@string/hello_world" android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textStyle="bold"
    android:textSize="@dimen/abc_text_size_headline_material" />
<TextView
    android:id="@+id/tv_card"
    android:layout_below="@+id/tv_card_title"
    android:text="@string/hello_world" android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

这些是来自cardview的项目

imgThumbnail = (ImageView)itemView.findViewById(R.id.img_thumbnail);   //The image
tvNature = (TextView)itemView.findViewById(R.id.tv_nature);    //The Title
tvDesNature = (TextView)itemView.findViewById(R.id.tv_des_nature);    //The Text

1 个答案:

答案 0 :(得分:0)

你应该在意图上传递图像url / id / ..

Intent intent = new Intent(getBaseContext(), SignoutActivity.class);
intent.putExtra("imageinfo", imageUrl);
startActivity(intent)

目的地活动

Bundle bundle = getIntent().getExtras();
String url = bundle.getString(“imageinfo”);