亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Android Studio實現簡單的通訊錄

瀏覽:12日期:2022-09-19 08:59:05

網上找的一個單頁面通訊錄,修改之后將添加聯系人和修改/刪除聯系人分為兩個獨立頁面

Android Studio實現簡單的通訊錄Android Studio實現簡單的通訊錄Android Studio實現簡單的通訊錄

MainActivity

package com.example.test; import androidx.appcompat.app.AppCompatActivity;import android.content.Context;import android.content.Intent;import android.os.Bundle;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase;import android.text.method.ScrollingMovementMethod;import android.view.View;import android.view.inputmethod.InputMethodManager;import android.widget.Button;import android.widget.EditText;import android.widget.TextView;import android.widget.Toast; public class MainActivity extends AppCompatActivity implements View.OnClickListener{ MyHelper myHelper; private TextView tvShow; private Button btnAdd; private Button btnQuery; private Button btnUpdate; @Override protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);myHelper = new MyHelper(this);init(); } private void init(){tvShow = (TextView)findViewById(R.id.tv_show);btnAdd = (Button)findViewById(R.id.btn_add);btnQuery = (Button)findViewById(R.id.btn_query);btnUpdate = (Button)findViewById(R.id.btn_update);btnAdd.setOnClickListener(this); //Button控件設置監聽btnQuery.setOnClickListener(this);btnUpdate.setOnClickListener(this);findViewById(R.id.traceroute_rootview).setOnClickListener(this);tvShow.setMovementMethod(ScrollingMovementMethod.getInstance()); //設置文本滾動 } public void onClick(View v){SQLiteDatabase db;switch (v.getId()){ case R.id.traceroute_rootview:InputMethodManager imm=(InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);imm.hideSoftInputFromWindow(v.getWindowToken(),0);break; case R.id.btn_add: //添加聯系人Intent intent=new Intent(MainActivity.this,nextActivity.class);startActivity(intent);break; case R.id.btn_query: //查詢聯系人db = myHelper.getReadableDatabase();Cursor cursor = db.rawQuery('select name,phone from person',null);if (cursor.getCount() == 0){ tvShow.setText(''); Toast.makeText(this,'當前無聯系人',Toast.LENGTH_SHORT).show();}else { cursor.moveToFirst(); tvShow.setText('Name:' + cursor.getString(0) + ' ; Tel:' + cursor.getString(1)); while (cursor.moveToNext()){tvShow.append('n' + 'Name:' + cursor.getString(0) + ' ; Tel:' + cursor.getString(1)); }}cursor.close();db.close();break; case R.id.btn_update: //修改聯系人Intent intent1=new Intent(MainActivity.this,xiugaiActivity.class);startActivity(intent1);break;} }}

nextActivity

package com.example.test; import androidx.appcompat.app.AppCompatActivity;import android.content.Context;import android.content.Intent;import android.os.Bundle;import android.database.sqlite.SQLiteDatabase;import android.view.View;import android.view.inputmethod.InputMethodManager;import android.widget.Button;import android.widget.EditText;import android.widget.Toast; public class nextActivity extends AppCompatActivity implements View.OnClickListener { MyHelper myHelper; private EditText etName; private EditText etPhone; private Button btnAdd; @Override protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.next);myHelper = new MyHelper(this);init(); } private void init(){etName = (EditText)findViewById(R.id.et_name);etPhone = (EditText)findViewById(R.id.et_phone);btnAdd = (Button)findViewById(R.id.btn_add);btnAdd.setOnClickListener(this); //Button控件設置監聽findViewById(R.id.traceroute_rootview).setOnClickListener(this); } public void onClick(View v){String name;String phone;SQLiteDatabase db;switch (v.getId()) { case R.id.traceroute_rootview:InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);imm.hideSoftInputFromWindow(v.getWindowToken(), 0);break; case R.id.btn_add: //添加聯系人name = etName.getText().toString().trim();phone = etPhone.getText().toString().trim();db = myHelper.getWritableDatabase();if (name.equals('') || phone.equals('')) { //聯系人信息不能為空 Toast.makeText(this, '聯系人信息添加失敗', Toast.LENGTH_SHORT).show();} else { db.execSQL('insert into person (name,phone) values(?,?)', new Object[]{name, phone}); Toast.makeText(this, '聯系人信息添加成功', Toast.LENGTH_SHORT).show();}db.close();Intent intent=new Intent(nextActivity.this,MainActivity.class);startActivity(intent);break;} }}

xiugaiActivity

package com.example.test; import androidx.appcompat.app.AppCompatActivity;import android.content.Context;import android.os.Bundle;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase;import android.text.method.ScrollingMovementMethod;import android.view.View;import android.view.inputmethod.InputMethodManager;import android.widget.Button;import android.widget.EditText;import android.widget.TextView;import android.widget.Toast;public class xiugaiActivity extends AppCompatActivity implements View.OnClickListener{ MyHelper myHelper; private EditText etName; private EditText etPhone; private TextView tvShow; private Button btnQuery; private Button btnUpdate; private Button btnDelete; @Override protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.xiugai);myHelper = new MyHelper(this);init(); } private void init(){etName = (EditText)findViewById(R.id.et_name);etPhone = (EditText)findViewById(R.id.et_phone);tvShow = (TextView)findViewById(R.id.tv_show);btnQuery = (Button)findViewById(R.id.btn_query);btnUpdate = (Button)findViewById(R.id.btn_update);btnDelete = (Button)findViewById(R.id.btn_delete);btnQuery.setOnClickListener(this);btnUpdate.setOnClickListener(this);btnDelete.setOnClickListener(this);findViewById(R.id.traceroute_rootview).setOnClickListener(this);tvShow.setMovementMethod(ScrollingMovementMethod.getInstance()); //設置文本滾動 } public void onClick(View v){String name;String phone;SQLiteDatabase db;switch (v.getId()){ case R.id.traceroute_rootview:InputMethodManager imm=(InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);imm.hideSoftInputFromWindow(v.getWindowToken(),0);break; case R.id.btn_query: //查詢聯系人db = myHelper.getReadableDatabase();Cursor cursor = db.rawQuery('select name,phone from person',null);if (cursor.getCount() == 0){ tvShow.setText(''); Toast.makeText(this,'當前無聯系人',Toast.LENGTH_SHORT).show();}else { cursor.moveToFirst(); tvShow.setText('Name:' + cursor.getString(0) + ' ; Tel:' + cursor.getString(1)); while (cursor.moveToNext()){tvShow.append('n' + 'Name:' + cursor.getString(0) + ' ; Tel:' + cursor.getString(1)); }}cursor.close();db.close();break; case R.id.btn_update: //修改聯系人db = myHelper.getWritableDatabase();name = etName.getText().toString().trim();phone = etPhone.getText().toString().trim();if (name.equals('') || phone.equals('')){ //聯系人信息不能為空 Toast.makeText(this,'不存在該聯系人',Toast.LENGTH_SHORT).show();}else { db.execSQL('update person set name=?,phone=? where name=?', new Object[]{name, phone, name}); Toast.makeText(this,'聯系人信息修改成功',Toast.LENGTH_SHORT).show();}db.close();break; case R.id.btn_delete: //刪除聯系人db = myHelper.getWritableDatabase();name = etName.getText().toString().trim();phone = etPhone.getText().toString().trim();if (name.equals('') || phone.equals('')){ //聯系人信息不能為空 Toast.makeText(this,'不存在該聯系人',Toast.LENGTH_SHORT).show();}else { db.execSQL('delete from person where name=? and phone=?', new Object[]{name, phone}); Toast.makeText(this,'聯系人信息刪除成功',Toast.LENGTH_SHORT).show();}db.close();break;} }}

MyHelper

package com.example.test;import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteOpenHelper;public class MyHelper extends SQLiteOpenHelper{ public MyHelper(Context context){super(context, 'alan.db', null ,2); } @Override public void onCreate(SQLiteDatabase db){db.execSQL('create table person(id integer primary key autoincrement,name varchar(20),phone varchar(20) unique)'); } public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion){ }}

