这个教程中将会在Android平台上建立一个简单的应用开发Notepad。开发中需要调用Sqlite数据库,以及通过xml文件定义界面等。

    在这个教程中将会建立一个简单列表界面,允许用户添加删除,但是不能编辑。包括如下的内容:

    ◆ListActivities的基础知识和如何建立菜单项。

    ◆如何使用SQLite 数据库访问数据。

    ◆如何使用ArrayAdapter绑定数据到ListView (最简单的一种方式)。

    ◆最基本的Layout,包括如何显示一个ListView,如何向一个菜单插入菜单项以及如何响应菜单

    第一步 建立工程

    使用Eclipse建立一个工程Notepad

    第二步 如何使用Sqlite数据库

    和系统相关的接口调用都要用到Context类。

    1打开数据库

    代码片段:

    public DBHelper(Context ctx) {
    try {
    //打开已经存在的数据库
    db = ctx.openDatabase(DATABASE_NAME, null);
    } catch (FileNotFoundException e) {
    try {
    //建立新的数据库
    db =
    ctx.createDatabase(DATABASE_NAME, DATABASE_VERSION, 0, null);
    //建立数据表
    db.execSQL(DATABASE_CREATE);
    } catch (FileNotFoundException e1) {
    db = null;
    }
    }
    }

    Context类的openDatabase可以打开一个已经存在的数据库,如果数据库不存在,将会抛出FileNotFoundException异常。可以通过Context类的createDatabase函数建立一个新的数据库。通过调用SQLiteDatabase 的execSQL方法,执行一条SQL语句建立一个新的数据表。

    2.获取表中的数据

    代码如下:

    public List﹤Row﹥ fetchAllRows() {
    ArrayList﹤Row﹥ ret = new ArrayList﹤Row﹥();
    try {
    Cursor c =
    db.query(DATABASE_TABLE, new String[] {
    "rowid", "title", "body"}, null, null, null, null, null);
    int numRows = c.count();
    c.first();
    for (int i = 0; i ﹤ numRows; ++i) {
    Row row = new Row();
    row.rowId = c.getLong(0);
    row.title = c.getString(1);
    row.body = c.getString(2);
    ret.add(row);
    c.next();
    }
    } catch (SQLException e) {
    Log.e("booga", e.toString());
    }
    return ret;
    }

    建立一个游标类Cursor 通过SQLiteDatabase 的query方法查询一个表格。有了Cursor就可以遍历所有的记录了。

    3添加新的记录

    public void createRow(String title, String body) {
    ContentValues initialValues = new ContentValues();
    initialValues.put("title", title);
    initialValues.put("body", body);
    db.insert(DATABASE_TABLE, null, initialValues);
    }

     

    构造一个ContentValues类,通过调用put方法,可以设置一条记录的属性。通过调用SQLiteDatabase的insert方法添加一条新的记录。

    4 删除记录

    public void deleteRow(String str)
    {
    db.delete(DATABASE_TABLE, "title=\'" + str+"\'", null);
    }

    直接调用SQLiteDatabase的delete方法,第二个参数是一个SQL条件表达式。

    第三步 显示方式和界面

    大部分的界面都有一个Layout。我们的界面是显示在整个屏幕中的List。还有其他的显示方式,比如悬浮的窗口(Dialog,Alert)。
    打开main.xml文件。
    这是一个定义界面显示风格的资源文件。

    a. 所有的界面资源文件都从这样的一行开始: ﹤?xml version="1.0" encoding="utf-8"?﹥.

    b. 一般的类型定义都是LinearLayout (并不是总是)

    c. 关于XML的名称空间的定义,总是下面一行:

    xmlns:android="http://schemas.android.com/apk/res/android"


    共2页: 1 [2] 下一页
    【内容导航】
     第 1 页:建立Notepad工程  第 2 页:编辑,配置及完成