问题
I have a sample app from exoguru which contains cardview each card consists of an image and corresponding text .Now how to display that image and text in another activity on clicking that particular card?
Here is the screenshot
Here is the ViewHolder which contains the onclick for the cardview
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));
}
});
}
}
This is the layout of the activity in which the image and text should be displayed
<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" />
These are the items from 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:
You should pass the image url/id/.. on the Intent.
Intent intent = new Intent(getBaseContext(), SignoutActivity.class);
intent.putExtra("imageinfo", imageUrl);
startActivity(intent)
And on the destination activity
Bundle bundle = getIntent().getExtras();
String url = bundle.getString(“imageinfo”);
来源:https://stackoverflow.com/questions/29965030/how-to-display-image-and-text-from-cardview-in-another-activity-onclick