activity_main.xml

<?xml version='1.0' encoding='utf-8'?><LinearLayout xmlns:android='http://schemas.android.com/apk/res/android' xmlns:tools='http://schemas.android.com/tools' android:orientation='vertical' android:layout_width='match_parent' android:layout_height='match_parent' android: android:background='@color/white' android:clickable='true' android:gravity='center_horizontal' tools:context='.MainActivity'><TextView android:layout_width='match_parent' android:layout_height='wrap_content' android:text='通 訊 錄' android:textSize='30dp' android:textStyle='italic' android:gravity='center' android:textColor='@color/black'></TextView><Button android: android:layout_width='match_parent' android:layout_height='wrap_content' android:background='@drawable/shape' android:text=' 添加聯系人' android:textSize='16dp' android:textColor='#c2c8ec' android:textStyle='bold'/><Button android: android:layout_width='match_parent' android:layout_height='wrap_content' android:background='@drawable/shape' android:text='查看聯系人' android:textSize='16dp' android:textColor='#c2c8ec' android:textStyle='bold'/><Button android: android:layout_width='match_parent' android:layout_height='wrap_content' android:background='@drawable/shape' android:text=' 修改聯系人' android:textSize='16dp' android:textColor='#c2c8ec' android:textStyle='bold'/> <TextViewandroid: android:layout_width='match_parent'android:layout_height='180dp'android:scrollbars='vertical'android:layout_below='@+id/lineFour'android:layout_marginTop='20dp'android:layout_marginLeft='20dp'android:layout_marginRight='18dp'android:textColor='#c2c8ec'android:textSize='24dp'/></LinearLayout>

