码迷,mamicode.com
首页 > 移动开发 > 详细

Android-PopupWindow

时间:2019-01-13 14:22:42      阅读:205      评论:0      收藏:0      [点我收藏+]

标签:color   ali   动画   ati   back   相对   响应   off   cat   

Android ——PopupWindow


基本用法

1、创建PopupWindow对象实例;

2、设置背景、注册事件监听器和添加动画;

3、显示PopupWindow。

例子:

// 用于PopupWindow的View
View contentView=LayoutInflater.from(context).inflate(layoutRes, null, false);
// 创建PopupWindow对象,其中:
// 第一个参数是用于PopupWindow中的View,第二个参数是PopupWindow的宽度,
// 第三个参数是PopupWindow的高度,第四个参数指定PopupWindow能否获得焦点
PopupWindow window=new PopupWindow(contentView, 100, 100, true);
// 设置PopupWindow的背景
window.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
// 设置PopupWindow是否能响应外部点击事件
window.setOutsideTouchable(true);
// 设置PopupWindow是否能响应点击事件
window.setTouchable(true);
// 显示PopupWindow,其中:
// 第一个参数是PopupWindow的锚点,第二和第三个参数分别是PopupWindow相对锚点的x、y偏移
window.showAsDropDown(anchor, xoff, yoff);
// 或者也可以调用此方法显示PopupWindow,其中:
// 第一个参数是PopupWindow的父View,第二个参数是PopupWindow相对父View的位置,
// 第三和第四个参数分别是PopupWindow相对父View的x、y偏移
// window.showAtLocation(parent, gravity, x, y);

使用showAsDropDown方法显示PopupWindow

通常情况下,调用showAsDropDown方法后PopupWindow将会在锚点的左下方显示(drop down)。但是,有时想让PopupWindow在锚点的上方显示,或者在锚点的中间位置显示,此时就需要用到showAsDropDown方法的xoff和yoff参数了。

这里我们的目的不仅包括上面提到的两种情况(锚点上方或锚点中部),而是囊括了水平和垂直方向各5种显示方式:

水平方向:

ALIGN_LEFT:在锚点内部的左边;

ALIGN_RIGHT:在锚点内部的右边;

CENTER_HORI:在锚点水平中部;

TO_RIGHT:在锚点外部的右边;

TO_LEFT:在锚点外部的左边。

垂直方向:

ALIGN_ABOVE:在锚点内部的上方;

ALIGN_BOTTOM:在锚点内部的下方;

CENTER_VERT:在锚点垂直中部;

TO_BOTTOM:在锚点外部的下方;

TO_ABOVE:在锚点外部的上方。

具体见jzyhywxz博客

转载只为学习,若有侵权,通知即删。

Android-PopupWindow

标签:color   ali   动画   ati   back   相对   响应   off   cat   

原文地址:https://www.cnblogs.com/xuyj/p/10262434.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!