本文实例为大家分享了Android实现底部弹窗效果的具体代码,供大家参考,具体内容如下
源代码地址:https://github.com/luoye123/Box
东西很简单,我就直接亮代码了:
1, activity_main.xml
& lt; & # 63; xml version=" 1.0 " encoding=" utf - 8 " & # 63;比; LinearLayout & lt; xmlns: android=" http://schemas.android.com/apk/res/android " android: layout_width="宽和" android: layout_height="宽和" android:重力="中心" android: id=癅 + id/ll_image”比; & lt;按钮 android: id=癅 + id/bt_select_image” android: layout_width=" wrap_content " android: layout_height=" wrap_content " android:文本="选择图片”/比; & lt;/LinearLayout> >之前2, MainActivity.java
公共类MainActivity AppCompatActivity延伸实现视图。OnClickListener { 私人SelectPicPopupWindow menuWindow; @Override 保护空白> * *公共类SelectPicPopupWindow延伸PopupWindow { 私人按钮item_popupwindows_camera,//弹窗拍照按钮 item_popupwindows_Photo,//弹窗从相册选择按钮 item_popupwindows_cancel;//弹窗取消按钮 私人观点menuview;/* * *上传图片* * * * * * * * * * * * * * * * * * * * * * * * * * @param上下文 * @param itemsOnclick */公共SelectPicPopupWindow(活动背景下,视图。OnClickListener itemsOnclick) { 超级(上下文); LayoutInflater增压泵=(LayoutInflater) context.getSystemService (Context.LAYOUT_INFLATER_SERVICE); menuview=inflater.inflate (R.layout.item_popupwindows, null); item_popupwindows_camera=(按钮)menuview.findViewById (R.id.item_popupwindows_camera);//拍照按钮 item_popupwindows_cancel=(按钮)menuview.findViewById (R.id.item_popupwindows_cancel);//取消按钮 item_ * * popupwindows_Photo=(按钮)menuview.findViewById (R.id.item_popupwindows_Photo);//图库按钮/* * *取消按钮销毁事件 */item_popupwindows_cancel。setOnClickListener(新View.OnClickListener () { 公共空间onClick(查看视图){ 把(); } }); item_popupwindows_camera.setOnClickListener (itemsOnclick); item_popupwindows_Photo.setOnClickListener (itemsOnclick);//设置SelectPicPopupWindow的观点 this.setContentView (menuview);//设置SelectPicPopupWindow * *弹出窗体的宽 this.setWidth (ViewGroup.LayoutParams.FILL_PARENT);//设置SelectPicPopupWindow弹出窗体的高//修改高度显示,解决被手机底部虚拟键挡住的问题,黄海杰:2015-4-30 this.setHeight (ViewGroup.LayoutParams.MATCH_PARENT);//设置SelectPicPopupWindow弹出窗体可点击 this.setFocusable(真正的);//设置SelectPicPopupWindow弹出窗体动画效果//this.setAnimationStyle (R.style);//实例化一个ColorDrawable颜色为半透明 ColorDrawable dw=new ColorDrawable (0 xb0000000);//设置SelectPicPopupWindow弹出窗体的背景 this.setBackgroundDrawable (dw);//menuview添加ontouchlistener监听判断获取触屏位置如果在选择框外面则销毁弹出框 menuview。setOnTouchListener(新View.OnTouchListener () { 公共布尔ondraw(查看视图,MotionEvent MotionEvent) { int身高=menuview.findViewById (R.id.ll_popup) .getTop (); int y=(int) motionEvent.getY (); 如果(motionEvent.getAction ()==MotionEvent.ACTION_UP) { 如果(y<高度){ 把(); } } 返回true; } }); } }* * >之前写的不好,请见谅,,下一期完成后期的工作!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
Android实现底部弹窗效果