【发布时间】:2018-05-11 22:05:58
【问题描述】:
我正在尝试将我的 ListView 重构为 RecyclerView,但我陷入了这种情况。
在我的 ListView 适配器中,我有这样的东西:
@Override
public int getItemViewType(int position) {
if (mDecommissionMode && position == getCount() - 1)
return 1;
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (getItemViewType(position) == 0)
return getNormalView(position, convertView, parent);
else
return getManualDecommissionView(convertView, parent);
}
我不知道如何将它应用到我的 RecyclerView 适配器,因为我无权访问 onCreateViewHolder 方法中的位置,在该位置应该膨胀布局。
这是我的 RecyclerView 适配器中的方法:
@Override
public DevicesItemViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
DevicesRecyclerViewAdapter.DevicesItemViewHolder holder = new DevicesItemViewHolder(); //should pass some inflated view to ViewHolder instance
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
mOnClickListener.onClick(view);
}
});
return holder;
}
@Override
public void onBindViewHolder(DevicesItemViewHolder holder, int position) {
}
有什么办法可以应付吗?
【问题讨论】:
-
你想控制 onBindViewHolder() 对吗?
标签: android listview baseadapter android-recyclerview