首页 > 其他分享 >Android 之 PopUpWindow 控件的使用(努力z的日记)

Android 之 PopUpWindow 控件的使用(努力z的日记)

时间:2024-08-05 11:25:01浏览次数:10  
标签:控件 anim PopUpWindow 创建 编写 Android 我们 弹窗

Gif示例:

上面的示例是模仿一些App设置的弹窗,为了实现上面gif中的效果,可以通过PopUpWindow实现。

以下是实现过程。(欢迎大佬指证o.o)

1:创建PopUpWindow动画(anim)

        这个anim是在开发中扮演很重要的一环,因为好看o.o,所以麻烦。浅入浅出是我们比较常见的。(因为周师傅只会这个,另外的自己调QAQ)下面是创建PopUpWindow动画的步骤

        1:在res中创建anim文件夹方便开发。(如图)

                (这里有个坑,就是我这个版本创建文件夹不显示的问题)
创建文件可能会出现的问题(已解决)

       当我们创建好文件夹后发现我们的anim文件不显示。这个时候我们需要切换到Project的视图在res创建一遍,如果在这里出现了我们创建的文件夹,就删除在这里再次创建我们的anim文件夹然后回到Android界面我们就会发现我们创建的这个anim文件出现了(如下图)

        

2:编写PopUpWindow进入和结束code

       创建两个xml文件,文件的名字任意,可以表达进入和结束的(如图)

        编写进入(enter)动画

这里是为了满足gif中的效果所设置的参数,只涉及了两个标签<translate>(平移标签)和<alpha>(透明度标签),还有<scale>(尺寸)和<rotate>(旋转)它们之间的函数各有不同,以后遇到会记录o.o

        编写结束(end)动画

不多赘述上代码

3:整合我们的开始和结束anim

        在我们的values创建一个xml文件,文件后缀为style,上图

到这里为止我们的popupwindow的动画部分已经编写完成了

2:创建PopUpWindow的脚本页面(布局界面)XML

这一步我们要设置两个xml,一个需要弹窗的界面设置还有一个是主弹窗的设置

        1:编写需要弹窗的界面

这个界面还是很简单的突出一个显示效果   \\o.o//

        2:编写弹窗的主界面

        我们的弹窗是圆角的所以我们需要去自定义一个圆角

这里称之为画蛇添足

在我们的drawable中创建一个xml文件(如图)

对我们的自定义控件进行编写(如图)

然后我们正式进入到主popupwindow的编写(如图)

到这里为止所有的XML的编写已经完成了

3:编写主函数代码

这个页面自己写的头都大了QAQ     

下面是框重叠部分   

popupWindow.setAnimationStyle(R.style.popupwindow_anim_style);

以上就是我完成gif中效果所有步骤

回头去整合一个popupwindow所有属性的表格!!!!!

标签:控件,anim,PopUpWindow,创建,编写,Android,我们,弹窗
From: https://blog.csdn.net/m0_67870744/article/details/140906890

相关文章

  • Android R Settings关于屏保/PowerManagerService欺骗系统不让其进入休眠状态
    //屏保设置界面./packages/apps/Settings/src/com/android/settings/dream/DreamSettings.java//和PowerManagerService建立联系./frameworks/base/packages/SettingsLib/src/com/android/settingslib/dream/DreamBackend.java//系统时钟屏保继承了DreamService./package......
  • android10.0(Q) MTK 6765 user版本打开root权限
    前言相比较Android8.1、9.0而言,Android10.0版本的root变得相当麻烦,10.0中引入了动态分区机制,同样的要想完全adbroot,需要fastboot解锁,然后关闭verity才能adbremount成功。我尝试和之前一样修改fstab.in.mt6765中的ro和rw初始值,容易导致无法正常开机,在......
  • 界面控件DevExpress WinForms v24.1系统环境配置要求
    DevExpressWinForms拥有180+组件和UI库,能为WindowsForms平台创建具有影响力的业务解决方案。DevExpressWinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任!本文档包含有关安装和使用 DevExpressWinForms ......
  • Android中毛玻璃效果的两种实现
    Android中毛玻璃效果主要有两种实现方式。1.使用JAVA算法FastBlur实现方法1先将图片缩小,然后放大图片,再设置为控件背景以达到更模糊的效果,同时也提升模糊算法的处理效率。2.使用Android自带类RenderScript实现方法2模糊半径只能设置1-25。对比下来同样的模糊半径,方法1的模......
  • Android activity主题设置
    主题配置<stylename="MainThemeCamera"parent="Theme.AppCompat.DayNight.NoActionBar"><itemname="android:windowBackground">@color/black</item><itemname="android:windowTranslucentStatu......
  • Android mvvm使用流程
    Androidmvvm使用流程一.几种常见架构模式对比1.MVC(Model-View-Controller)MVC模式的优点在于模块化、可扩展性和可维护性,但缺点是控制器和视图之间的耦合度较高。2.MVP(Model-View-Presenter)模式Presenter同时持有Model和View对象,缺点是V层与P层还是有一定的耦合度3.MVVM(Model-View......
  • 自定义导航栏兼容ios和android
    <template>  <view class="content">    <!--距离顶部的距离刚好留出状态栏即可即statusBarHeight-->    <view class="topNav" :style="{height:navHeight+'px',paddingTop:statusBarHeight+'px'}">      <......
  • Android ImageProxy 到 byteArray 并通过套接字发送
    我正在尝试将ImageProxy转换为byteArray,以通过套接字将其发送到python服务器。我正在使用Camerax,这是我的图像分析:mageAnalysisimageAnalysis=newImageAnalysis.Builder().setTargetResolution(newSize(720,640))......
  • 5、Qt-pyqt6常用基本控件 - 按钮控件
    Buttons--按钮类控件名说明PushButton按钮ToolButton工具按钮RadioButton单选按钮CheckBox复选框CommandLinkButton命令链接按钮DialogButtonBox对话框按钮盒......
  • 【转载】在Android中使用Rust:Rust与Android的结合
    声明:处于学习目的转载本文,若文章侵犯原作者权益,联系本人立即删除,联系方式:[email protected]文章转载于:https://developer.baidu.com/article/detail.html?id=3011246 简介:本文将介绍如何在Android平台上使用Rust编程语言,以及Rust与Android的结合所带来的优势和挑战。我们将探......