popupwindow展示
博客专区 > Jusenr 的博客 > 博客详情
popupwindow展示
Jusenr 发表于2年前
popupwindow展示
  • 发表于 2年前
  • 阅读 2
  • 收藏 0
  • 点赞 2
  • 评论 0

标题:腾讯云 新注册用户域名抢购1元起>>>   

  样式:

 

  layout:

popup_appinfo.xml

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3  android:layout_width="wrap_content"
 4  android:layout_height="wrap_content"
 5  android:background="@drawable/pop_bg"
 6  android:orientation="horizontal" >
 7 
 8     <TextView  9         android:id="@+id/tv_uninstall"
10  android:layout_width="wrap_content"
11  android:layout_height="wrap_content"
12  android:layout_margin="3dp"
13  android:drawablePadding="3dp"
14  android:drawableTop="@drawable/ic_uninstall"
15  android:text="卸载"
16  android:textColor="@color/black"
17  android:textSize="16sp" />
18 
19     <TextView 20         android:id="@+id/tv_open"
21  android:layout_width="wrap_content"
22  android:layout_height="wrap_content"
23  android:layout_margin="3dp"
24  android:drawablePadding="3dp"
25  android:drawableTop="@drawable/ic_open"
26  android:text="打开"
27  android:textColor="@color/black"
28  android:textSize="16sp" />
29 
30     <TextView 31         android:id="@+id/tv_share"
32  android:layout_width="wrap_content"
33  android:layout_height="wrap_content"
34  android:layout_margin="3dp"
35  android:drawablePadding="3dp"
36  android:drawableTop="@drawable/ic_share"
37  android:text="分享"
38  android:textColor="@color/black"
39  android:textSize="16sp" />
40 
41     <TextView 42         android:id="@+id/tv_info"
43  android:layout_width="wrap_content"
44  android:layout_height="wrap_content"
45  android:layout_margin="3dp"
46  android:drawablePadding="3dp"
47  android:drawableTop="@drawable/ic_info"
48  android:text="信息"
49  android:textColor="@color/black"
50  android:textSize="16sp" />
51 
52 </LinearLayout>

 

  anim:

popup_enter.xml

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <set xmlns:android="http://schemas.android.com/apk/res/android"
 3  android:shareInterpolator="false" >
 4 
 5     <translate  6         android:duration="400"
 7  android:fromXDelta="100%p"
 8  android:interpolator="@android:interpolator/overshoot"
 9  android:toXDelta="0" />
10 
11     <alpha 12         android:duration="400"
13  android:fromAlpha="0.2"
14  android:toAlpha="1.0" />
15 
16 </set>

 

popup_exit.xml

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <set xmlns:android="http://schemas.android.com/apk/res/android"
 3  android:shareInterpolator="false" >
 4 
 5     <translate  6         android:duration="400"
 7  android:fromXDelta="0"
 8  android:interpolator="@android:interpolator/anticipate"
 9  android:toXDelta="50%p" />
10 
11     <alpha 12         android:duration="400"
13  android:fromAlpha="1.0"
14  android:toAlpha="0" />
15 
16 </set>

 

code:

Activity.java

......

 1     //显示popupwindow
 2     protected void showPopup(View itemView) {  3         if (mPopupWindow == null) {//只需要初始化一次弹窗  4             //初始化弹窗布局
 5             View view = View.inflate(this, R.layout.popup_appinfo, null);  6 
 7             //设置按钮点击事件
 8             TextView tvUninstall = (TextView) view  9  .findViewById(R.id.tv_uninstall); 10             TextView tvOpen = (TextView) view.findViewById(R.id.tv_open); 11             TextView tvShare = (TextView) view.findViewById(R.id.tv_share); 12             TextView tvInfo = (TextView) view.findViewById(R.id.tv_info); 13             tvUninstall.setOnClickListener(this); 14             tvOpen.setOnClickListener(this); 15             tvShare.setOnClickListener(this); 16             tvInfo.setOnClickListener(this); 17 
18             //初始化弹窗对象
19             ////参1:布局; 参2,3:宽高; 参4:获取焦点
20             mPopupWindow = new PopupWindow(view, 21  WindowManager.LayoutParams.WRAP_CONTENT, 22                     WindowManager.LayoutParams.WRAP_CONTENT, true); 23 
24             //设置背景;只有设置了背景,点击窗口外侧和返回键,弹窗才会消失
25             mPopupWindow.setBackgroundDrawable(new ColorDrawable()); 26 
27             //设置动画样式
28  mPopupWindow.setAnimationStyle(R.style.PopupAnim); 29  } 30 
31         //显示在item正下方, 然后向上偏移一个item的高度
32         mPopupWindow.showAsDropDown(itemView, 60, -itemView.getHeight()); 33     }

 

......

  1 //弹窗消失

 2 mPopupWindow.dismiss(); 

......

 

共有 人打赏支持
粉丝 0
博文 20
码字总数 10876
×
Jusenr
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: