国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Android > 正文

Android 中SQLite技術(shù)實(shí)例詳解

2019-12-12 02:36:33
字體:
供稿:網(wǎng)友

Android和iOS的數(shù)據(jù)庫都是用SQLite來實(shí)現(xiàn).

一,SQLite數(shù)據(jù)庫簡(jiǎn)介:

輕量級(jí):SQLite數(shù)據(jù)庫是一個(gè)輕量級(jí)的數(shù)據(jù)庫,適用于少量數(shù)據(jù)的CURD;

文件本質(zhì):SQLite數(shù)據(jù)庫支持大部分SQL語法,允許使用SQL語句操作數(shù)據(jù)庫,其本質(zhì)是一個(gè)文件,不需要安裝啟動(dòng)。

數(shù)據(jù)讀寫:SQLite數(shù)據(jù)庫打開只是一個(gè)文件的讀寫流。

二.簡(jiǎn)單的數(shù)據(jù)庫語句知識(shí)

在android平臺(tái)上,集成了一個(gè)嵌入式關(guān)系型數(shù)據(jù)庫―SQLite,SQLite3支持NULL,INTEGER,REAL(浮點(diǎn)數(shù)字),TEXT(字符串文本)和BLOB(二進(jìn)制對(duì)象)數(shù)據(jù)類型,實(shí)際上sqlite3也接受varchar(n),char(n),decimal(p,s)等數(shù)據(jù)類型,只不過在運(yùn)算或保存時(shí)會(huì)轉(zhuǎn)成對(duì)應(yīng)的五種數(shù)據(jù)類型.

SQLite最大的特點(diǎn)是你可以把各種類型的數(shù)據(jù)保存到任何字段中,而不用關(guān)心字段聲明的數(shù)據(jù)類型是什么。

今天我就用一個(gè)簡(jiǎn)單的列子來說明來實(shí)現(xiàn)SQLite。

實(shí)例代碼:

