iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 28
0
自我挑戰組

在Android Studio 3.x版開發Android系統的開發記事系列 第 28

在Android Studio 3.x版開發Android系統的開發記事-如何使用SQLite(三)

回到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();
    }
}
執行出來的輸入畫面,如下圖所示:(因為之前的範例,就已經新增了資料,所以,執行出來,就有資料可以列出。

https://ithelp.ithome.com.tw/upload/images/20181103/20000953aofTC5xwAF.jpg

接下來,我們先來看看要如何新增會員資料。在原來的專案,再增加一個Empty Activity,Activity名稱,取名為「frm_cust_add」。再拉出二個TextView、二個EditVIew、及二個Button,來當做會員名稱、會員電話的輸入欄位。按下存檔的Button,將資料存入資料庫,再回到列表的Activity。順序來排列出來。如下圖所示:

https://ithelp.ithome.com.tw/upload/images/20181103/20000953sQ1ddfeKRS.jpg

https://ithelp.ithome.com.tw/upload/images/20181103/20000953TOtvCsBOQs.jpg

https://ithelp.ithome.com.tw/upload/images/20181103/20000953IldBuBqTxJ.jpg
程式碼及後續執行的部份,明天繼續說明。


上一篇
在Android Studio 3.x版開發Android系統的開發記事-如何使用SQLite(二)
下一篇
在Android Studio 3.x版開發Android系統的開發記事-如何使用SQLite(四)
系列文
在Android Studio 3.x版開發Android系統的開發記事30

尚未有邦友留言

立即登入留言