wlhejj 2011-03-24 16:35
浏览 376
已采纳

不同的activity之间数据同步显示问题

在MainActivity的代码:查询数据库里面的数据,以list的形式展现,我点击Menu之后向跳转到
另外的一个activity数据库中增加一条数据,我想实现的效果就是:
点击模拟器的返回键之后,这条数据也相应的会显示在MainActivity的界面上(我没有看到这样的效果)。

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// setContentView(R.layout.main);

    DatabaseOperate oper=new DatabaseOperate(this);
    oper.open();
    Cursor cursor=oper.queryALl(true);
    listView= getListView();
    SimpleCursorAdapter adapter=
     new SimpleCursorAdapter(this, android.R.layout.simple_list_item_2,
       cursor, new String[]{DataBaseConstants.KEY_ID,DataBaseConstants.KEY_CONTENT}, 
       new int[]{android.R.id.text1,android.R.id.text2});
    listView.setAdapter(adapter);
}

后来我想出来了一个办法就是:在onResume里面重写上面的一段话,相当于重新查询了一次数据库,,,
我总感觉很别扭,请问一下有没有其他的办法实现我想要的这种效果。
// protected void onResume() {
// // TODO Auto-generated method stub
// super.onResume();
// DatabaseOperate oper=new DatabaseOperate(this);
// oper.open();
// Cursor cursor=oper.queryALl(true);
// SimpleCursorAdapter adapter=
// new SimpleCursorAdapter(this, android.R.layout.simple_list_item_2,
// cursor, new String[]{DataBaseConstants.KEY_ID,DataBaseConstants.KEY_CONTENT},
// new int[]{android.R.id.text1,android.R.id.text2});
// listView.setAdapter(adapter);
// }

[code="java"][/code]

  • 写回答

2条回答 默认 最新

  • springof 2011-03-24 17:14
    关注

    其实我最开始也是用的你的这种方法,你这样会有一个同步问题,
    在数据更新之前内容都不会显示出来
    不过其实还有一种更好的方法。
    Adapter.notifyDataSetChanged();
    这个的具体用法你可以参考 :
    http://www.pocketdigi.com/20100827/75.html

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 如何在3D高斯飞溅的渲染的场景中获得一个可控的旋转物体
  • ¥88 实在没有想法,需要个思路
  • ¥15 MATLAB报错输入参数太多
  • ¥15 python中合并修改日期相同的CSV文件并按照修改日期的名字命名文件
  • ¥15 有赏,i卡绘世画不出
  • ¥15 如何用stata画出文献中常见的安慰剂检验图
  • ¥15 c语言链表结构体数据插入
  • ¥40 使用MATLAB解答线性代数问题
  • ¥15 COCOS的问题COCOS的问题
  • ¥15 FPGA-SRIO初始化失败