回到Android程式碼的部份,主要是建立SQLite資料庫的實體檔案及執行建立資料表的SQL,最後查詢資料,如果有資料,再跟ListView連結起來。完整的程式碼,如下:
public class frm_cust_list extends AppCompatActivity {
//宣告物件
private SQLiteDatabase db = null;
ListView lsv_cust;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_frm_cust_list);
lsv_cust = (ListView)findViewById(R.id.lsvcust);
//建立SQLite 資料庫的實體檔案
db = openOrCreateDatabase("cust.db", Context.MODE_PRIVATE,null);
//建立資料表的SQL語法
String strcreatedb = "CREATE TABLE IF NOT EXISTS " +
"tcustomer (_id INTEGER PRIMARY KEY, cname TEXT, ctel TEXT) ";
//查詢資料
Cursor cursor = db.rawQuery("SELECT * FROM tcustomer",null);
//如果查詢有資料的話,就跟ListView做連結
if (cursor != null && cursor.getCount() >=0)
{
SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,
android.R.layout.simple_list_item_2,
cursor,
new String[] {"_id","cname"},
new int[] {android.R.id.text1,android.R.id.text2},
0);
lsv_cust.setAdapter(adapter);
}
}
public void prc_btnadd(View v)
{
//按下新增時,要呼叫新增的Activity,利用Intent物件。
Intent it = new Intent();
it= new Intent(this,frm_cust_add.class);
startActivity(it);
//關閉本身的Activity。
this.finish();
}
}
執行出來的輸入畫面,如下圖所示:(因為之前的範例,就已經新增了資料,所以,執行出來,就有資料可以列出。
接下來,我們先來看看要如何新增會員資料。在原來的專案,再增加一個Empty Activity,Activity名稱,取名為「frm_cust_add」。再拉出二個TextView、二個EditVIew、及二個Button,來當做會員名稱、會員電話的輸入欄位。按下存檔的Button,將資料存入資料庫,再回到列表的Activity。順序來排列出來。如下圖所示:
程式碼及後續執行的部份,明天繼續說明。