next.xml

<?xml version='1.0' encoding='utf-8'?><RelativeLayout xmlns:android='http://schemas.android.com/apk/res/android' xmlns:tools='http://schemas.android.com/tools' android:layout_width='match_parent' android:layout_height='match_parent' android: android:background='@color/white' android:clickable='true' android:orientation='vertical' android:gravity='center_horizontal' tools:context='.nextActivity'> <LinearLayoutandroid: android:layout_width='match_parent'android:layout_height='wrap_content'android:layout_below='@+id/lineOne'android:layout_marginTop='20dp'android:layout_marginLeft='18dp'android:layout_marginRight='18dp'><TextView android:layout_width='wrap_content' android:layout_height='wrap_content' android:text='姓 名 : ' android:textSize='18dp' android:textStyle='bold'/><EditText android: android:layout_width='match_parent' android:layout_height='wrap_content' android:hint='請輸入姓名' android:textSize='16dp' android:maxLines='1' android:singleLine='true' android:maxLength='14'/> </LinearLayout> <LinearLayoutandroid: android:layout_width='match_parent'android:layout_height='wrap_content'android:layout_below='@+id/lineTwo'android:layout_marginTop='10dp'android:layout_marginLeft='18dp'android:layout_marginRight='18dp'> <TextViewandroid:layout_width='wrap_content'android:layout_height='wrap_content'android:text='電 話 : 'android:textSize='18dp'android:textStyle='bold'/> <EditTextandroid: android:layout_width='match_parent'android:layout_height='wrap_content'android:hint='請輸入手機號碼'android:textSize='16dp'android:maxLines='1'android:singleLine='true'android:maxLength='11'/> </LinearLayout> <LinearLayoutandroid:layout_width='match_parent'android:layout_height='wrap_content'android: android:layout_below='@+id/lineTree'android:layout_marginTop='30dp'android:layout_marginLeft='18dp'android:layout_marginRight='18dp'android:orientation='horizontal'> <Buttonandroid: android:layout_width='wrap_content'android:layout_height='wrap_content'android:background='@drawable/shape'android:layout_weight='1'android:text=' 確 定 'android:textSize='16dp'android:textColor='#c2c8ec'android:textStyle='bold'/> </LinearLayout></RelativeLayout>xiugai.xml<?xml version='1.0' encoding='utf-8'?><RelativeLayout xmlns:android='http://schemas.android.com/apk/res/android' xmlns:tools='http://schemas.android.com/tools' android:layout_width='match_parent' android:layout_height='match_parent' android: android:background='@color/white' android:clickable='true' android:orientation='vertical' android:gravity='center_horizontal' tools:context='.xiugaiActivity'> <LinearLayoutandroid: android:layout_width='match_parent'android:layout_height='wrap_content'android:layout_below='@+id/lineOne'android:layout_marginTop='20dp'android:layout_marginLeft='18dp'android:layout_marginRight='18dp'><TextView android:layout_width='wrap_content' android:layout_height='wrap_content' android:text='姓 名 : ' android:textSize='18dp' android:textStyle='bold'/><EditText android: android:layout_width='match_parent' android:layout_height='wrap_content' android:hint=' 請輸入姓名' android:textSize='16dp' android:maxLines='1' android:singleLine='true' android:maxLength='14'/> </LinearLayout> <LinearLayoutandroid: android:layout_width='match_parent'android:layout_height='wrap_content'android:layout_below='@+id/lineTwo'android:layout_marginTop='10dp'android:layout_marginLeft='18dp'android:layout_marginRight='18dp'><TextView android:layout_width='wrap_content' android:layout_height='wrap_content' android:text='電 話 : ' android:textSize='18dp' android:textStyle='bold'/><EditText android: android:layout_width='match_parent' android:layout_height='wrap_content' android:hint=' 請輸入手機號碼' android:textSize='16dp' android:maxLines='1' android:singleLine='true' android:maxLength='11'/> </LinearLayout> <LinearLayoutandroid:layout_width='match_parent'android:layout_height='wrap_content'android: android:layout_below='@+id/lineTree'android:layout_marginTop='30dp'android:layout_marginLeft='18dp'android:layout_marginRight='18dp'android:orientation='horizontal'><Button android: android:layout_width='wrap_content' android:layout_height='wrap_content' android:background='@drawable/shape' android:layout_weight='1' android:layout_marginLeft='4dp' android:text='查看聯系人' android:textSize='16dp' android:textColor='#c2c8ec' android:textStyle='bold'/><Button android: android:layout_width='wrap_content' android:layout_height='wrap_content' android:background='@drawable/shape' android:layout_weight='1' android:layout_marginLeft='4dp' android:text=' 修 改 ' android:textSize='16dp' android:textColor='#c2c8ec' android:textStyle='bold'/><Button android: android:layout_width='wrap_content' android:layout_height='wrap_content' android:background='@drawable/shape' android:layout_weight='1' android:layout_marginLeft='4dp' android:text=' 刪 除 ' android:textSize='16dp' android:textColor='#c2c8ec' android:textStyle='bold'/> </LinearLayout> <TextViewandroid: android:layout_width='match_parent'android:layout_height='180dp'android:scrollbars='vertical'android:layout_below='@+id/lineFour'android:layout_marginTop='20dp'android:layout_marginLeft='20dp'android:layout_marginRight='18dp'android:textColor='#c2c8ec'android:textSize='24dp'/></RelativeLayout>

