SimpleCursorAdapter修改数据前端显示

    众所周知,用SimpCursorAdapter可以很方便的把数据库中的数据绑定到前台显示,但是有时候数据库中取出的数据,并不是我们要直接显示的数据,而是想稍作修改再表示出来,比如时间在数据库中一般是以毫秒(milisecond)显示,但此时你需要的数据可能是采用时分秒的形式表示的,那么此时怎么办呢。

    也许你会采用自定义一个继承自cursorAdapter 的适配器,然后重写。不错,这是个不错的方法,很原始,也很实用。但这里还有另一种比较简单的方法。

 private SimpleCursorAdapter.ViewBinder viewBinder=new SimpleCursorAdapter.ViewBinder() {     创建一个viewBinder
  
  @Override
  public boolean setViewValue(View view, Cursor cursor, int columnIndex) {
   // TODO Auto-generated method stub
   if(cursor.getColumnIndex("duration")==columnIndex){    //duration为数据库中对应的属性列
    TextView tv=(TextView)view;
    tv.setText(""+(cursor.getInt(columnIndex)/1000);  //将数据库中的数据除以1000以后在显示
    return true;
   }
   return false;
  }
 };
simpleCursorAdapter.setViewBinder(viewBinder);


 

 

你可能感兴趣的:(SimpleCursorAdapter修改数据前端显示)