canvas教程

Android实现界面实时更新

字号+ 作者:H5之家 来源:H5之家 2017-09-17 18:19 我要评论( )

Android实现界面实时更新 利用的是Cursor+CursorAdapter实现界面实时更新的方法 部分代码如下: //一个观察者 private class MyContentObserver extends ContentObserver { public MyContentObserver() { super(new Handler()); } @Override public void onC

Android实现界面实时更新

  利用的是Cursor+CursorAdapter实现界面实时更新的方法

  部分代码如下:

  //一个观察者
  private class MyContentObserver extends ContentObserver {
    
  public MyContentObserver() {
  super(new Handler());
  }
 
  @Override
  public void onChange(boolean selfChange) {
  super.onChange(selfChange);
  Log.i("DLA", "MyContentObserver onChange!");
  //处理数据更新回调
  refreshData();
  }
 
  }
 
  private void refreshData() {
  if (mCursor.isClosed()) {
  return;
  }
  //更新
  mCursor.requery();
  }
 
  //一个实现CursorAdapter的适配器
  private MyAdapter mAdapter;
 
  private Cursor mCursor;
 
  private MyContentObserver mObserver;
 
  @Override
  protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.list);
  setupViews();
  mCursor = getContentResolver().query(MyProvider.CONTENT_URI, sAppReadableColumnsArray,null, null, null);
  mObserver = new MyContentObserver();
  //注册观察者
  mCursor.registerContentObserver(mObserver);
  mAdapter = new MyAdapter(this, R.layout.list_item, mCursor);
  setListAdapter(mAdapter);
  }
 
  @Override
  protected void onDestroy() {
  super.onDestroy();
  if (mCursor != null) {
  mCursor.unregisterContentObserver(mObserver);
  mCursor.close();
  }
  }

  这样实现后当MyProvider.CONTENT_URI对应的数据发生变化时都会调用观察者的onChange方法,mCursor.requery()执行后listview就直接更新了。

提示:支持键盘“← →”键翻页 阅读全文

Android开发实例 简单拨打电话
Android开发中是否连上网络检测方法
Android开发教程 录制多媒体实例
Android开发教程 传感器实例

相关推荐

评论

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • Android实现图片反转

    Android实现图片反转

    2017-07-28 15:04

  • 21天学习android开发教程之SurfaceView与多线程的混搭

    21天学习android开发教程之SurfaceView与多线程的混搭

    2017-04-27 12:00

  • 【Android开发教程】1、基础概念

    【Android开发教程】1、基础概念

    2016-08-03 11:02

  • 21天学习android开发教程之SurfaceView与多线程的混搭

    21天学习android开发教程之SurfaceView与多线程的混搭

    2016-02-15 12:00

网友点评