Questions tagged «android-adapter»

10
作为ViewPager的一部分更新ListFragment中的数据
我在Android中使用v4兼容性ViewPager。我的FragmentActivity有很多数据,这些数据将以不同的方式显示在ViewPager的不同页面上。到目前为止,我只有3个相同ListFragment的实例,但是将来我将拥有3个不同ListFragments的实例。ViewPager在垂直手机屏幕上,列表不是并排的。 现在,ListFragment上的按钮将启动一个单独的全页活动(通过FragmentActivity),该活动将返回并FragmentActivity修改数据,保存数据,然后尝试更新其ViewPager中的所有视图。在这里,我被困住了。 public class ProgressMainActivity extends FragmentActivity { MyAdapter mAdapter; ViewPager mPager; @Override public void onCreate(Bundle savedInstanceState) { ... mAdapter = new MyAdapter(getSupportFragmentManager()); mPager = (ViewPager) findViewById(R.id.viewpager); mPager.setAdapter(mAdapter); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { ... updateFragments(); ... } public void updateFragments() { //Attempt 1: //mAdapter.notifyDataSetChanged(); …


13
如何在RecyclerView中更新/刷新特定项目
我正在尝试刷新中的特定项目RecyclerView。 故事:每当用户单击项目时,都会显示AlertDialog。用户可以通过单击确定按钮键入一些文本。我想在此项目中显示此文本并显示不可见ImageView-以XML和适配器声明ViewHolder- 我在AlertDialog正按钮中使用了此功能来更新项目: private void updateListItem(int position) { View view = layoutManager.findViewByPosition(position); ImageView medicineSelected = (ImageView) view.findViewById(R.id.medicine_selected); medicineSelected.setVisibility(View.VISIBLE); TextView orderQuantity = (TextView) view.findViewById(R.id.order_quantity); orderQuantity.setVisibility(View.VISIBLE); orderQuantity.setText(quantity + " packet added!"); medicinesArrayAdapter.notifyItemChanged(position); } 但是,此代码不仅更改了通过位置的itemView,而且还更改了其他一些itemView! 我应该如何通过单击正确更改特定的itemView?

2
有没有更好的方法来从适配器获取对父RecyclerView的引用?
我有一个用例,需要RecyclerView从适配器内部(特别是在onBindViewHolder方法内部)对父级进行引用。到目前为止,我正在做的就是将它分配给argonCreateViewHolder传递的方法中的私有类成员,viewGroup parent如下所示: private ViewGroup mParent; @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { // inflater logic. mParent = parent; } 并引用父RecyclerView在onBindViewHolder这样的: @Override public void onBindViewHolder(ViewHolder holder, int position) { // binder logic. ((RecyclerView)mParent).blahBlahBlah(); } 有更好的方法吗?也许RecyclerView.Adapter有一种我可能错过的方式?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.