最近我使用RecyclerView并添加自定义标题视图(另一种类型的项目视图)并尝试在数据更改时更新它.奇怪的事发生了.适配器创建一个新的HeaderViewHolder,并使用新的HeaderViewHolder和旧的HeaderViewHolder.
这是样本.
MainActivity.java
public class MainActivity extends ActionBarActivity {
private RecyclerView mRecyclerView;
private MyAdapter mAdapter;
@Override protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mRecyclerView = (RecyclerView) findViewById(R.id.list);
LinearLayoutManager llm = new LinearLayoutManager(this);
llm.setSmoothScrollbarEnabled(true);
mRecyclerView.setLayoutManager(llm);
mRecyclerView.setAdapter(mAdapter = new MyAdapter(this, genItemList()));
}
@Override public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
@Override public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The …Run Code Online (Sandbox Code Playgroud)