来源:互联网 发布:单片机输出电压不恒定 编辑:程序博客网 时间:2024/06/10 03:12
AndroidManifest.xml
 
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"    package="com.example.shareingcontact"    android:versionCode="1"    android:versionName="1.0" >    <uses-sdk        android:minSdkVersion="8"        android:targetSdkVersion="17" />    <application        android:allowBackup="true"        android:icon="@drawable/ic_launcher"        android:label="@string/app_name"        android:theme="@style/AppTheme" >        <activity            android:name="com.example.shareingcontact.MainActivity"            android:label="@string/app_name" >            <intent-filter>                <action android:name="android.intent.action.MAIN" />                <category android:name="android.intent.category.LAUNCHER" />            </intent-filter>        </activity>        <activity             android:name="com.example.shareingcontact.AddActivity"></activity>        <activity             android:name="com.example.shareingcontact.UpdateActivity"></activity>        <activity             android:name="com.example.shareingcontact.Modify"></activity>       <activity android:name=".AddNew"/>            </application></manifest>


MainActivity.java 

package com.example.shareingcontact;import java.util.ArrayList;import java.util.HashMap;import com.example.shareingcontact.UpdateActivity.contact;import com.example.shareingcontact.db.ContactInfo;import com.example.shareingcontact.db.Contacts;import com.example.shareingcontact.db.DatabaseOperation;import android.opengl.Visibility;import android.os.Bundle;import android.app.Activity;import android.content.Intent;import android.graphics.drawable.Drawable;import android.text.style.UpdateLayout;import android.util.Log;import android.view.Gravity;import android.view.KeyEvent;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.view.View.OnKeyListener;import android.widget.AdapterView;import android.widget.AdapterView.OnItemClickListener;import android.widget.Button;import android.widget.EditText;import android.widget.GridView;import android.widget.LinearLayout;import android.widget.ListAdapter;import android.widget.ListView;import android.widget.SimpleAdapter;public class MainActivity extends Activity {private static final String TAG = "MainActivity";GridView gv_menu;ListView lv;ArrayList list;Contacts userlist;SimpleAdapter adapter;SimpleAdapter searchadapter;EditText et_search;int ifsearch=0;    LinearLayoutsearchLinearout;    Button localserach;        @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);        userlist = new Contacts(MainActivity.this);        loadMenu();                lv =(ListView) findViewById(R.id.lv_userlist);        loadUserList();                //单击LISTVIEW打开修改界面        lv.setOnItemClickListener(new OnItemClickListener() {@Overridepublic void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3) {HashMap item = (HashMap)arg0.getItemAtPosition(arg2);//int id = Integer.parseInt(String.valueOf(item.get("id")));Intent intent = new Intent(MainActivity.this,Modify.class);//ContactInfo user = new ContactInfo();//user.ContactID = (Integer) item.get("id");/*user.ContactID = Integer.parseInt(String.valueOf(item.get("id")));user.Name = String.valueOf(item.get("name"));user.SubName = String.valueOf(item.get("nickname"));user.MobileTel = String.valueOf(item.get("phone"));user.FixedTel = String.valueOf(item.get("telephone"));user.Company = String.valueOf(item.get("company"));user.Address = String.valueOf(item.get("address"));user.ImageId = Integer.parseInt(String.valueOf(item.get("imageid")));*/intent.putExtra("user", item);if(searchLinearout != null && searchLinearout.getVisibility()==View.VISIBLE) {searchLinearout.setVisibility(View.GONE);}/*将arg2作为请求码传过去  用于标识修改项的位置*/startActivityForResult(intent, arg2);}});                            //添加功能       localserach = (Button) findViewById(R.id.btn_localsearch);       localserach.setOnClickListener(new OnClickListener(){@Overridepublic void onClick(View arg0) {et_search = (EditText) findViewById(R.id.et_search);String condition = et_search.getText().toString();if(condition.equals("")) {lv.setAdapter(adapter);}    //userlist = new Contacts(MainActivity.this);            ContactInfo[] searchuser  = userlist.queryContacts(condition);            if(searchuser!=null){    //将ContactInfo[]转换成 list格式;    int length = searchuser.length;    int k=0;        while(k<length) {HashMap item = new HashMap();item.put("name", searchuser[k].Name);item.put("nickname", searchuser[k].SubName);item.put("phone", searchuser[k].MobileTel);item.put("telephone", searchuser[k].FixedTel);item.put("company", searchuser[k].Company);item.put("address", searchuser[k].Address);item.put("imageid", searchuser[k].ImageId);item.put("id", searchuser[k].ContactID);if(list==null){list = new ArrayList<HashMap>();}list.add(item);k++;}searchadapter = new SimpleAdapter(        MainActivity.this,         list,         R.layout.listitem,         new String[]{"imageid","name","phone"},         new int[]{R.id.user_image,R.id.tv_name,R.id.tv_mobilephone});list.isEmpty();lv.setAdapter(searchadapter);  //将整合好的adapter交给listview,显示给用户看setTitle( "共查到 " + searchuser.length+" 条记录");    }else{    setTitle("没有查到任何数据");    }        }});    }            private void loadUserList(){    Log.d(TAG,"loadUserList");    //userlist = new Contacts(MainActivity.this);    ArrayList list = new ArrayList<HashMap>();        ContactInfo[] userinfo  = userlist.readContacts();            if(userinfo != null ){//首次启动时,需要判断数据库是否为空        for(ContactInfo info : userinfo){    Log.d(TAG, info.toString());    }        //将ContactInfo[]转换成 list格式;    int length = userinfo.length;    int k=1;               while(k<length) {HashMap item = new HashMap();item.put("name", userinfo[k].Name);item.put("nickname", userinfo[k].SubName);item.put("phone", userinfo[k].MobileTel);item.put("telephone", userinfo[k].FixedTel);item.put("company", userinfo[k].Company);item.put("address", userinfo[k].Address);item.put("imageid", userinfo[k].ImageId);list.add(item);k++;}        if(length == 0){    setTitle("没有查到任何数据");    }else{         adapter = new SimpleAdapter(this, list, R.layout.listitem, new String[]{"imageid","name","phone"}, new int[]{R.id.user_image,R.id.tv_name,R.id.tv_mobilephone});      lv.setAdapter(adapter);    }    }    }        public boolean onKeyDown(int keyCode, KeyEvent event){    Log.d(TAG,"onKeyDown, keyCode = " + keyCode);if(keyCode == KeyEvent.KEYCODE_MENU){if(gv_menu == null){loadMenu();}if(gv_menu.getVisibility() == View.GONE){gv_menu.setVisibility(View.VISIBLE);}else{gv_menu.setVisibility(View.GONE);}}    return super.onKeyDown(keyCode, event);    }        private void loadMenu(){    gv_menu= (GridView) this.findViewById(R.id.gd_menu);    gv_menu.setBackgroundResource(R.drawable.channelgallery_bg);    gv_menu.setNumColumns(4);    gv_menu.setGravity(Gravity.CENTER);    gv_menu.setVerticalSpacing(10);    gv_menu.setHorizontalSpacing(10);            ArrayList data = new ArrayList();    HashMap map = new HashMap();    map.put("itemImage", R.drawable.menu_new_user);    map.put("itemText", "增加");    data.add(map);        map = new HashMap();    map.put("itemImage", R.drawable.menu_search);    map.put("itemText", "查找");    data.add(map);        map = new HashMap();    map.put("itemImage", R.drawable.menu_update);    map.put("itemText", "同步");    data.add(map);        map = new HashMap();    map.put("itemImage", R.drawable.menu_quit);    map.put("itemText", "退出");    data.add(map);    SimpleAdapter adapter = new SimpleAdapter(this, data, R.layout.item_menu,     new String[]{"itemImage","itemText"}, new int[]{R.id.item_image,R.id.item_text});    gv_menu.setAdapter(adapter);        gv_menu.setOnItemClickListener(new OnItemClickListener() {@Overridepublic void onItemClick(AdapterView<?> parent, View view, int position,long id) {//HashMap map = (HashMap) parent.getItemAtPosition(1);switch(position) {case 0:{Intent intent = new Intent(MainActivity.this, AddActivity.class);startActivity(intent);break;}case 1:{//设置搜索框是否可见;if (searchLinearout == null){searchLinearout = (LinearLayout) findViewById(R.id.ll_search);}if( ifsearch == 0){searchLinearout.setVisibility(view.VISIBLE);ifsearch = 1;}else{searchLinearout.setVisibility(view.GONE);ifsearch = 0;}//loadsearch();break;}                case 2:{                Intent intent = new Intent(MainActivity.this,UpdateActivity.class);startActivity(intent);                break;}                                case 3:{break;}}}});    }    private void loadsearch() {if(searchLinearout == null) {searchLinearout = (LinearLayout) findViewById(R.id.ll_search);et_search = (EditText)findViewById(R.id.et_search);et_search.setOnKeyListener(new OnKeyListener(){@Overridepublic boolean onKey(View arg0, int arg1, KeyEvent arg2) {String condition = et_search.getText().toString();if(condition.equals("")) {lv.setAdapter(adapter);}    userlist = new Contacts(MainActivity.this);        ContactInfo[] searchuser  = userlist.queryContacts(condition);            if(searchuser != null){//将ContactInfo[]转换成 list格式;    int length = searchuser.length;    int k=1;        Log.d(TAG,"length = " + searchuser.length);        Log.d(TAG,"length = " + searchuser[0].Name);            while(k<length) {HashMap item = new HashMap();item.put("name", searchuser[k].Name);item.put("nickname", searchuser[k].SubName);item.put("phone", searchuser[k].MobileTel);item.put("telephone", searchuser[k].FixedTel);item.put("company", searchuser[k].Company);item.put("address", searchuser[k].Address);item.put("imageid", searchuser[k].ImageId);if(list==null){list = new ArrayList<HashMap>();}list.add(item);k++;}searchadapter = new SimpleAdapter(        MainActivity.this,         list,         R.layout.listitem,         new String[]{"imageid","name","phone"},         new int[]{R.id.user_image,R.id.tv_name,R.id.tv_mobilephone});lv.setAdapter(searchadapter);  //将整合好的adapter交给listview,显示给用户看    }        /*if(list.size() == 0) {Drawable nodata_bg = getResources().getDrawable(R.drawable.nodata_bg);mainLinearLayout.setBackgroundDrawable(nodata_bg);setTitle("没有查到任何数据");} else {setTitle( "共查到 " + list.size()+" 条记录");mainLinearLayout.setBackgroundDrawable(null);}*/return false;}});       }  }    @Override    public boolean onCreateOptionsMenu(Menu menu) {        // Inflate the menu; this adds items to the action bar if it is present.        getMenuInflater().inflate(R.menu.main, menu);        return true;    }    }

0 0