让 Popwindow 向上弹出

 1 /**
 2      * 获取父控件的位置y-popwindow的高度 = 应该显示的y坐标.   x这里设置为center 不刻意指定坐标  注意:控件坐标永远是 左上角坐标!
 3      *
 4      * @param parent
 5      */
 6     public void showUp(View parent) {
 7
 8         int[] location = new int[2];
 9
10         parent.getLocationOnScreen(location);
11         popupWindow.setAnimationStyle(R.style.AnimationPopup);
12         popupWindow.showAtLocation(parent, Gravity.CENTER_HORIZONTAL
13                 | Gravity.TOP, 0, location[1] - popupWindow.getHeight() + 20);
14
15         popupWindow.setFocusable(true);
16         popupWindow.setOutsideTouchable(true);
17
18         popupWindow.update();
19     }

values\style.xml:

1 <resources>
2 <style name="AnimationPopup">
3     <item name="@android:windowEnterAnimation">@anim/appear</item>
4     <item name="@android:windowExitAnimation">@anim/disappear</item>
5 </style>
6 </resources>

anim\appear.xml

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <set xmlns:android="http://schemas.android.com/apk/res/android" >
 3
 4
 5     <scale
 6         android:duration="500"
 7         android:fromXScale="1.0"
 8         android:fromYScale="0.5"
 9         android:pivotX="0%"
10         android:pivotY="100%"
11         android:toXScale="1"
12         android:toYScale="1" />
13
14
15     <alpha
16         android:duration="500"
17         android:fromAlpha="0.5"
18         android:interpolator="@android:anim/accelerate_interpolator"
19         android:toAlpha="1.0" />
20
21
22 </set>

anim\disappear.xml

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <set xmlns:android="http://schemas.android.com/apk/res/android" >
 3
 4
 5     <scale
 6         android:duration="500"
 7         android:fromXScale="1.0"
 8         android:fromYScale="1"
 9         android:pivotX="0%"
10         android:pivotY="100%"
11         android:toXScale="1"
12         android:toYScale="0.5" />
13
14
15     <alpha
16         android:duration="500"
17         android:fromAlpha="1.0"
18         android:interpolator="@android:anim/accelerate_interpolator"
19         android:toAlpha="0.0" />
20
21
22 </set>
时间: 2024-07-29 00:24:09

让 Popwindow 向上弹出的相关文章

android开发(31) 动画演示 - 从页面底部向上弹出dialog,消失时逐渐向下

我想实现一个效果,从底部向上逐渐弹出.如下图所示: 1.点击 显示 按钮时,一个dialog对话框从底部慢慢向上弹出. 2.关闭dialog时, dialog缓慢的移动向底部消失.很平滑的效果.     实现方式: 在activity中写代码如下 public class MainActivity extends Activity { Button button1; @Override protected void onCreate(Bundle savedInstanceState) { su

从页面底部向上弹出dialog,消失时逐渐向下(转)

我想实现一个效果,从底部向上逐渐弹出.如下图所示: 1.点击 显示 按钮时,一个dialog对话框从底部慢慢向上弹出. 2.关闭dialog时, dialog缓慢的移动向底部消失.很平滑的效果.     实现方式: 在activity中写代码如下 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 public class MainActivity extends Activity {     Butto

向上弹出菜单jQuery插件

插件名:柯乐义英文名:Keleyijs文件名称:jquery.keleyi.js插件功能:该插件可以让你轻易地在页面上构建一个向上弹出的二级菜单. 支持浏览器: keleyi 0.1.4版本支持IE6以及以上.Chrome.火狐(Firefox).欧朋(Opera).Safari等浏览器,也支持IE6 keleyi 0.1.3版本支持IE8以及以上.Chrome.火狐(Firefox).欧朋(Opera).Safari等浏览器,不支持IE6. 示例查看:http://keleyi.com/kel

Android于popWindow写弹出菜单

1.什么是popWindow? popWindow这是对话的方式!文字解说android的方式来使用对话框,这就是所谓的popWindow. 2.popWindow特征 Android的对话框有两种:PopupWindow和Dialog.它们的不同点在于: Dialog的位置固定,而PopupWindow的位置能够任意. Dialog是非堵塞线程的,而PopupWindow是堵塞线程的. PopupWindow的位置依照有无偏移分,能够分为偏移和无偏移两种:依照參照物的不同,能够分为相对于某个控

C# winform 窗体从右下角向上弹出窗口效果

/// <summary> /// 窗体动画函数 注意:要引用System.Runtime.InteropServices; /// </summary> /// <param name="hwnd">指定产生动画的窗口的句柄</param> /// <param name="dwTime">指定动画持续的时间</param> /// <param name="dwFlags&q

Android PopupWindow怎么合理控制弹出位置(showAtLocation)

说到PopupWindow,应该都会有种熟悉的感觉,使用起来也很简单 // 一个自定义的布局,作为显示的内容 Context context = null; // 真实环境中要赋值 int layoutId = 0; // 布局ID View contentView = LayoutInflater.from(context).inflate(layoutId, null); final PopupWindow popupWindow = new PopupWindow(contentView,

【转】swift实现ios类似微信输入框跟随键盘弹出的效果

swift实现ios类似微信输入框跟随键盘弹出的效果 为什么要做这个效果 在聊天app,例如微信中,你会注意到一个效果,就是在你点击输入框时输入框会跟随键盘一起向上弹出,当你点击其他地方时,输入框又会跟随键盘一起向下收回,二者完全无缝连接,那么这是怎么实现的呢,也许你会说直接在键盘弹出的时候把输入框也向上移动不就行了?但是我使用这种方法的时候,发现效果十分不理想,会有明显的滞后现象,原因有以下几点: 键盘弹出动画并不是匀速,键盘和输入框的时间曲线不完全一致,运动不同步 各种键盘的高度不一样(比如

[Android] 底部菜单布局+PopupWindows实现弹出菜单功能(初级篇)

    这篇文章主要是自己研究如何对底部菜单进行布局,并简单的实现点击不同"按钮"实现图片切换和背景切换的功能,最后通过PopupWindows实现弹出菜单,点击不同按钮能实现不同方法,相当于美图秀秀编辑图片的功能吧!它并没有涉及到Fragment碎片切换页面的功能,因为页面始终显示被处理的图片.这是我初学Android的一篇基础性文章和在线思想笔记,网上有很多更优秀的demo,不过也希望对大家有用~ 首先介绍两种方法实现底部菜单点击不同图标显示选中状态的效果. (可参考简短文章:An

底部菜单布局+PopupWindows实现弹出菜单功能(初级篇)

http://blog.csdn.net/eastmount/article/details/40827939?utm_source=tuicool 这篇文章主要是自己研究如何对底部菜单进行布局,并简单的实现点击不同"按钮"实现图片切换和背景切换的功能,最后通过PopupWindows实现弹出菜单,点击不同按钮能实现不同方法,相当于美图秀秀编辑图片的功能吧!它并没有涉及到Fragment碎片切换页面的功能,因为页面始终显示被处理的图片.这是我初学Android的一篇基础性文章和在线思想