首页 > 代码库 > PopupWindow 从底部弹出窗体
PopupWindow 从底部弹出窗体
第一步 : 初始化PopupWindow
private void initPop() { if (view == null) { // 照片 view = View.inflate(RegisterActivity.this, R.layout.pop_phone, null); / /加载对象 } if (mPopupWindow == null) { mPopupWindow = new PopupWindow(view, LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT, true); } }
第二步 ,点击事件打开开
// 打开pop private void openPopup() { mPopupWindow.setBackgroundDrawable(new ColorDrawable(Color .parseColor("#b0000000"))); //设置背景颜色 mPopupWindow.showAtLocation(register_lay_out, Gravity.BOTTOM, 0, 0); mPopupWindow.setAnimationStyle(R.style.app_pop); mPopupWindow.setOutsideTouchable(true); //点击外面关闭 mPopupWindow.setFocusable(true); //得到焦点 mPopupWindow.update(); }
R.style.app_pop
<style name="AppTheme" parent="android:Theme.Light" /> <style name="app_pop"> <item name="android:windowEnterAnimation">@anim/pop_up</item> <item name="android:windowExitAnimation">@anim/pop_down</item> </style>
pop_up.xml
<?xml version="1.0" encoding="utf-8"?><translate xmlns:android="http://schemas.android.com/apk/res/android" android:fromXDelta="0" android:toXDelta="0" android:fromYDelta="100%" android:toYDelta="0%" android:duration="200"></translate>
pop_down.xml
<?xml version="1.0" encoding="utf-8"?><translate xmlns:android="http://schemas.android.com/apk/res/android" android:fromXDelta="0" android:toXDelta="0" android:fromYDelta="0%" android:toYDelta="100%" android:duration="200"></translate>
附录 :打开前 先判断 关闭
private void dismissPopupWindow() { // 把旧的弹出窗体关闭掉。 if (mPopupWindow != null && mPopupWindow.isShowing()) { mPopupWindow.dismiss(); // mPopupWindow = null; } }
PopupWindow 从底部弹出窗体
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。