addActivity

package com.example.sharingcontact;import com.example.sharingcontact.db.ContactInfo;import com.example.sharingcontact.db.Contacts;import android.app.Activity;import android.app.AlertDialog;import android.app.Dialog;import android.content.Context;import android.content.DialogInterface;import android.content.Intent;import android.os.Bundle;import android.util.Log;import android.view.KeyEvent;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.view.View.OnClickListener;import android.view.Window;import android.view.WindowManager;import android.view.animation.AnimationUtils;import android.view.inputmethod.InputMethodManager;import android.widget.AdapterView;import android.widget.BaseAdapter;import android.widget.Button;import android.widget.EditText;import android.widget.Gallery;import android.widget.ImageButton;import android.widget.ImageSwitcher;import android.widget.ImageView;import android.widget.TextView;import android.widget.Toast;import android.widget.AdapterView.OnItemSelectedListener;import android.widget.ImageView.ScaleType;import android.widget.ViewSwitcher.ViewFactory;public class AddActivity extends Activity implements ViewFactory {EditText et_name;EditText et_telePhone;EditText et_Phone;EditText et_nickname;EditText et_company;EditText et_address;Button btn_save;Button btn_return;TextView tv_title;int privacy;//用于判断添加的用户是不是保密的ImageButton imageButton;//头像按钮View imageChooseView;//图像选择的视图AlertDialog imageChooseDialog;//头像选择对话框Gallery gallery;//头像的GalleryImageSwitcher is;//头像的ImageSwitcherint currentImagePosition;//用于记录当前选中图像在图像数组中的位置int previousImagePosition;//用于记录上一次图片的位置boolean imageChanged;//判断头像有没有变化/** * 所有的图像图片 */private int[] images = new int[]{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,R.drawable.image25,R.drawable.image26,R.drawable.image27,R.drawable.image28,R.drawable.image29,R.drawable.image30};@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);//在标题上添加按钮requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); setContentView(R.layout.add);getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.titleitem); et_name = (EditText)findViewById(R.id.name);et_nickname = (EditText) findViewById(R.id.nickname);et_Phone = (EditText)findViewById(R.id.phone);et_telePhone = (EditText)findViewById(R.id.telephone);et_company = (EditText)findViewById(R.id.company);et_address = (EditText)findViewById(R.id.address);btn_save = (Button) findViewById(R.id.btn_titlesave);btn_return = (Button)findViewById(R.id.btn_titlecancle);tv_title = (TextView) findViewById(R.id.tv_title);imageButton = (ImageButton)findViewById(R.id.image_button); /** * 响应点击事件 */btn_save.setText("保存");tv_title.setText("添加联系人");btn_save.setOnClickListener(new OnClickListener(){@Overridepublic void onClick(View v) {savecontact();}});btn_return.setOnClickListener(new OnClickListener(){@Overridepublic void onClick(View v) {finish();}});imageButton.setOnClickListener(new OnClickListener(){@Overridepublic void onClick(View v) {loadImage();//为gallery装载图片initImageChooseDialog();//初始化imageChooseDialogimageChooseDialog.show();}});} public boolean onKeyDown(int keyCode, KeyEvent event){if (keyCode == KeyEvent.KEYCODE_BACK) { Dialog dialog = new AlertDialog.Builder(AddActivity.this) // 实例化对象//.setIcon(R.drawable.pic_m) // 设置显示图片.setMessage("是否保存联系人?") // 设置显示内容.setPositiveButton("确定", // 增加一个确定按钮new DialogInterface.OnClickListener() { // 设置操作监听public void onClick(DialogInterface dialog,int whichButton) { // 单击事件savecontact();setResult(3);finish();// AddActivity.this.finish() ; // 程序结束}}).setNegativeButton("取消", // 增加取消按钮new DialogInterface.OnClickListener() { // 设置操作监听public void onClick(DialogInterface dialog,int whichButton) { // 单击事件finish();}}).create(); // 创建Dialogdialog.show(); // 显示对话框//setResult(3);//finish();// Intent intent = new Intent(AddActivity.this,MainActivity.class);// startActivity(intent);} return super.onKeyDown(keyCode, event); } public void savecontact(){String name = et_name.getText().toString();//判断姓名是否为空if(name.trim().equals("")) {Toast.makeText(AddActivity.this, "姓名不许为空", Toast.LENGTH_LONG).show();return;}//从表单上获取数据 String phone = et_Phone.getText().toString();String nickname = et_nickname.getText().toString();String telephone = et_telePhone.getText().toString();String company = et_company.getText().toString();String address = et_address.getText().toString();int imageid;//判断头像是否改变,若改变,则用当前的位置,若没有改变,则用前一回的位置if(imageChanged) {imageid = images[currentImagePosition%images.length];} else {imageid = images[previousImagePosition%images.length];} // 新建一个联系人数据库操作对象 Contacts c = new Contacts(AddActivity.this); // 创建一个联系人信息 ContactInfo infoInsert = new ContactInfo(name, nickname, phone, telephone, company, address,imageid); // 保存一个联系人信息 c.insertContacts(infoInsert); Toast toast=Toast.makeText(getApplicationContext(), "联系人添加成功", Toast.LENGTH_SHORT); toast.show(); //Intent intent = new Intent(AddActivity.this,MainActivity.class);//startActivity(intent);finish(); } public void loadImage() {if(imageChooseView == null) {LayoutInflater li = LayoutInflater.from(AddActivity.this);imageChooseView = li.inflate(R.layout.imageswitch, null);//通过渲染xml文件,得到一个视图(View),再拿到这个View里面的Gallerygallery = (Gallery)imageChooseView.findViewById(R.id.img_gallery);//为Gallery装载图片gallery.setAdapter(new ImageAdapter(this));gallery.setSelection(images.length/2);is = (ImageSwitcher)imageChooseView.findViewById(R.id.image_switcher);is.setFactory(this);is.setInAnimation(AnimationUtils.loadAnimation(this, android.R.anim.fade_in)); //卸载图片的动画效果 is.setOutAnimation(AnimationUtils.loadAnimation(this, android.R.anim.fade_out));gallery.setOnItemSelectedListener(new OnItemSelectedListener(){@Overridepublic void onItemSelected(AdapterView<?> arg0, View arg1,int arg2, long arg3) {//当前的头像位置为选中的位置currentImagePosition = arg2;//为ImageSwitcher设置图像is.setImageResource(images[arg2 % images.length]);}@Overridepublic void onNothingSelected(AdapterView<?> arg0) {}});}}/** * 自定义Gallery的适配器 * */class ImageAdapter extends BaseAdapter {private Context context;public ImageAdapter(Context context) {this.context = context;}@Overridepublic int getCount() {return Integer.MAX_VALUE;}@Overridepublic Object getItem(int position) {return position;}@Overridepublic long getItemId(int position) {return position;}/** * gallery从这个方法中拿到image */@Overridepublic 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;}}@Overridepublic View makeView() {ImageView view = new ImageView(this);view.setBackgroundColor(0xff000000);view.setScaleType(ScaleType.FIT_CENTER);view.setLayoutParams(new ImageSwitcher.LayoutParams(90,90));return view;}public void initImageChooseDialog() {if(imageChooseDialog == null) {AlertDialog.Builder builder = new AlertDialog.Builder(this);builder.setTitle("请选择图像").setView(imageChooseView).setPositiveButton("确定", new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {imageChanged = true;previousImagePosition = currentImagePosition;imageButton.setImageResource(images[currentImagePosition%images.length]);}}).setNegativeButton("取消", new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {currentImagePosition = previousImagePosition;}});imageChooseDialog = builder.create();}}}/*package com.example.shareingcontact;import android.app.Activity;import android.app.AlertDialog;import android.content.Context;import android.os.Bundle;import android.view.LayoutInflater;import android.view.View;import android.view.View.OnClickListener;import android.view.ViewGroup;import android.view.ViewGroup.LayoutParams;import android.widget.BaseAdapter;import android.widget.Button;import android.widget.Gallery;import android.widget.ImageButton;import android.widget.ImageSwitcher;import android.widget.ImageView;public class AddActivity extends Activity { Button btn_cancell; Button btn_save; ImageButton btn_ImageButton; AlertDialog imagechooseDialog; int position; private int[] images = new int[]{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 ,R.drawable.image25,R.drawable.image26,R.drawable.image27 ,R.drawable.image28,R.drawable.image29,R.drawable.image30}; @Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);this.setContentView(R.layout.add);btn_cancell = (Button) findViewById(R.id.btn_cancell);btn_save =(Button) findViewById(R.id.btn_save);btn_ImageButton = (ImageButton) findViewById(R.id.image_button);btn_ImageButton.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View arg0) {initImagechooseDialog();imagechooseDialog.show();}private void initImagechooseDialog() {AlertDialog.Builder builder = new AlertDialog.Builder(AddActivity.this);builder.setTitle("请选择图片");LayoutInflater inflater = LayoutInflater.from(AddActivity.this);View view = inflater.inflate(R.layout.imageswitch, null);Gallery gallery = (Gallery) findViewById(R.id.img_gallery);gallery.setAdapter(new ImageAdapter(null));ImageSwitcher is = (ImageSwitcher) findViewById(R.id.image_switcher);builder.setView(view);imagechooseDialog = builder.create();}class ImageAdapter extends BaseAdapter {private Context context;public ImageAdapter(Context context){this.context = context;}@Overridepublic int getCount() {return images.length;}@Overridepublic Object getItem(int arg0) {// TODO Auto-generated method stubreturn null;}@Overridepublic long getItemId(int arg0) {// TODO Auto-generated method stubreturn 0;}@Overridepublic View getView(int arg0, View arg1, ViewGroup arg2) {ImageView iv = new ImageView(context);iv.setImageResource(images[position]);iv.setAdjustViewBounds(true);iv.setLayoutParams(new LayoutParams(80,80));iv.setPadding(15, 10, 15, 10);return iv;}}});btn_cancell.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View arg0) {finish();}});btn_save.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View arg0) {finish();}});}}*/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值