手机通讯录

原创 2012年03月22日 10:55:52

手机主界面的UI 01





AddNewActivity

public class AddNewActivity extends Activity {
	ImageButton btn_img;
	AlertDialog imageChooseDialog;
	Gallery gallery; 
	ImageSwitcher is;
	int imagePosition;  
	
	//以下在  自定义方法 inint() 中初始化
	EditText et_name;
	EditText et_mobilePhone;
	EditText et_familyPhone;
	EditText et_officePhone;
	EditText et_position;
	EditText et_company;
	EditText et_address;
	EditText et_zipCode;
	EditText et_email;
	EditText et_otherContact;
	EditText et_remark;
	
	Button btn_save;
	Button btn_return;

	private int[] images = {R.drawable.icon,R.drawable.image1,R.drawable.image2,R.drawable.image3,R.drawable.image4,
							R.drawable.image5,R.drawable.image6,R.drawable.image7,R.drawable.image8,
							R.drawable.image9,R.drawable.image10,R.drawable.image11,R.drawable.image12,
							R.drawable.image13,R.drawable.image14,R.drawable.image15,R.drawable.image16,
							R.drawable.image17,R.drawable.image18,R.drawable.image19,R.drawable.image20,
							R.drawable.image21,R.drawable.image22,R.drawable.image23,R.drawable.image24,};
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.addnew);
        
        initWidget();
        
        btn_save.setOnClickListener(new OnClickListener() {
        	
        	public void onClick(View v) {
        		String name = et_name.getText().toString();
        		if(name.equals("")) {
        			Toast.makeText(AddNewActivity.this, "姓名不能为空",Toast.LENGTH_LONG).show();
        			return;
        		}
        		String mobilePhone = et_mobilePhone.getText().toString();
				String officePhone = et_officePhone.getText().toString();
				String familyPhone = et_familyPhone.getText().toString();
				String position = et_position.getText().toString();
				String company = et_company.getText().toString();
				String address = et_address.getText().toString();
				String email = et_email.getText().toString();
				String zipCode = et_zipCode.getText().toString();
				String otherContact = et_otherContact.getText().toString();
				String remark = et_remark.getText().toString();
				int imageId = images[imagePosition];
				
				User user = new User();
				user.address = address;
				user.company = company;
				user.email = email;
				user.familyPhone = familyPhone;
				user.imageId = imageId;
				user.mobilePhone = mobilePhone;
				user.officePhone = officePhone;
				user.name = name;
				user.otherContact = otherContact;
				user.position = position;
				user.remark = remark;
				user.zipCode = zipCode;
        			
        			
        			//save user to  database 保存到数据库里面去 
        			long success = DBHelper.getInstance(AddNewActivity.this).save(user);
        			if(success != -1){
        				Toast.makeText(AddNewActivity.this,"添加成功",Toast.LENGTH_LONG).show();        				
        				//1代表 增加用户成功,返回到主页面
        				setResult(1);
        				finish();
        			}else{
        				Toast.makeText(AddNewActivity.this, "添加失败,请重新添加", Toast.LENGTH_LONG).show();
        				//2代表 代表增加用户失败,返回主页面
        				setResult(2);
        				finish();
        			}
        }});
        
        btn_img = (ImageButton)this.findViewById(R.id.btn_img);
        btn_img.setOnClickListener(new OnClickListener(){
        	
        	public void onClick(View v){
        		initImageChooseDialog();
        		imageChooseDialog.show();        		
        	} });
        btn_return.setOnClickListener(new OnClickListener(){

			@Override
			public void onClick(View v) {
				setResult(2);  
				finish();				
			}});
    }
    
    public void initWidget(){
    	et_name = (EditText) this.findViewById(R.id.et_name);
		et_mobilePhone = (EditText) this.findViewById(R.id.et_mobilephone);
		et_familyPhone = (EditText) this.findViewById(R.id.et_familyphone);
		et_officePhone = (EditText) this.findViewById(R.id.et_officephone);
		et_position = (EditText) this.findViewById(R.id.et_position);
		et_company = (EditText) this.findViewById(R.id.et_company);
		et_address = (EditText) this.findViewById(R.id.et_address);
		et_zipCode = (EditText) this.findViewById(R.id.et_zipcode);
		et_email = (EditText) this.findViewById(R.id.et_email);
		et_otherContact = (EditText) this.findViewById(R.id.et_other);
		et_remark = (EditText) this.findViewById(R.id.et_remark);
		
		btn_save = (Button) this.findViewById(R.id.btn_save);
		btn_return = (Button) this.findViewById(R.id.btn_return);   
    }
  
	private void initImageChooseDialog() {
		 AlertDialog.Builder builder = new AlertDialog.Builder(this);
		 builder.setTitle("请选择图像");
		 builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
			
			@Override
			public void onClick(DialogInterface dialog, int which) {
				btn_img.setImageResource(images[imagePosition%images.length]);
				
			}
		});
		 builder.setNegativeButton("取消", new DialogInterface.OnClickListener(){
			 public void onClick(DialogInterface dialog, int which){
				 
			 }
		 });
		 
		 LayoutInflater inflater = LayoutInflater.from(this);
		 View view = inflater.inflate(R.layout.imageswitch, null);
		 gallery = (Gallery)view.findViewById(R.id.img_gallery);
		 gallery.setAdapter(new ImageAdapter(this));
		 gallery.setSelection(images.length/2);
		 
		 is = (ImageSwitcher)view.findViewById(R.id.image_switcher);
		 //选择事件成功选择
		 gallery.setOnItemSelectedListener(new OnItemSelectedListener(){
				
			 public void onItemSelected(AdapterView<?> parent, View view,
					 int position, long id){
				 imagePosition = position;
				 is.setImageResource(images[position%images.length]);	 
			 }

			@Override
			public void onNothingSelected(AdapterView<?> parent) {
				// TODO Auto-generated method stub				
			}
		 });
		 
		 is.setFactory(new MyViewFactory(this));
		 builder.setView(view);
		 imageChooseDialog = builder.create();
	}
	
	//ImageAdapter图像适配器 ---内部类
	class ImageAdapter extends BaseAdapter{
		private Context context;
		
		public ImageAdapter(Context context){
			this.context = context;
		}
		
		public int getCount(){
			return Integer.MAX_VALUE;
		}
		
		public Object getItem(int position){
			return null;
		}
		
		public  long getItemId(int position){
			return 0;
		}
				
		public View getView(int position, View convertView, ViewGroup parent){
			ImageView iv = new ImageView(context);
			iv.setImageResource(images[position%images.length]);
			iv.setAdjustViewBounds(true);
			iv.setLayoutParams(new Gallery.LayoutParams(80,80));   //选择头像图标  大小
			iv.setPadding(15,10,15,10);		//图片框之间的间距
			return iv;
		}
		
	}
	
	class MyViewFactory implements ViewFactory{
		
		private  Context context;
		
		public MyViewFactory(Context context){
			this.context = context;
		}
		
		public View makeView(){
			ImageView iv = new ImageView(context);
			iv.setLayoutParams(new ImageSwitcher.LayoutParams(90,90));  //选定框中 选定头像
			return iv;
		}
	}
}
























