弹出popupwindow选择拍照相册

来源:互联网 发布:mac java web开发工具 编辑:程序博客网 时间:2024/06/06 00:02
<pre name="code" class="java">效果图:点击添加图片,弹出popupwindow
<img src="http://img.blog.csdn.net/20140910171230459?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMzE4MzEzOQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
点击从相册选择,ok,you know,and so

package com.example.popupwindow;import java.io.File;import android.app.Activity;import android.content.Context;import android.content.Intent;import android.graphics.drawable.BitmapDrawable;import android.net.Uri;import android.os.Bundle;import android.os.Environment;import android.provider.MediaStore;import android.view.Gravity;import android.view.LayoutInflater;import android.view.View;import android.view.View.OnClickListener;import android.view.ViewGroup.LayoutParams;import android.widget.Button;import android.widget.PopupWindow;import android.widget.TextView;public class MainActivity extends Activity implements OnClickListener {private PopupWindow mPopupWindowDialog;private TextView mTextViewDialogTakePicture, mTextViewDialogAlbum,mTextViewDialogCancel;private String takePicturePath = "";private Button mImageViewAddThumb;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);View view = inflater.inflate(R.layout.post_daily_picture_choose_dialog,null);mTextViewDialogTakePicture = (TextView) view.findViewById(R.id.textview_dialog_take_picture);mTextViewDialogAlbum = (TextView) view.findViewById(R.id.textview_dialog_album);mTextViewDialogCancel = (TextView) view.findViewById(R.id.textview_dialog_cancel);mPopupWindowDialog = new PopupWindow(view, LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT);mPopupWindowDialog.setFocusable(true);mPopupWindowDialog.update();mPopupWindowDialog.setBackgroundDrawable(new BitmapDrawable());mPopupWindowDialog.setOutsideTouchable(true);mTextViewDialogTakePicture.setOnClickListener(this);mTextViewDialogAlbum.setOnClickListener(this);mTextViewDialogCancel.setOnClickListener(this);mImageViewAddThumb = (Button) findViewById(R.id.imageview_add_thumb);mImageViewAddThumb.setOnClickListener(this);}@Overridepublic void onClick(View v) {switch (v.getId()) {case R.id.imageview_add_thumb:if (mPopupWindowDialog != null && !mPopupWindowDialog.isShowing())mPopupWindowDialog.showAtLocation(findViewById(R.id.imageview_add_thumb), Gravity.BOTTOM| Gravity.CENTER_HORIZONTAL, 0, 0);break;case R.id.textview_dialog_take_picture:// 拍照try {Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);startActivityForResult(intent, 1);} catch (Exception e) {}if (mPopupWindowDialog != null && mPopupWindowDialog.isShowing()) {mPopupWindowDialog.dismiss();}break;case R.id.textview_dialog_album:// 相册try {// 使用IntentIntent intent = new Intent(Intent.ACTION_VIEW);intent.setType("image/*");startActivity(intent);} catch (Exception e) {e.printStackTrace();}if (mPopupWindowDialog != null && mPopupWindowDialog.isShowing()) {mPopupWindowDialog.dismiss();}break;case R.id.textview_dialog_cancel: // 取消if (mPopupWindowDialog != null && mPopupWindowDialog.isShowing()) {mPopupWindowDialog.dismiss();}break;}}}
附加个人项目下载地址:http://download.csdn.net/detail/u013183139/7891531
0 0