我有这个Recycler视图和它的工作良好,但现在我需要当用户点击进Recycler中的项目突出显示项目和意图到另一个活动,并且当回到Recycler显示选中的项目仍然突出显示,只有一个项目可以选择?任何想法 ?Recycler查看选择项目并保存选择
这是我的看法回收适配器
public class ScreenRecyclerAdapter extends RecyclerView.Adapter<ScreenRecyclerAdapter.ViewHolder> {
Context context;
int image_list[];
public ScreenRecyclerAdapter(int[] image_list, Context context){
super();
this.image_list = image_list;
this.context = context;}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.screen_items, parent, false);
ViewHolder viewHolder = new ViewHolder(v);
return viewHolder;}
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
Picasso.with(context).load(image_list[position]).into(holder.image_view_screen_item);
}
@Override
public int getItemCount() {
return image_list.length;
}
class ViewHolder extends RecyclerView.ViewHolder{
ImageView image_view_screen_item;
public ViewHolder(View itemView) {
super(itemView);
image_view_screen_item = (ImageView) itemView.findViewById(R.id.image_view_screen_item);
image_view_screen_item.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(context, ImagePager.class);
context.startActivity(i);
image_view_screen_item.setSelected(true);
}
});
}}}
,这是回收
public class ScreensActivity extends AppCompatActivity {
RecyclerView image_recyclerView;
RecyclerView.LayoutManager image_recyclerViewlayoutManager;
RecyclerView.Adapter image_recyclerViewadapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_screens);
int image_list [] = {R.mipmap.ic_launcher,R.mipmap.ic_launcher, R.mipmap.ic_launcher};
image_recyclerView = (RecyclerView) findViewById(R.id.image_recyclerView);
image_recyclerView.setHasFixedSize(true);
image_recyclerView.setSelected(true);
image_recyclerViewlayoutManager = new LinearLayoutManager(this);
image_recyclerView.setLayoutManager(image_recyclerViewlayoutManager);
image_recyclerViewadapter = new ScreenRecyclerAdapter(image_list, this);
image_recyclerView.setAdapter(image_recyclerViewadapter);}
@Override
public void onBackPressed() {
}}
其工作突出回收查看项目,但第3步我不能理解它! – meladandroid
当用户在'getView()'或'bindHindler()'内的'SharedPreferences'或静态变量...上点击一个'item'项目'id'时,检查该项目'id',如果itemId是等于最后选定的项目id,然后更改背景颜色,如
'if(viewHolder.itemId == myItemId){view.backgroundColor(Color.parseColor(“#eee”)); }' – samirk433