將string.xml裡的陣列資料寫入資料庫 , 再從資料庫裡依字母排序出來 , 並放在Spinner裡 , 下面是程式碼。
package COM.TQC.GDD02; import android.app.Activity; import android.content.res.Resources; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.os.Bundle; import android.widget.ArrayAdapter; import android.widget.Spinner; public class GDD02 extends Activity { private static final String DBNAME = "MY_DB"; private static final String TABLENAME = "MY_TABLE"; private static final String FIELD01_NAME = "_id"; private static final String FIELD02_NAME = "_text1"; private SQLiteDatabase dataBase; private Spinner Spinner01; private String[] strNames , orderNames; private Cursor cursor; //資料筆數 private int recordCount; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Spinner01 = (Spinner) findViewById(R.id.Spinner01); Resources resources = getResources(); strNames = resources.getStringArray(R.array.strNames); String CREATE_SQL = "create table if not exists "+TABLENAME+" ("+FIELD01_NAME+" INTEGER PRIMARY KEY, "+FIELD02_NAME+" TEXT)"; dataBase = openOrCreateDatabase(DBNAME, MODE_PRIVATE, null); dataBase.execSQL(CREATE_SQL); for(int i=0; i0) { cursor.moveToFirst(); orderNames = new String[strNames.length]; for(int i=0; i < strNames.length ; i++) { orderNames[i] = cursor.getString(1); cursor.moveToNext(); } } ArrayAdapter adapter = new ArrayAdapter (this, android.R.layout.simple_spinner_item, orderNames); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); Spinner01.setAdapter(adapter); Spinner01.setSelection(0); dataBase.execSQL("DROP TABLE "+TABLENAME); dataBase.close(); } }
main.xml
資料來源 , values/strings.xml
姓名清單 - Ella
- Body
- David
- Andy
- Cindy
- GiGi
- Fancy
P.S. 題目中所要求的Variable和Method皆會保留 , 也會根據題目所要求的流程去實作 , 縱使題目要求繞遠路....
沒有留言:
張貼留言