Android开发入门(三)

来源:互联网 发布:网络期货诈骗案 编辑:程序博客网 时间:2024/05/17 07:17

5. 界面布局

   

几个常用的布局框架

1  LinearLayout: 线性布局

       垂直线性布局
       android:orientation="vertical"
       水平线性布局
       android:orientation="horizontal"

n
2 RelativeLayout:相对布局
       控件的位置是相对的。
3 TabWidget:切换卡
       这是一个特殊的框架,通过继承TabActivity而来,通过多个标签切换,显示不同的内容。首先要了解TabHost,它是一个用来存放多个Tab标签的容器,每一个tab都可以对应自己的布局
 
 
6. Android数据存储
 

1 Shared Preferences
      用来存储“key-value pairs”格式的数据,它是一个轻量级的键值存储机制,只可以存储基本数据类型。

特点
     不需编写逻辑代码就可以实现程序参数的存储。
   
    存放位置
    其实每安装一个应用程序时,在data/data目录下都会产生一个文件夹,如果应用程序使用了Preferences,那么便会在该文件夹下产生一个shared_prefs文件夹,其中就是我们保存的数据。

    详细介绍
  http://jaymsimusic.iteye.com/blog/773337

 

2 数据存储之Files
    文件可以创建在设备本身或者存储卡上。默认状态下,文件不能在不同程序间共享。用文件来存储数据可以通过openFileOutput方法打开一个(如果这个文件不存在就自动创建这个文件),通过load方法来获取文件中的数据,通过deleteFile方法可以删除一个指定的文件。

3.数据存储之SQLite
     前面讲述的几种数据存储方式,都只能存储一些简单的、数据流较小的数据,如果需要对大量数据进行存储、管理以及升级维护,可能就需要随时添加数据、查看数据、更新,这时就要用到SQLite.
     Android提供了一个名为SQLiteDatabase的类,该类封装了一些操作数据库的API,使用该类可以创建数据库,对数据进行增、删、改、查。

创建和打开数据库
   SQLiteDatabase mSQLiteDatabase = null;
   mSQLiteDatabase = SQLiteDatabase.openDatabase("/sdcard/abc.dbs",
   null, SQLiteDatabase.CREATE_IF_NECESSARY);

 

建表、插入、删除、修改
   只需编写相应的sql语句,然后执行就可以完成。
   如插入一条数据:
mSQLiteDatabase.execSQL(“insert into person(name, age) values(‘小军', 4)");

   使用占位符参数(?) 例子如下:
   mSQLiteDatabase.execSQL(“insert into person(name, age) values(?,?)”, new Object[]{“小军", 4});

查询
SQLiteDatabase db = ....;
    Cursor cursor = db.rawQuery(“select * from person”, null);
    If( cursor != null )
    {
     if (cursor.moveToFirst())
     {
          do
          {
        int personid = cursor.getInt(0); //获取第一列的值,第一列的索引从0开始
        String name = cursor.getString(1);//获取第二列的值
              int age = cursor.getInt(2);//获取第三列的值
         }
          while(cursor.moveToNext());
      }
      }
   带占位符参数的select语句使用例子如下:
   Cursor cursor = db.rawQuery(“select * from person where name like ? and age=?”, new String[]{“%军%", "4"});