`
jonson
  • 浏览: 167342 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

PopupWindow的显示隐藏配置动画

阅读更多

如果对PopupWindow的显示隐藏过程配置动画。

有几个注意点:

1.PopupWindow的动画需要成对配置,即一个显示一个隐藏。

2.调用PopupWindow setAnimationStyle接口来设置。

 

定义一个Style

 <style name="popup_animation">
        <item name="@android:windowEnterAnimation">@anim/xiaoying_popup_show</item>
        <item name="@android:windowExitAnimation">@anim/xiaoying_popup_hide</item>
    </style>

 提供两个例子动画

显示动画:

<set xmlns:android="http://schemas.android.com/apk/res/android" >

    <scale
        android:duration="500"
        android:fromXScale="0.0"
        android:fromYScale="0.0"
        android:interpolator="@android:anim/bounce_interpolator"
        android:pivotX="50%p"
        android:pivotY="50%p"
        android:toXScale="1.0"
        android:toYScale="1.0" />

</set>

隐藏动画:

<set xmlns:android="http://schemas.android.com/apk/res/android" >

    <scale
        android:duration="500"
        android:fromXScale="1.0"
        android:fromYScale="1.0"
        android:pivotX="50%p"
        android:pivotY="50%p"
        android:toXScale="0.0"
        android:toYScale="0.0" />

</set>

  

调用:

mPopupWindow.setAnimationStyle(R.style.popup_animation);

 

 

最后在动画配置过程中发现还有问题,没解决,有经验的同学请指教。

问题:

对于不占满整个window的画面的情况,动画不能从有效的View的相对0点开始做动画。比如有效的view的bottom值为400px,

demo中的动画,看到的效果是从屏幕的最下方开始做动画的。

2
0
分享到:
评论
1 楼 natan 2016-07-12  
和楼主问题一样 添加动画后  总是从屏幕的最上或最底部 出现

相关推荐

    封装PopupWindow(1)

    4. **显示与隐藏**: 提供showAsDropDown和dismiss方法,方便调用者控制PopupWindow的显示和消失。 5. **位置调整**: 添加一个方法来调整PopupWindow相对于锚点的位置,例如在上方、下方、左侧或右侧显示。 6. **...

    仿微信popupwindow,android源码

    - 动画的实现:如何自定义动画资源并应用到PopupWindow的显示和消失过程中。 - 生命周期的管理:如何在Activity的生命周期中正确地控制PopupWindow的显示与隐藏。 通过理解并实践这个项目,开发者不仅可以掌握...

    Android PopupWindow

    调用`showAsDropDown()`或`showAtLocation()`方法来显示PopupWindow,`dismiss()`方法用来隐藏它。 二、PopupWindow的位置与对齐 1. showAsDropDown(): 此方法根据给定的View进行对齐,如: ```java popupWindow...

    PopupWindow用法实例

    PopupWindow支持添加显示和消失的动画效果,通过设置`Animation`对象。例如,滑入滑出动画: ```java Animation animIn = AnimationUtils.loadAnimation(context, R.anim.slide_in); Animation animOut = ...

    Android项目实战--手机卫士21--运行应用以及美化PopupWindow

    - **显示与隐藏**:调用`showAtLocation()`或`showAsDropDown()`方法来定位并显示PopupWindow,使用`dismiss()`隐藏。 - **监听事件**:如果PopupWindow包含可交互的元素,需要为其设置点击事件监听器。 6. **...

    popupwindow-android

    接着,我们学习如何显示和隐藏PopupWindow。调用`showAsDropDown()`或`showAtLocation()`方法可以将PopupWindow显示在指定位置,`dismiss()`方法用来关闭PopupWindow: ```java // 显示在某个View下方 popupWindow....

    Android自定义PopupWindow日历 日期时间选择器 可自由搭配年月日时分显示

    为了实现可自由搭配的显示模式,我们需要在`PopupWindow`类中添加配置选项,如是否显示小时和分钟。这些选项可以通过构造函数传递进来,或者在创建`PopupWindow`后通过方法设置。当用户不需要显示某些部分时,相应...

    示例的popupWindow的代码

    综上所述,"示例的popupWindow的代码"应该包含了一个PopupWindow的创建、显示、关闭以及可能的自定义动画和触摸处理等逻辑。通过分析提供的文件,我们可以学习如何在实际项目中使用PopupWindow,以及了解一个标准的...

    自定义popupWindow

    `PopupWindow`有许多可配置的属性,如背景透明度、是否允许触摸外部关闭、动画效果等: 1. 设置背景透明度: ```java popupWindow.setOutsideTouchable(true); // 触摸外部可关闭 popupWindow.setBackground...

    自定义删除窗口PopupWindow

    首先,PopupWindow的基本用法包括创建实例、设置内容视图、设置大小和位置,以及显示和隐藏。创建PopupWindow时,你需要传入一个布局作为内容视图,例如: ```java PopupWindow popupWindow = new PopupWindow...

    PopupWindow实现demo

    在显示和隐藏PopupWindow时,需要调用`showAsDropDown()`或`showAtLocation()`方法,并考虑触摸其他地方时自动关闭PopupWindow: ```java popupWindow.showAsDropDown(anchorView, xOffset, yOffset); // 显示在...

    Android下打造通用便捷的PopupWindow弹窗库

    - `BasePopup`类:作为基础PopupWindow的抽象类,封装了基本的显示、隐藏和动画逻辑。 - `PopupHelper`工具类:用于辅助PopupWindow的位置计算和显示操作。 - `PopupAnimator`类:处理PopupWindow的动画效果。 - `...

    popupWindow_Demo

    通过`AnimationUtils.loadAnimation()`加载动画资源,然后在显示PopupWindow之前调用`setAnimation()`方法设置动画。 总结一下,"popupWindow_Demo"是一个很好的学习资源,它涵盖了创建、配置和使用PopupWindow的...

    仿微信popupwindow代码.zip

    在显示和隐藏PopupWindow时,分别调用`setAnimationStyle()`设置动画样式,然后调用`show()`和`dismiss()`方法。 5. **交互处理** PopupWindow中的按钮点击事件需要通过监听器来处理。可以通过为每个按钮设置...

    控制popupwindow的弹出与退出

    PopupWindow是Android开发中常见的一种UI组件,它用于在屏幕任意位置显示一个浮动窗口,可以包含自定义布局,常用于下拉菜单、...在实际开发中,还可以结合动画效果、延迟显示等功能,使PopupWindow更加生动和实用。

    小程序源码 PopupWindow下拉列表.zip

    - 通过设置 `show` 属性来控制 `PopupWindow` 的显示与隐藏,还可以设置动画效果。 2. **下拉列表**: - 下拉列表是用户界面中常见的交互元素,通常用于提供多个选项供用户选择。 - 在小程序中,下拉列表可以...

    使用PopupWindow + 2个ListView实现仿 美团/淘宝/百度糯米 多级分类菜单效果

    5. **动画效果**: 为了提高用户体验,可以为PopupWindow的显示和消失添加动画,例如淡入淡出效果。这可以通过设置PopupWindow的AnimationStyle属性实现。 6. **关闭机制**: 当用户在二级ListView中选择了一个子分类...

    上下滑动监听弹出浮动框

    当达到一定的阈值时,启动动画来显示或隐藏PopupWindow。同时,为了确保动画的流畅性,应该在UI线程之外执行动画逻辑。 5. **调整位置**:PopupWindow的位置可以通过setGravity()方法设置,也可以通过setX()和setY...

    Android popuWindow

    还可以结合其他组件,如`BroadcastReceiver`监听系统事件,使`PopupWindow`在特定条件下自动显示或隐藏。 在项目实践中,`MypopupWindow`很可能就是这样一个自定义的`PopupWindow`实现,包含了上述所有功能。通过...

    BottomPopupWindow:从底部弹出一个背景透明的PopupWindow,类似微信

    在`BottomPopupWindow`项目中,可能会提供一个自定义的`BottomPopupWindow`类,该类包含了所有必要的配置和动画效果,使得开发者可以直接使用,而无需关心底层实现细节。这个自定义类可能包含以下方法: 1. `...

Global site tag (gtag.js) - Google Analytics