84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
闭关修行中......
这只能说你对ListView的掌握还不够,ListView依赖于数据适配器Adapter的数据衔接,数据修改也存在于数据源或者数据适配器中,不是那你重新生成数据适配器。
ListView
Adapter
使用适配器 Adapter 的 notifyDataSetChanged() 方法去更新。。。举个栗子:
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); button_add = (Button) findViewById(R.id.button); // 1.绑定GridView gridView = (GridView) findViewById(R.id.gridView); // 2.创建List资源类对象: list = new ArrayList<Map<String, Object>>(); for (int i=0; i<images.length; i++) { Map<String,Object> map = new HashMap<String, Object>(); map.put("imageid",images[i]); map.put("words",words[i]); list.add(map); } // 3.创建一个 SimpleAdapter simpleAdapter = new SimpleAdapter( this, //上下文 list, //资源对象 R.layout.simple_adapter_cell, new String[] {"imageid","words"}, new int[] {R.id.imageView,R.id.textView} ); // 4.加载到GridView中 gridView.setAdapter(simpleAdapter); // 5.设置 GridView的点击事件: gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { Log.e("AdapterView",Integer.toString(parent.getId())); Log.e("View",Integer.toString(view.getId())); Log.e("position",Integer.toString(position)); Log.e("id", Long.toString(id)); } }); // 6.GridView 的动态更新 button_add.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // 6.1 给资源类添加新的 Map Map<String,Object> temp = new HashMap<String, Object>(); //新建Map temp.put("imageid",images[0]); //添加新的资源 temp.put("words","P"); list.add(temp); // 6.2 通知 GridView 更新 simpleAdapter.notifyDataSetChanged(); } }); }
直接在数据源List中add,然后通知Adapter去更新数据,adapter.notifyDataSetChanged();
将新数据添加到适配器的list中 然后adapter.notifiedxxx就行啦
recyclerView 配合staggergroidlayoutmanager自己继承adapter 用adapter.notifydatachanged()来通知更新
这只能说你对
ListView
的掌握还不够,ListView
依赖于数据适配器Adapter
的数据衔接,数据修改也存在于数据源或者数据适配器中,不是那你重新生成数据适配器。使用适配器 Adapter 的 notifyDataSetChanged() 方法去更新。。。
举个栗子:
直接在数据源List中add,然后通知Adapter去更新数据,adapter.notifyDataSetChanged();
将新数据添加到适配器的list中 然后adapter.notifiedxxx就行啦
recyclerView 配合staggergroidlayoutmanager
自己继承adapter
用adapter.notifydatachanged()来通知更新