Mainfest

<?xml version='1.0' encoding='utf-8'?><manifest xmlns:android='http://schemas.android.com/apk/res/android' package='com.example.test'> <applicationandroid:allowBackup='true'android:icon='@mipmap/ic_launcher'android:label='@string/app_name'android:roundIcon='@mipmap/ic_launcher_round'android:supportsRtl='true'android:theme='@style/Theme.Test'><activity android:name='.MainActivity'> <intent-filter><action android:name='android.intent.action.MAIN' /> <category android:name='android.intent.category.LAUNCHER' /> </intent-filter></activity><activity android:name='.nextActivity'></activity><activity android:name='.xiugaiActivity'></activity> </application> </manifest>

初學android,程序還存在許多bug,大家多提修改建議。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Android
相關文章:
主站蜘蛛池模板: 日本黄色小说网站 | 在线观看免费国产视频 | 亚洲 欧美 日韩在线综合福利 | 欧美综合国产精品日韩一 | 国产大片视频免费观看 | 日韩在线国产 | 国产啪精品视频网给免丝袜 | 国产亚洲欧美精品久久久 | 色综合色综合色综合色综合 | 欧美一区二区三区免费高 | 国产麻豆91网在线看 | 午夜久久免影院欧洲 | 国产精品亚洲片在线观看不卡 | 国产精品 第二页 | 精品欧美一区二区三区 | 在线播放人成午夜免费视频 | 国产成人综合亚洲欧美在线n | 亚洲欧美成人中文日韩电影 | 快使劲弄我视频在线播放 | 俺来也久久 | 欧美jizz8性欧美18 | 欧美激情福利视频在线观看免费 | 日韩在线不卡一区在线观看 | 午夜成a人片在线观看 | 亚洲视频手机在线 | 久爱午夜精品免费视频 | 中文字幕在线视频网 | 第一福利在线 | 国产高清在线精品一区免费97 | 久久国产一区二区 | 19国产精品麻豆免费观看 | 偷拍清纯高清视频在线 | 久久99精品视频在线在线观看 | 久久久久女人精品毛片九一 | 在线精品免费观看综合 | 中文字幕无线码一区二区三区 | 亚洲午夜久久久 | 青草视频在线播放 | 日韩不卡高清视频 | 日韩一区二区三区免费体验 | 日本一区精品久久久久影院 |