import java.util.ArrayList;import java.util.Iterator;import com.hucc.huccgps.R;import android.app.Activity;import android.app.Dialog;import android.content.Context;import android.content.Intent;import android.content.SharedPreferences;import android.net.Uri;import android.os.Bundle;import android.util.Log;import android.view.LayoutInflater;import android.view.View;import android.view.View.OnClickListener;import android.view.ViewGroup;import android.view.Window;import android.widget.AdapterView;import android.widget.AdapterView.OnItemClickListener;import android.widget.BaseAdapter;import android.widget.Button;import android.widget.EditText;import android.widget.ImageView;import android.widget.ListView;import android.widget.TextView;import android.widget.Toast;public class MainActivity extends Activity {private static final String TAG = "JGPS/MainActivity";private TextView mAdd_white = null;private ListView mWhiteListView = null;private Context mContext = null;private int mPosition;private DBHelper mDBHelper = null;private WhiteListAdapter mAdapter = null;private ArrayList<Item> mWhiteListItem = new ArrayList<Item>();@Overrideprotected void onCreate(Bundle savedInstanceState) {  Log.d("JGPS/Start", "onCreate");  super.onCreate(savedInstanceState);  setContentView(R.layout.relative_main);  this.mDBHelper = new DBHelper(this);  this.mContext = this;  this.mWhiteListItem = new ArrayList<Item>();  this.mWhiteListView = (ListView)findViewById(R.id.list_view);  initData();  this.mWhiteListView.setOnItemClickListener(new OnItemClickListener() {    @Override    public void onItemClick(AdapterView<?> paramAdapterView, View paramView,         int paramInt, long paramLong) {      Log.d("JGPS/MainActivity", ""+paramInt);      MainActivity.this.updateWhiteList((Item)MainActivity.this.mWhiteListItem.get(paramInt));    }  });  if (this.mAdd_white == null)     return;  mAdd_white.setOnClickListener(new OnClickListener() {    @Override    public void onClick(View arg0) {      MainActivity.this.addContactList();    }  });  Log.d("JGPS/end", "onCreate");}private void initData() {  this.mWhiteListItem = this.mDBHelper.getRelativesList();  if (this.mWhiteListItem.size() != 3) {    for (int i = 1; i < 4; i++) {      Log.d("JGPS/MainActivity", "initData,id=" + i);      Item localItem1 = new Item();      localItem1.setName("");      localItem1.setNumber("");      addItemToList(localItem1);      updateSetting(i,"");            }    this.mWhiteListItem = this.mDBHelper.getRelativesList();  }  Iterator localIterator = this.mWhiteListItem.iterator();  while (localIterator.hasNext()) {    Item localItem2 = (Item) localIterator.next();    Log.d("JGPS/MainActivity", "initData,id=" + localItem2.getId() + ",name = " + localItem2.getName() + ",number=" + localItem2.getNumber());  }  this.mAdapter = new WhiteListAdapter(this, this.mWhiteListItem);  this.mWhiteListView.setAdapter(mAdapter);}private void updateSetting(int id, String phoneNum) {  switch (id) {  case 1:    putSting("phone_num1",phoneNum);    break;  case 2:    putSting("phone_num2",phoneNum);    break;  case 3:    putSting("phone_num3",phoneNum);    break;  default:    Log.d("JGPS/MainActivity", "Wrong relative number id");  }    }private void putSting(String paramString1, String paramString2) {  SharedPreferences.Editor localEditor = getSharedPreferences("sos_config", 0).edit();  localEditor.putString(paramString1, paramString2);  localEditor.apply();}protected void updateWhiteList(Item paramItem) {  final Item item = paramItem;  Log.d("JGPS/MainActivity", "updateWhiteList------" + item.getId());  final Dialog localDialog = new Dialog(this, R.style.dialog);  localDialog.show();  Window localWindow = localDialog.getWindow();  localWindow.setContentView(R.layout.dialog_editor);  Button localButton1 = (Button) localWindow.findViewById(R.id.btn_ok);  Button localButton2 = (Button) localWindow.findViewById(R.id.btn_cancel);  final EditText phone = (EditText)localWindow.findViewById(R.id.phone);  final EditText name = (EditText)localWindow.findViewById(R.id.name);  name.setText(item.getName());  phone.setText(item.getNumber());  ((TextView)localWindow.findViewById(R.id.title)).setText(R.string.edit_white);  localButton1.setOnClickListener(new OnClickListener() {    @Override    public void onClick(View paramView) {      if (phone.getText().toString().trim().length() == 0) {        Toast.makeText(mContext, R.string.toast_tel, 2000).show();        return;      }      if (name.getText().toString().trim().length() == 0) {        Toast.makeText(mContext, R.string.name_null, 2000).show();        return;      }      MainActivity.this.updateContactInDB(item.getId(), name.getText().toString(), phone.getText().toString());      int id = Integer.parseInt(item.getId());      updateSetting(id, phone.getText().toString());      Toast.makeText(mContext, R.string.edit_success, 2000).show();      localDialog.cancel();    }  });  localButton2.setOnClickListener(new OnClickListener() {    @Override    public void onClick(View paramView) {      localDialog.cancel();    }  });}protected void updateContactInDB(String paramString1, String paramString2, String paramString3) {  Item localItem = new Item();  localItem.setId(paramString1);  localItem.setName(paramString2);  localItem.setNumber(paramString3);  updateItemList(localItem);}private void updateItemList(Item paramItem) {  Item localItem2;  Iterator localIterator1 = this.mWhiteListItem.iterator();  while (localIterator1.hasNext()) {    localItem2 = (Item) localIterator1.next();    if (localItem2.getId().equals(paramItem.getId())) {      localItem2.setName(paramItem.getName());      localItem2.setNumber(paramItem.getNumber());      this.mDBHelper.updateRelativesItem(paramItem);    }  }  Log.d("JGPS/MainActivity", "updateItemInList ---------");  this.mAdapter = new WhiteListAdapter(this, this.mWhiteListItem);  this.mWhiteListView.setAdapter(mAdapter);}private void addContactList() {  final Dialog dialog = new Dialog(this, R.style.dialog);  dialog.show();  Window window = dialog.getWindow();  window.setContentView(R.layout.dialog_editor);  Button btn1 = (Button)window.findViewById(R.id.btn_ok);   Button btn2 = (Button)window.findViewById(R.id.btn_cancel);   final EditText phone = (EditText)window.findViewById(R.id.phone);  final EditText name = (EditText)window.findViewById(R.id.name);  btn1.setOnClickListener(new OnClickListener() {    @Override    public void onClick(View arg0) {      if (phone.getText().toString().trim().length() == 0)      {       Toast.makeText(mContext, R.string.toast_tel, 2000).show();       return;      }      if (name.getText().toString().trim().length() == 0)      {       Toast.makeText(mContext, R.string.name_null, 2000).show();       return;      }      if (MainActivity.this.mWhiteListItem.size()>3) {        String str = MainActivity.this.getResources().getString(R.string.full1)+ " " + 3 + " " + MainActivity.this.getResources().getString(R.string.full2);        Toast.makeText(mContext, str, 2000).show();        dialog.cancel();        return;      }      MainActivity.this.addContactToDB(name.getText().toString(),phone.getText().toString());      dialog.cancel();    }  });  btn2.setOnClickListener(new OnClickListener() {    @Override    public void onClick(View arg0) {      dialog.cancel();    }  });}protected void deleteContactFromDB(String paramString) {  updateContactInDB(paramString, "", "");  Log.d("JGPS/MainActivity", "===addItemToList = "+paramString);  int id = Integer.parseInt(paramString);  updateSetting(id, paramString);  Toast.makeText(this.mContext, R.string.delete_success, 2000).show();}@Overrideprotected void onStart() {  Log.d("JGPS/MainActivity", "onStart()");  super.onStart();}protected void startContactIntent(int paramInt) {  Log.d("JGPS/MainActivity", "onClick " + paramInt);  this.mPosition = paramInt;  Intent localIntent = new Intent("android.intent.action.PICK");  localIntent.setType("vnd.android.cursor.dir/phone_v2");  startActivityForResult(localIntent, 100);}protected void addContactToDB(String paramString1, String paramString2) {  Iterator localIterator = this.mWhiteListItem.iterator();  while (localIterator.hasNext()) {    if(((Item)localIterator.next()).getNumber().equals(paramString2)){       Toast.makeText(mContext, R.string.replace, 2000).show();       return;     }   }  Item localItem = new Item();  localItem.setName(paramString1);  localItem.setNumber(paramString2);  addItemToList(localItem);  Toast.makeText(mContext, R.string.replace, 2000).show();}private void addItemToList(Item localItem) {  Log.d("JGPS/MainActivity", "addItemToList,name = " + localItem.getName() + ",number=" + localItem.getNumber());  this.mDBHelper.addRelativesItem(localItem);  this.mWhiteListItem = this.mDBHelper.getRelativesList();  this.mAdapter = new WhiteListAdapter(this, this.mWhiteListItem);  this.mWhiteListView.setAdapter(mAdapter);}public void startActivityForResult(Intent paramIntent, int paramInt){ super.startActivityForResult(paramIntent, paramInt);}private class WhiteListAdapter extends BaseAdapter{  private Context context;  private LayoutInflater mInflater;  private ArrayList<Item> listItem;  public WhiteListAdapter(Context context1,      ArrayList<Item> whiteListItem) {    this.context = context1;    this.listItem = whiteListItem;    this.mInflater = LayoutInflater.from(context);  }  public int getCount()  {    if ((this.listItem !=null) && (this.listItem.size() > 0)) {      return 3;    }   return 0;  }  public Object getItem(int paramInt)  {   if ((this.listItem != null) && (this.listItem.size() > 0))    return this.listItem.get(paramInt);   return null;  }  public long getItemId(int paramInt)  {   return 0L;  }  @Override  public View getView(int paramInt, View paramView, ViewGroup paramViewGroup) {    Log.d("JGPS/MainActivity", "getView,position=" + paramInt + ",name=" + ((Item)this.listItem.get(paramInt)).getName() + ",num=" + ((Item)this.listItem.get(paramInt)).getNumber());    if (paramView == null) {      final ViewHolder localViewHolder = new ViewHolder();      paramView = this.mInflater.inflate(R.layout.relative_list_item, null);      localViewHolder.ivCall = (ImageView)paramView.findViewById(R.id.imageView_call);      localViewHolder.ivDelete = (ImageView)paramView.findViewById(R.id.imageView_delete);      localViewHolder.ivSelect = (ImageView)paramView.findViewById(R.id.recipients_picker);      localViewHolder.txtView_name = (TextView)paramView.findViewById(R.id.txtView_name);      localViewHolder.txtView_tel = (TextView)paramView.findViewById(R.id.txtView_number);      paramView.setTag(localViewHolder);      localViewHolder.position = paramInt;      localViewHolder.ivSelect.setTag(localViewHolder);      if ((this.listItem.get(paramInt)== null)||           (((Item)this.listItem.get(paramInt)).getNumber() == null)           || (((Item)this.listItem.get(paramInt)).getNumber().equals(""))) {        localViewHolder.ivCall.setVisibility(View.GONE);        localViewHolder.ivSelect.setVisibility(View.VISIBLE);        String str1 = MainActivity.this.getString(R.string.family_string);        String str2 = str1 + (paramInt + 1) + ":";        localViewHolder.txtView_name.setText(str2);        localViewHolder.txtView_tel.setText(R.string.click_to_add);      }else {        localViewHolder.ivCall.setVisibility(View.VISIBLE);        localViewHolder.ivSelect.setVisibility(View.GONE);        localViewHolder.txtView_name.setText(((Item)this.listItem.get(paramInt)).getName());        localViewHolder.txtView_tel.setText(((Item)this.listItem.get(paramInt)).getNumber());      }      localViewHolder.ivSelect.setOnClickListener(new OnClickListener() {        @Override        public void onClick(View paramView) {          MainActivity.WhiteListAdapter.ViewHolder localViewHolder = (MainActivity.WhiteListAdapter.ViewHolder)paramView.getTag();          Log.d("JGPS/MainActivity", "getView,mPosition=" + MainActivity.this.mPosition);          MainActivity.this.startContactIntent(localViewHolder.position);        }      });      if ((!(((Item)this.listItem.get(paramInt)).getName().equals("")))          || (!(((Item)this.listItem.get(paramInt)).getNumber().equals(""))))      {        localViewHolder.ivDelete.setVisibility(View.VISIBLE);      }else {      localViewHolder.ivDelete.setVisibility(View.GONE);      }      localViewHolder.ivCall.setOnClickListener(new OnClickListener() {        @Override        public void onClick(View paramView) {          Intent localIntent = new Intent("android.intent.action.CALL",              Uri.parse("tel:" + ((Item)MainActivity.WhiteListAdapter.this.listItem.get(localViewHolder.position)).getNumber()));          MainActivity.WhiteListAdapter.this.context.startActivity(localIntent);        }      });      localViewHolder.ivDelete.setOnClickListener(new OnClickListener() {        @Override        public void onClick(View paramView) {         if(paramView.getId() != R.id.imageView_delete)            return;         final String str = ((Item)MainActivity.WhiteListAdapter.this.listItem.get(localViewHolder.position)).getId();              Log.d("JGPS/MainActivity", "delete item onClick,strId=" + str + ",position=" + localViewHolder.position);         final Dialog localDialog = new Dialog(MainActivity.WhiteListAdapter.this.context, R.style.dialog);         localDialog.show();         Window localWindow = localDialog.getWindow();         localWindow.setContentView(R.layout.dialog_delete);         ((TextView)localWindow.findViewById(R.id.txtView_delete)).setText(MainActivity.WhiteListAdapter.this.context.getResources().getString(R.string.delete_one)              + "'" + ((Item)MainActivity.WhiteListAdapter.this.listItem.get(localViewHolder.position)).getName()             + "'" + MainActivity.WhiteListAdapter.this.context.getResources().getString(R.string.delete_two));         Button localButton1 = (Button) localWindow.findViewById(R.id.btn_ok);         Button localButton2 = (Button) localWindow.findViewById(R.id.btn_cancel);         localButton1.setOnClickListener(new OnClickListener() {          @Override          public void onClick(View paramView) {            MainActivity.this.deleteContactFromDB(str);            localDialog.cancel();          }        });         localButton2.setOnClickListener(new OnClickListener() {          @Override          public void onClick(View paramView) {            localDialog.cancel();          }        });        }      });    }else {    }    return paramView;  }  public class ViewHolder{    public ImageView ivCall;     public ImageView ivDelete;     public ImageView ivSelect;     public int position;     public TextView txtView_name;     public TextView txtView_tel;  }}}import java.util.ArrayList;import android.content.ContentValues;import android.content.Context;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteOpenHelper;import android.util.Log;public class DBHelper extends SQLiteOpenHelper {public static final String TABLE_RELATIVES_CONTENT = "RelativesContent";public static final int VERSION = 1; //版本public static final String dbName = "SosDB"; //數(shù)據(jù)庫的名字public static Context mContext = null;public SQLiteDatabase db = null;public DBHelper(Context paramContext) {  super(paramContext, "SosDB", null, 1);  mContext = paramContext;}// 創(chuàng)建數(shù)據(jù)庫表@Overridepublic void onCreate(SQLiteDatabase paramSQLiteDatabase) {  paramSQLiteDatabase.execSQL("create table RelativesContent(id integer primary key autoincrement,name text , number text)");  closeDatabase();}private void closeDatabase() {  if (this.db == null)     return;  this.db.close();}@Overridepublic void onUpgrade(SQLiteDatabase paramSQLiteDatabase, int paramInt1, int paramInt2) {  onCreate(paramSQLiteDatabase);}//查詢方法public ArrayList<Item> getRelativesList() {  String idf = null;  String namef = null;  String numf = null;  ArrayList localArrayList = new ArrayList();  openDatabase();  Cursor localCursor = this.db.query("RelativesContent", null, null, null, null, null, null);  if(localCursor == null)    return localArrayList;  while (localCursor.moveToNext()) {    Item localItem = new Item();    idf = localCursor.getString(localCursor.getColumnIndex("id"));    namef = localCursor.getString(localCursor.getColumnIndex("name"));    numf = localCursor.getString(localCursor.getColumnIndex("number"));    localItem.setId(idf);    Log.d("JGPS/MainActivity", "dbid=" + idf);    if ((namef == null) || ("".equals(namef))) {      localItem.setName("");    }else {      localItem.setName(namef);    }    if ((numf == null) || ("".equals(numf))) {      localItem.setNumber("");    }else {      localItem.setNumber(numf);    }    localArrayList.add(localItem);  }      return localArrayList;}//寫入數(shù)據(jù)private void openDatabase() {  this.db = super.getWritableDatabase();}//添加數(shù)據(jù)public boolean addRelativesItem(Item localItem) {  openDatabase();  ContentValues localContentValues = new ContentValues();  localContentValues.put("name", localItem.getName());  localContentValues.put("number", localItem.getNumber());  long l = this.db.insert("RelativesContent", null, localContentValues);  closeDatabase();  return (1<=0L);}//更新數(shù)據(jù)public boolean updateRelativesItem(Item paramItem) {  openDatabase();  ContentValues localContentValues = new ContentValues();  localContentValues.put("name", paramItem.getName());  localContentValues.put("number", paramItem.getNumber());  SQLiteDatabase localSQLiteDatabase = this.db;  String[] arrayOfString = new String[1];  arrayOfString[0] = paramItem.getId();  long l = localSQLiteDatabase.update("RelativesContent", localContentValues, "id=?", arrayOfString);  closeDatabase();  return (1 <= 0L);}}import java.io.Serializable;public class Item implements Serializable{private String _id;private String name;private String number;public Item() {  // TODO Auto-generated constructor stub}public void Item(String paramString1, String paramString2, String paramString3) {  this._id = paramString1;  this.name = paramString2;  this.number = paramString3; }public String getId() {  return _id;}public void setId(String paramString) {  this._id = paramString; }public String getName() {  return name;}public void setName(String paramString) {  this.name = paramString; }public String getNumber() {  return number;}public void setNumber(String paramString) {  this.number = paramString; }   }

這是基本的數(shù)據(jù)程序。

XML

relative_main

<LinearLayout android:orientation="vertical" android:background="@color/background_color" android:layout_width="fill_parent" android:layout_height="fill_parent"xmlns:android="http://schemas.android.com/apk/res/android"><RelativeLayout android:background="@drawable/title_bar"   android:layout_width="fill_parent"   android:layout_height="50.0sp">  <TextView     android:textSize="@dimen/title_size"     android:textStyle="bold"     android:textColor="@color/title_color"     android:gravity="center"     android:layout_gravity="center"     android:layout_width="wrap_content"     android:layout_height="50.0sp"     android:text="@string/relative_name"     android:layout_centerInParent="true" /></RelativeLayout><RelativeLayout android:id="@+id/white_content"   android:layout_width="fill_parent"   android:layout_height="wrap_content">  <ListView android:id="@+id/list_view"     android:scrollbars="none"      android:layout_width="fill_parent"      android:layout_height="fill_parent"      android:scrollingCache="true"      android:cacheColorHint="#00000000"      android:divider="@null"      android:fastScrollEnabled="false" /></RelativeLayout></LinearLayout>dialog_editor<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:gravity="center" android:orientation="vertical" android:id="@+id/linearlayout_dialog" android:layout_width="300.0dip" android:layout_height="wrap_content">   <TextView   android:textSize="20.0sp"   android:textColor="#ffffffff"   android:gravity="center"   android:id="@+id/title"   android:background="@drawable/popup_topbg"   android:layout_width="fill_parent"   android:layout_height="60.0dip"   android:text="@string/add_white" /><LinearLayout   android:orientation="vertical"   android:background="@drawable/simple_dialog_list_item_bg"   android:paddingLeft="5.0dip" android:paddingTop="5.0dip"   android:paddingRight="5.0dip" android:layout_width="fill_parent"   android:layout_height="wrap_content">      <LinearLayout android:orientation="horizontal" android:layout_width="wrap_content"     android:layout_height="wrap_content" android:layout_marginLeft="8.0dip"     android:layout_marginTop="6.0dip" android:layout_marginRight="6.0dip"     android:layout_marginBottom="2.0dip">    <TextView android:textSize="16.0sp" android:textColor="#ff000000"       android:layout_width="wrap_content" android:layout_height="wrap_content"       android:text="@string/name" />    <EditText android:gravity="left|center"       android:id="@+id/name"       android:background="@drawable/text_input"       android:layout_width="210.0dip" android:layout_height="wrap_content"       android:layout_marginLeft="8.0dip" android:hint="@string/name_hint"       android:singleLine="true" />  </LinearLayout>  <LinearLayout android:layout_gravity="center" android:orientation="horizontal"     android:layout_width="fill_parent" android:layout_height="wrap_content"     android:layout_marginLeft="8.0dip" android:layout_marginRight="6.0dip">    <TextView android:textSize="16.0sp" android:textColor="#ff000000"       android:layout_width="wrap_content" android:layout_height="wrap_content"       android:text="@string/address" />    <EditText android:gravity="left|center" android:id="@+id/phone"       android:background="@drawable/text_input"       android:layout_width="210.0dip"       android:layout_height="wrap_content" android:layout_marginLeft="8.0dip"       android:hint="@string/address_hint" android:singleLine="true"       android:inputType="phone" />  </LinearLayout>  <include layout="@layout/divider" />  <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent"     android:layout_height="54.0dip">    <Button android:textSize="20.0sp" android:id="@+id/btn_ok"       android:layout_width="fill_parent"       android:layout_height="fill_parent" android:text="@string/ok"       android:layout_weight="5.0" style="@style/dialog_item" />    <View android:background="#ffbcc2c5" android:layout_width="2.0px"       android:layout_height="fill_parent" />    <Button android:textSize="20.0sp" android:id="@+id/btn_cancel"       android:layout_width="fill_parent"       android:layout_height="fill_parent"       android:text="@string/cancel" android:layout_weight="5.0"       style="@style/dialog_item" />  </LinearLayout></LinearLayout> </LinearLayout>

relative_list_item

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:gravity="center_vertical" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="40.0dip" style="@style/list_item_background"><LinearLayout   android:gravity="center_vertical"   android:orientation="horizontal"   android:id="@+id/ll_line1"   android:paddingLeft="5.0dip"   android:paddingRight="5.0dip"   android:layout_width="0.0dip"   android:layout_height="wrap_content"   android:layout_weight="1.0">  <TextView     android:textSize="@dimen/list_font_size_0"     android:textStyle="bold"     android:textColor="@color/list_item_text"     android:ellipsize="end"     android:gravity="center"     android:id="@+id/txtView_name"     android:paddingBottom="3.0dip"     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:maxWidth="80.0dip"     android:singleLine="true" />  <TextView     android:textSize="@dimen/list_font_size_1"     android:textStyle="bold"     android:textColor="@color/list_item_text"     android:ellipsize="end" android:gravity="center"     android:id="@+id/txtView_number" android:layout_width="wrap_content"     android:layout_height="wrap_content" android:layout_marginLeft="10.0dip"     android:singleLine="true" /></LinearLayout><ImageView   android:layout_gravity="center_vertical"   android:id="@+id/imageView_call"   android:background="@drawable/btn_dial_action"   android:paddingLeft="8.0dip"   android:paddingTop="8.0dip"   android:paddingRight="8.0dip"   android:paddingBottom="8.0dip"   android:layout_width="wrap_content"   android:layout_height="wrap_content"   android:src="@drawable/call_phone" />" <ImageView android:layout_gravity="center_vertical" android:id="@+id/recipients_picker" android:background="@drawable/add_contact_selector" android:layout_width="65.0dip" android:layout_height="65.0dip" android:layout_marginLeft="2.0dip" android:layout_marginRight="2.0dip" android:scaleType="fitXY" /><View android:id="@+id/imageView_divider" android:background="#2b2b2b2b"   android:layout_width="2.0dip" android:layout_height="40.0dip" /><ImageView android:layout_gravity="right|center"   android:id="@+id/imageView_delete" android:paddingLeft="8.0dip"   android:paddingTop="8.0dip" android:paddingRight="8.0dip"   android:paddingBottom="8.0dip" android:layout_width="wrap_content"   android:layout_height="wrap_content"   android:src="@drawable/del_cross" />    </LinearLayout>

dialog_delete

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:gravity="center" android:orientation="vertical" android:id="@+id/linearLayout_dialog" android:layout_width="300.0dip" android:layout_height="wrap_content"><TextView android:textSize="20.0sp" android:textColor="#ffffffff"   android:gravity="center" android:background="@drawable/popup_topbg"   android:layout_width="fill_parent" android:layout_height="60.0dip"   android:text="@string/tips" /><LinearLayout android:orientation="vertical"   android:background="@drawable/simple_dialog_list_item_bg"   android:paddingLeft="5.0dip"   android:paddingTop="12.0dip" android:paddingRight="5.0dip"   android:layout_width="fill_parent" android:layout_height="wrap_content">  <TextView android:textSize="20.0sp" android:textColor="#ff000000"     android:id="@+id/txtView_delete" android:paddingBottom="12.0dip"     android:layout_width="wrap_content" android:layout_height="wrap_content"     android:layout_marginLeft="8.0dip" android:layout_marginRight="6.0dip" />  <include layout="@layout/divider" />  <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent"     android:layout_height="54.0dip">    <Button android:textSize="20.0sp" android:id="@+id/btn_ok"       android:layout_width="fill_parent"       android:layout_height="fill_parent"       android:text="@string/dialog_yes" android:layout_weight="5.0"       style="@style/dialog_item" />    <View android:background="#ffbcc2c5" android:layout_width="2.0px"       android:layout_height="fill_parent" />    <Button android:textSize="20.0sp" android:id="@+id/btn_cancel"       android:layout_width="fill_parent"       android:layout_height="fill_parent"       android:text="@string/dialog_no" android:layout_weight="5.0"       style="@style/dialog_item" />  </LinearLayout></LinearLayout></LinearLayout>

這是一個(gè)簡(jiǎn)單的demo,我這里就不詳細(xì)說明數(shù)據(jù)庫的細(xì)節(jié)了,對(duì)于已經(jīng)很熟悉數(shù)據(jù)庫的,可以查看android官網(wǎng)有說明的,

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 三河市| 马鞍山市| 永济市| 蒙阴县| 万盛区| 临桂县| 鹰潭市| 内丘县| 内黄县| 毕节市| 金门县| 龙川县| 陆良县| 论坛| 沈丘县| 泊头市| 清流县| 阳东县| 安顺市| 香港| 平凉市| 宿州市| 颍上县| 固安县| 图们市| 应城市| 龙川县| 深州市| 广河县| 元阳县| 江阴市| 宜章县| 石嘴山市| 兴化市| 安图县| 皮山县| 清水河县| 醴陵市| 彭泽县| 沧州市| 肇州县|