2012-07-25 16 views
34

मैंने SQLiteOpenHelper कक्षा विस्तार करके एक डेटाबेस बनाया है। और यह भी बनाया गया। यह कोड है जिसे मैंएंड्रॉइड में SQLiteDatabase.CursorFactory का उपयोग क्या है?

public Imagehelper(Context context) { 
    super(context, DATABASE_NAME, null, SCHEMA_VERSION); 

    cntxt = context; 
    filename = Environment.getExternalStorageDirectory(); 

    DATABASE_FILE_PATH_EXTERNAL = filename.getAbsolutePath()+File.separator+DATABASE_NAME; 
    Log.i("Log", ":"+DATABASE_FILE_PATH_EXTERNAL); 
} 

यहां सब कुछ ठीक काम कर रहा है। लेकिन यदि आप सुपर सुपर (संदर्भ, DATABASE_NAME, शून्य, SCHEMA_VERSION) में पैरामीटर पर ध्यान केंद्रित करते हैं;। मैं शून्य पैरामीटर को समझने में सक्षम नहीं हूँ। मुझे पता है कि हमें SQLiteDatabase.CursorFactory ऑब्जेक्ट पास करना होगा।

लेकिन कैसे ?? और इसका क्या उपयोग है ??

उत्तर

47

शून्य पास करने का कारण यह है कि आप मानक SQLiteCursor व्यवहार चाहते हैं। यदि आप specialized Cursor को कार्यान्वित करना चाहते हैं तो आप Cursor class को विस्तारित करके प्राप्त कर सकते हैं (यह क्वेरी परिणामों पर अतिरिक्त संचालन करने के लिए है)। और इन मामलों में, आप अपने कर्सर कार्यान्वयन का उदाहरण लौटने के लिए CursorFactory कक्षा का उपयोग कर सकते हैं। यहाँ कि

SQLiteDatabase.CursorFactory DOC

कर्सर की उप-वर्गों लौटने जब क्वेरी बुला अनुमति देने के लिए प्रयोग किया जाता है के लिए दस्तावेज है।

+11

क्या आपके पास ऐसा उदाहरण है जब आप ऐसा करना चाहते हैं? – Roel

संबंधित मुद्दे