0

我在SQLite數據庫中緩存了我的應用程序中獲取的所有數據...每當用戶沒有互聯網連接時,數據就會從數據庫中加載一個SimpleCursorAdapter。 數據庫還包含圖像的URL。這些圖像通過我正在使用的圖像加載框架(Universal-Image-Loader)進行緩存,因此當我使用數據庫中的URL運行框架時,它會獲取緩存的圖像。 我的問題是我如何在我的SimpleCursorAdapter中調用這個方法? 到目前爲止,我只能從數據庫中獲取所有文本並將它們附加到TextView上...通過URL使用數據庫中的圖像

感謝您的幫助!

回答

0

所以,我終於能夠完成這個工作我自己......

我不得不寫延伸的CursorAdapter我不得不指派我所有的文本,我從有了新的方法......

有我數據庫與TextView。所以,我也可以給我的圖像裝載機的鏈接(緩存)圖像加載...

這是我的代碼:

private static final class MyCursorAdapter extends CursorAdapter { 

    MyCursorAdapter(Context context, Cursor cursor, int flags) { 
     super(context, cursor, flags); 

     mInflater = LayoutInflater.from(context); 
    } 

    @Override 
    public View newView(Context context, Cursor cursor, ViewGroup parent) { 
     View v = mInflater.inflate(R.layout.row_twitter, parent, false); 
     return v; 
    } 

    @Override 
    public void bindView(View view, Context context, Cursor cursor) { 
     TextView listtitle = (TextView) view.findViewById(R.id.listtitle); 
     TextView listusername = (TextView) view.findViewById(R.id.listusername); 
     TextView listdate = (TextView) view.findViewById(R.id.listdate); 

     listtitle.setText(cursor.getString(cursor.getColumnIndex(DataDBAdapter.KEY_TWITTER_TWEET))); 
     listusername.setText(cursor.getString(cursor.getColumnIndex(DataDBAdapter.KEY_TWITTER_USERNAME))); 
     listdate.setText(cursor.getString(cursor.getColumnIndex(DataDBAdapter.KEY_TWITTER_DATE))); 

     listtitle.setTextColor(Color.GRAY); 
     listdate.setTextColor(Color.GRAY); 

     ImageView iv = (ImageView) view.findViewById(R.id.image); 
     imageLoader.displayImage(cursor.getString(cursor.getColumnIndex(DataDBAdapter.KEY_TWITTER_IMAGEURL)), 
       iv, options); 
    } 

    LayoutInflater mInflater; 
} 

這實際上工作得很好:)

相關問題