- EntryActivity.java
- activity_entry.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | package com.example.speeddialing; import android.app.Activity; import android.content.ContentValues; import android.content.Intent; import android.database.sqlite.SQLiteDatabase; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class EntryActivity extends Activity implements OnClickListener { private MyOpenHelper helper = new MyOpenHelper( this ); private SQLiteDatabase db; @Override protected void onCreate(Bundle savedInstanceState) { super .onCreate(savedInstanceState); setContentView(R.layout.activity_entry); Button button = (Button) findViewById(R.id.button1); button.setOnClickListener( this ); } @Override public void onClick(View v) { db = helper.getWritableDatabase(); EditText editName = (EditText) findViewById(R.id.editName); EditText editNumber = (EditText) findViewById(R.id.editNumber); String name = editName.getText().toString(); String number = editNumber.getText().toString(); if (editName.equals( "" )) { Toast.makeText( this , "名前を入力してください。" , Toast.LENGTH_SHORT).show(); } else if (editNumber.equals( "" )) { Toast.makeText( this , "番号を入力してください。" , Toast.LENGTH_SHORT).show(); } else { ContentValues values = new ContentValues(); values.put(Table.NAME, name); values.put(Table.NUMBER, number); db.insert(Table.TABLE_NAME, Table.NAME, values); editName.getEditableText().clear(); editNumber.getEditableText().clear(); Toast.makeText( this , "登録しました。" , Toast.LENGTH_SHORT).show(); Intent intent = new Intent(EntryActivity. this , MainActivity. class ); startActivity(intent); } } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | <? xml version = "1.0" encoding = "utf-8" ?> android:layout_width = "match_parent" android:layout_height = "match_parent" android:orientation = "vertical" > < TextView android:layout_width = "match_parent" android:layout_height = "wrap_content" android:text = "名前" /> < EditText android:id = "@+id/editName" android:layout_width = "match_parent" android:layout_height = "wrap_content" android:ems = "10" android:inputType = "textPersonName" > < requestFocus /> </ EditText > < TextView android:layout_width = "match_parent" android:layout_height = "wrap_content" android:text = "電話番号" /> < EditText android:id = "@+id/editNumber" android:layout_width = "match_parent" android:layout_height = "wrap_content" /> < Button android:id = "@+id/button1" android:layout_width = "match_parent" android:layout_height = "wrap_content" android:text = "登録" /> </ LinearLayout > |
- RevisionActivity.java
- activity_revision.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 | package com.example.speeddialing; import android.app.Activity; import android.content.ContentValues; import android.content.Intent; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.net.Uri; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class RevisionActivity extends Activity implements OnClickListener { private MyOpenHelper helper = new MyOpenHelper( this ); private SQLiteDatabase db; private Cursor c; private EditText editName2; private EditText editNumber2; private Long id; @Override protected void onCreate(Bundle savedInstanceState) { super .onCreate(savedInstanceState); setContentView(R.layout.activity_revision); db = helper.getReadableDatabase(); Intent intent = getIntent(); id = intent.getLongExtra( "id" , 1 ); c = db.query(Table.TABLE_NAME, new String[] { Table.NAME, Table.NUMBER }, "_id = ?" , new String[] { String.valueOf(id) }, null , null , null ); c.moveToFirst(); editName2 = (EditText) findViewById(R.id.editName2); editNumber2 = (EditText) findViewById(R.id.editNumber2); editName2.setText(c.getString(c.getColumnIndex(Table.NAME))); editNumber2.setText(c.getString(c.getColumnIndex(Table.NUMBER))); Button button2 = (Button) findViewById(R.id.button2); Button button3 = (Button) findViewById(R.id.button3); Button button4 = (Button) findViewById(R.id.button4); button2.setOnClickListener( this ); button3.setOnClickListener( this ); button4.setOnClickListener( this ); } @Override public void onClick(View v) { db = helper.getWritableDatabase(); switch (v.getId()) { case R.id.button2: ContentValues values = new ContentValues(); values.put(Table.NAME, editName2.getText().toString()); values.put(Table.NUMBER, editNumber2.getText().toString()); db.update(Table.TABLE_NAME, values, "_id = ?" , new String[] { String.valueOf(id) }); Toast.makeText( this , "上書きしました。" , Toast.LENGTH_SHORT).show(); editName2.getEditableText().clear(); editNumber2.getEditableText().clear(); Intent intent = new Intent(RevisionActivity. this , MainActivity. class ); startActivity(intent); break ; case R.id.button3: db.delete(Table.TABLE_NAME, "_id = ?" , new String[] { String.valueOf(id) }); Toast.makeText(RevisionActivity. this , "削除しました。" , Toast.LENGTH_SHORT) .show(); Intent intent2 = new Intent(RevisionActivity. this , MainActivity. class ); startActivity(intent2); break ; case R.id.button4: Uri uri = Uri.parse( "tel:" + c.getString(c.getColumnIndex(Table.NUMBER))); Intent intent3 = new Intent(Intent.ACTION_CALL, uri); startActivity(intent3); break ; default : break ; } } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 | <? xml version = "1.0" encoding = "utf-8" ?> android:layout_width = "match_parent" android:layout_height = "match_parent" android:orientation = "vertical" > < LinearLayout android:layout_width = "match_parent" android:layout_height = "wrap_content" android:orientation = "vertical" > < TextView android:layout_width = "match_parent" android:layout_height = "wrap_content" android:text = "名前" /> < EditText android:id = "@+id/editName2" android:layout_width = "match_parent" android:layout_height = "wrap_content" android:ems = "10" android:inputType = "textPersonName" > < requestFocus /> </ EditText > < TextView android:layout_width = "match_parent" android:layout_height = "wrap_content" android:text = "電話番号" /> < EditText android:id = "@+id/editNumber2" android:layout_width = "match_parent" android:layout_height = "wrap_content" /> </ LinearLayout > < LinearLayout android:layout_width = "match_parent" android:layout_height = "wrap_content" android:orientation = "horizontal" > < Button android:id = "@+id/button2" android:layout_width = "match_parent" android:layout_height = "wrap_content" android:layout_weight = "1" android:text = "修正" /> < Button android:id = "@+id/button3" android:layout_width = "match_parent" android:layout_height = "wrap_content" android:layout_weight = "1" android:text = "削除" /> </ LinearLayout > < LinearLayout android:layout_width = "match_parent" android:layout_height = "wrap_content" android:orientation = "vertical" > < Button android:id = "@+id/button4" android:layout_width = "match_parent" android:layout_height = "wrap_content" android:text = "電話" /> </ LinearLayout > </ LinearLayout > |
- SplashActivity.java
- activity_splash
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | package com.example.speeddialing; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.os.Handler; import android.view.Window; public class SplashActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super .onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_splash); Handler handler = new Handler(); handler.postDelayed( new Runnable() { @Override public void run() { Intent intent = new Intent(SplashActivity. this , MainActivity. class ); startActivity(intent); } }, 5000 ); } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 | <? xml version = "1.0" encoding = "utf-8" ?> android:layout_width = "match_parent" android:layout_height = "match_parent" android:orientation = "vertical" > < ImageView android:id = "@+id/imageView1" android:layout_width = "match_parent" android:layout_height = "match_parent" android:src = "@drawable/splash" /> </ LinearLayout > |
- MyOpenHelper.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | package com.example.speeddialing; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; public class MyOpenHelper extends SQLiteOpenHelper { public MyOpenHelper(Context context) { super (context, Table.DB, null , 1 ); } @Override public void onCreate(SQLiteDatabase db) { db.execSQL( "create table " + Table.TABLE_NAME + "(" + Table.ID + " integer primary key, " + Table.NAME + " text not null, " + Table.NUMBER + " text not null );" ); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { } } |
1 2 3 4 5 6 7 8 9 10 11 12 | package com.example.speeddialing; public class Table { public static final String DB = "DB" ; public static final String TABLE_NAME = "person" ; public static final String ID = "_id" ; public static final String NAME = "name" ; public static final String NUMBER = "number" ; } |