我正在制作一个具有回收站视图的应用程序,用于显示酒店和餐馆。 哪个在容器上使用onClickListener。
@NonNull
@Override
public myViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
LayoutInflater inflater = LayoutInflater.from(mContext);
View v = inflater.inflate(R.layout.card_item,viewGroup,false);
final myViewHolder viewHolder = new myViewHolder(v);
viewHolder.view_container.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(mContext,hotel_main.class);
intent.putExtra("hotel_name_title",mData.get(viewHolder.getAdapterPosition()).getHotelName());
intent.putExtra("hotel_des_location",mData.get(viewHolder.getAdapterPosition()).getDeslocation());
intent.putExtra("hotel_background_img",mData.get(i).getBackground());
mContext.startActivity(intent);
}
});
return viewHolder;
}
这家酒店的背景是图像资源,我想将其显示在打算去的第二页上。但是它不会显示任何图像。这是hotel_main活动中的代码。
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.hotel_main);
//Receive data
String title = getIntent().getExtras().getString("hotel_name_title");
String location = getIntent().getExtras().getString("hotel_des_location");
String background = getIntent().getExtras().getString("hotel_background_img");
//init views
CollapsingToolbarLayout collapsingToolbarLayout = findViewById(R.id.collapsingtoolbar_id);
collapsingToolbarLayout.setTitleEnabled(true);
TextView tv_title = findViewById(R.id.hotelmain_title_page);
TextView tv_location = findViewById(R.id.hotelmain_card_nb_des);
ImageView iv_background = findViewById(R.id.hotelmain_card_background);
//setting values to each view
tv_title.setText(title);
tv_location.setText(location);
Glide.with(this).load(background).into(iv_background);
}
}
此处图像显示为空白任何人都可以帮忙吗?
答案 0 :(得分:1)
检查background是否为null,background为null则不加载图像,因此请检查background变量值。
答案 1 :(得分:0)
通过更改以下代码来解决我自己的答案
String background = getIntent().getExtras().getString("hotel_background_img");
到
int background = getIntent().getExtras().getInt("hotel_background_img");
由于它在日志中返回null,谢谢大家