package com.feelling.ui;
import java.util.ArrayList;
import com.woz.util.Config;
import com.woz.util.DataBaseHelper;
import android.app.AlertDialog;
import android.content.ContentValues;
import android.content.DialogInterface;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
/****
* @production 铁哥们通讯录
* @company android技术帮--【技术成就梦想】
* @department 群号:85506951
* @author 良仔(qq:953486326)
* {@docRoot 通讯录的启动初始化界面 }
* @version 1.0
* @since 2011\9\21
* @see 欢迎对android感兴趣的童鞋加入android技术帮,共同学习,共同进步!
* ****/
public class MainActivity extends ProDialogImp {
/** Called when the activity is first created. */
//---------- main ----------------
Button addButton,queryButton; // 按钮-添加,查询
//---------- add user ----------------
EditText username,phone;
String userStr,phoneStr;
//----------- list user -----------------------
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// main
addButton = (Button)findViewById(R.id.addUserBtn);
queryButton = (Button)findViewById(R.id.listUserBtn);
// 添加
addButton.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
// 这里直接跳到添加的ui中去
// setContentView(R.layout.add_user);
LayoutInflater inflater = getLayoutInflater();
View layout = inflater.inflate(R.layout.add_user, (ViewGroup)findViewById(R.id.dialog));
// 内容元素
username = (EditText)layout.findViewById(R.id.userNameET);
phone = (EditText)layout.findViewById(R.id.phoneNumberET);
new AlertDialog.Builder(MainActivity.this).setTitle("添加联系人").setView(layout)
.setPositiveButton("确定", new DialogInterface.OnClickListener() { //添加事件
public void onClick(DialogInterface dialog, int which) {
// 这里直接跳到添加的ui中去
System.out.println(" on insert table user ---> ");
DataBaseHelper dbHelper = new DataBaseHelper(MainActivity.this,Config.DB_NAME);
SQLiteDatabase sdb = dbHelper.getWritableDatabase();
// put value
userStr = username.getText().toString();
phoneStr = phone.getText().toString();
if(userStr!=null&&phoneStr!=null){
ContentValues cv = new ContentValues();
// cv.put("id", 1);
cv.put("title", userStr);
cv.put("content", phoneStr);
sdb.insert(Config.TABLE_NAME, null, cv);
showAlert("数据添加成功!");
}else{
showAlert("数据数据格式错误,请重新输入!");
}
}}).setNegativeButton("取消", null).show();
}
});
// 查询
queryButton.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
DataBaseHelper dbHelper = new DataBaseHelper(MainActivity.this,Config.DB_NAME);
SQLiteDatabase db = dbHelper.getReadableDatabase();
Cursor cs = db.query(Config.TABLE_NAME, new String[]{"_id","title","content"}, null, null, null, null, null);
ArrayList<String> alist = new ArrayList<String>();
while(cs.moveToNext()){
int id = cs.getInt(cs.getColumnIndex("_id"));
String name = cs.getString(cs.getColumnIndex("title"));
String con = cs.getString(cs.getColumnIndex("content"));
alist.add(id+"."+name+"["+con+"]");
System.out.println(" query [t_note]--> id = "+ id +" name = " + name +" con = " + con );
}
final String[] contacts = new String[alist.size()];
for(int a=0;a<alist.size();a++){
contacts[a] = alist.get(a);
}
new AlertDialog.Builder(MainActivity.this).setTitle("内容列表").setIcon(
android.R.drawable.ic_dialog_info).setItems(
contacts,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
//dialog.dismiss();
String artId = contacts[which].substring(0, 1);
alertDeleteOpt(artId);
// showAlert("msg --> " + artId);
}
})
.setNegativeButton("取消", null).show();
/* ListAdapter listapt = new SimpleCursorAdapter(MainActivity.this,
android.R.layout.simple_expandable_list_item_1,
cs,
new String[]{"title"},
new int[]{android.R.id.text1} );
ListView listUser = new ListView(MainActivity.this);
listUser.setAdapter(listapt);
setContentView(listUser); */
}
});
}
// 删除数据
public void deleteData(String id){
DataBaseHelper dbHelper = new DataBaseHelper(MainActivity.this,Config.DB_NAME);
SQLiteDatabase sdb = dbHelper.getWritableDatabase();
sdb.delete(Config.TABLE_NAME, " _id=?", new String[]{id}); //删除数据
}
/**
* 删除操作
*/
public void alertDeleteOpt(final String id){
new AlertDialog.Builder(this)
.setCancelable(false)
.setMessage("您确定要删除这条信息吗?")
.setPositiveButton("确定", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
deleteData(id);
}})
.setNegativeButton("取消", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}})
.show();
}
//退出程序
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK)// 返回按键
{
new AlertDialog.Builder(this)
.setCancelable(false)
.setIcon(android.R.drawable.btn_star)
.setTitle("退出")
.setMessage("您确认要退出程序吗?")
.setPositiveButton("确定", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
MainActivity.this.finish(); //关闭程序的核心方法
}})
.setNegativeButton("取消", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}})
.show();
}
return true;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
android入门demo--铁哥们通讯录
共43个文件
class:24个
java:5个
xml:4个
3星 · 超过75%的资源 需积分: 9 32 下载量 61 浏览量
2011-09-21
15:25:20
上传
评论
收藏 78KB ZIP 举报
温馨提示
哥最近做了一个小项目《铁哥们通讯录》,作为练手项目给大家分享一下:功能也很简单,一个主界面,然后在主界面弹出一个添加界面,一个信息列表。 实现了本地存储和常用的对话框显示。
资源推荐
资源详情
资源评论
收起资源包目录
Hombre_AddressBook.zip (43个子文件)
Hombre_AddressBook
AndroidManifest.xml 699B
res
layout
add_user.xml 811B
main.xml 962B
drawable-ldpi
icon.png 2KB
drawable-mdpi
icon.png 3KB
drawable-hdpi
icon.png 4KB
values
strings.xml 556B
proguard.cfg 1KB
src
com
feelling
ui
MainActivity.java 7KB
ProDialogImp.java 3KB
woz
util
Config.java 554B
DataBaseHelper.java 2KB
bin
com
feelling
ui
MainActivity$2$1.class 1KB
MainActivity$1.class 2KB
ProDialogImp$5.class 1KB
MainActivity$1$1.class 2KB
MainActivity$6.class 873B
ProDialogImp.class 2KB
R.class 510B
ProDialogImp$3.class 1KB
MainActivity$5.class 874B
ProDialogImp$4.class 831B
MainActivity.class 3KB
MainActivity$4.class 872B
R$layout.class 417B
R$attr.class 331B
ProDialogImp$5$1.class 855B
ProDialogImp$2.class 2KB
R$id.class 515B
R$string.class 650B
ProDialogImp$1.class 2KB
MainActivity$3.class 952B
R$drawable.class 391B
MainActivity$2.class 4KB
woz
util
Config.class 427B
DataBaseHelper.class 2KB
Hombre_AddressBook.apk 20KB
classes.dex 13KB
resources.ap_ 12KB
.classpath 280B
assets
default.properties 362B
.project 854B
gen
com
feelling
ui
R.java 1KB
共 43 条
- 1
资源评论
- 二氧化碳被占用2012-02-23我还以为是contentprovider呢,是数据库实现的,呵呵,还是谢谢了
- wshr41892012-04-06这个里面的内容也太少了把,没什么功能吗
- ghost01292013-09-26确实功能不多,没什么用处
helloworldjavaee
- 粉丝: 23
- 资源: 18
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功