【发布时间】:2016-10-15 19:29:10
【问题描述】:
我有这个 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() {
}}
【问题讨论】:
标签: android android-recyclerview