蔣彪 @ 南京 2012-12-21
1. 需求 設(shè)計(jì)
在 Android 的數(shù)據(jù)庫創(chuàng)建一個(gè) login 表,包括密碼和賬戶兩個(gè)字段
實(shí)現(xiàn)兩個(gè) activity 應(yīng)用程序,其中一個(gè),提供兩個(gè)入力框,分別輸入密碼和賬戶,并且實(shí)現(xiàn)登錄 check
登錄成功之后,跳轉(zhuǎn)到第二個(gè) Activity ,在其上實(shí)現(xiàn)一個(gè)入力框,根據(jù)輸入的參數(shù),到 google 上檢索
2. 效果圖
3. 主要代碼
3.1 第一個(gè) Activity 的代碼
public class Android1 extends Activity { private Button mButton1 ; private TextView mTextView1 ; private TextView mTextView2 ; private String user = new String(); private String password = new String(); private DBHelper dbHelper ;
/** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState ) { super .onCreate( savedInstanceState ); setContentView(R.layout. main );
mTextView1 = (TextView) findViewById(R.id. EditText01 ); mTextView2 = (TextView) findViewById(R.id. EditText02 ); dbHelper = new DBHelper( this , "TestDB" ); createTable();
}
public void onClick(View v) { // TODO Auto-generated method stub user = mTextView1 .getText().toString(); password = mTextView2 .getText().toString(); Boolean result = selectTable( user , password ); Log. d ( "Android1" , "the result is " + result); if (result == true ) { Intent intent = new Intent(); intent.setClass(Android1. this , Android2. class ); startActivity(intent);
} }
public void createTable() { SQLiteDatabase db = dbHelper .getWritableDatabase(); db .execSQL( "create table if not exists LOG (user varchar primary key,password varchar)" ); }
public boolean selectTable(String user, String password) { SQLiteDatabase db = dbHelper .getWritableDatabase(); try { Cursor result = db.rawQuery( "select * from LOG where user = ? AND password =?" , new String[] { user, password }); Log. d ( "Android1" , "count is " + result.getCount()); if (result.getCount() != 0) { result.close(); db.close(); return true ; } else { result.close(); db.close(); return false ; } } catch (SQLException ex) { Log. d ( "Android1" , "select table failure" ); return false ; } }
} |
3.2 第二個(gè) Activity 的代碼
public class Android2 extends Activity { private TextView mTextView1 ;
@Override public void onCreate(Bundle savedInstanceState) { super .onCreate(savedInstanceState); setContentView(R.layout. search ); mTextView1 = (TextView) findViewById(R.id. EditTextSearch ); }
public void onClick(View v) { String key = mTextView1 .getText().toString(); Intent search = new Intent(Intent. ACTION_WEB_SEARCH );
search.addFlags(Intent. FLAG_ACTIVITY_NEW_TASK );
search.putExtra(SearchManager. QUERY , key);
final Bundle appData = getIntent().getBundleExtra( SearchManager. APP_DATA );
if (appData != null ) {
search.putExtra(SearchManager. APP_DATA , appData);
}
startActivity(search);
} } |
3.3 數(shù)據(jù)庫訪問控制類
public class DBHelper extends SQLiteOpenHelper {
// 數(shù)據(jù) 庫 版本 private static final int VERSION = 1;
// 新建一個(gè)表
public DBHelper(Context context, String name, CursorFactory factory, int version) { super (context, name, factory, version);
}
public DBHelper(Context context, String name, int version) { this (context, name, null , version); }
public DBHelper(Context context, String name) { this (context, name, VERSION ); }
@Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
@Override public void onCreate(SQLiteDatabase arg0) { // TODO Auto-generated method stub
} MsoNormal
發(fā)表評(píng)論
最新評(píng)論
|
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元

評(píng)論