浅谈Android数据库CRUD操作的封装与实现(一)
2011-01-16 08:56:00 来源:WEB开发网核心提示:这样就可以在你需要查寻数据的地方创建一个"SimpleMessageDao"对象来实现数据库的操作了,比如要查询所有消息,浅谈Android数据库CRUD操作的封装与实现(一)(2),并以ListView显示出来就很简单了(呵呵,再也不用被那个变态的"SimpleCursorAdapter
这样就可以在你需要查寻数据的地方创建一个"SimpleMessageDao"对象来实现数据库的操作了。
比如要查询所有消息,并以ListView显示出来就很简单了(呵呵,再也不用被那个变态的"SimpleCursorAdapter"搞崩溃了吧!):
/** * 初始化消息列表 */ public void initMessageListView(){ ListView list = (ListView) Main.this.findViewById(R.id.message_list); //列表数据 List<HashMap<String, String>> messageListData = new ArrayList<HashMap<String, String>>(); //查询数据 SimpleMessageDao smDao = new SimpleMessageDao(Main.this); List<SimpleMessage> messages = smDao.getScroolData(1, 20); //添加数据 HashMap<String, String> message; for(SimpleMessage sm : messages){ message = new HashMap<String, String>(); message.put("id", String.valueOf(sm.getId())); message.put("content", sm.getContent()); message.put("time", sm.getTime()); messageListData.add(message); } //组装适配器 SimpleAdapter adapter = new SimpleAdapter( Main.this, messageListData, R.layout.message_list_item,//列表条目的布局样式 new String[]{"id", "content", "time"},//对应HashMap的Key new int[]{R.id.message_id, R.id.message_content, R.id.message_time});//对应TextView的id list.setAdapter(adapter); //设置条目监听器 list.setOnItemClickListener(new OnItemClickListener(){ @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { ListView listView = (ListView) parent; @SuppressWarnings("unchecked") HashMap<String, String> data = (HashMap<String, String>) listView.getItemAtPosition(position); Toast.makeText(Main.this, "ID: " + data.get("id") + " \nContent: " + data.get("content") + "\nTime: " + data.get("time"), Toast.LENGTH_SHORT).show(); } }); }
到目前为止,这个工具类还很简单。如果加上BeanUtils实现方向解析实体,整个代码会更加简洁。
本文分两次编写:
更多精彩
赞助商链接