16_1
















Android手机通讯录

1、概述 最近由于项目需求,需要做一个查看手机通讯录,并且取出相应的数据。类似于下图: 用到的一个主要的知识点:SectionIndexer——能够有效地帮助我们对分组进行控制,由于Secti...
  • a296777513
  • a296777513
  • 2015年04月06日 15:10
  • 1792

js手机通讯录

ionic页面··············································································            ...
  • l775632765
  • l775632765
  • 2017年02月16日 10:23
  • 2620

内容提供器的实践——仿手机通讯录功能

转载请注明出处:http://blog.csdn.net/chengbao315/article/details/51062118
  • chengbao315
  • chengbao315
  • 2016年04月05日 08:19
  • 618

iOS之获取手机通讯录

#import "ViewController.h" #import //导入的头文件,iOS9之前是 //#import @interface ViewController (...
  • u011146511
  • u011146511
  • 2017年03月31日 14:45
  • 277

获取手机通讯录信息方法总结

1.最简洁的方法 使用类 android.provider.ContactsContract.CommonDataKinds.Phone;  代码如下: Cursor c = getC...
  • lengyueqiufeng
  • lengyueqiufeng
  • 2014年11月04日 13:42
  • 1650

手机通讯录

搜索功能主要依靠 uisearchbar uisearchdisplaycontroller来实现 第一步  初始化:初始化searbar 和seardisplaycontroller 以及 对...
  • u013134100
  • u013134100
  • 2014年10月21日 10:33
  • 209

纯java手机通讯录

要求 1.查看全部通讯录的信息 2.实现新增人员功能 3.修改用户信息功能 4.删除数据功能 5.查找人员功能实现 IOperatorMobile....
  • qq_34459539
  • qq_34459539
  • 2017年07月22日 13:56
  • 232

webView与js交互——获取通讯录手机号并显示运营商

在android开发中获取手机号是很轻松的。而现在许多应用的开发是
  • btt2013
  • btt2013
  • 2016年07月19日 14:35
  • 1462

获取手机通讯录-----1.1(取出通讯录数据)

获取手机通讯录在开发中经常会用到,这边记下以后日后查看。        1、获取手机通讯录是要取得系统权限的将下面权限添加到AndroidManifest文件中(我经常在权限问题上吃亏,经常代码写好了...
  • a873228446
  • a873228446
  • 2014年11月26日 15:48
  • 2103

js通讯录效果,你见过麽

最近有一个需求,要写一个通讯录效果的联系人列表效果,相信这个大家都不陌生,当然当我写到一半的时候,同事告诉我这个是android和IOS的需求,,,十分郁闷,但是本人求知欲甚是强烈,就用jq实现了这个...
  • eternal_shallow
  • eternal_shallow
  • 2017年03月22日 15:57
  • 2526
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:手机通讯录
举报原因:
原因补充:

(最多只允许输入30个字)