当前位置:首页 > 芯闻号 > 充电吧
[导读]public class PopupWindow extends Objectjava.lang.Object    ↳ android.widget.PopupWindow Class Overv

public class PopupWindow extends Object
java.lang.Object    ↳ android.widget.PopupWindow Class Overview A popup window that can be used to display an arbitrary view. The popup window is a floating container that appears on top of the current activity. PopupWindow的构造函数:

//方法一:  
public PopupWindow (Context context)  
//方法二:  
public PopupWindow(View contentView)  
//方法三:  
public PopupWindow(View contentView, int width, int height)  
//方法四:  
public PopupWindow(View contentView, int width, int height, boolean focusable)


注意:这里有四个构造函数,但要生成一个PopupWindow最基本的三个条件是一定要设置的:View contentView,int width, int height ;少任意一个就不可能弹出来PopupWindow!!
构造一个PopupWindow:

LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
		View view = inflater.inflate(R.layout.popwindowlayout, null);

		// 下面是两种方法得到宽度和高度 getWindow().getDecorView().getWidth()

		PopupWindow window = new PopupWindow(view,
				WindowManager.LayoutParams.MATCH_PARENT,
				WindowManager.LayoutParams.WRAP_CONTENT);

PopupWindow没有默认布局,所以需要设置width和height。 设置显示的位置的方法:

//相对某个控件的位置(正左下方),无偏移  
showAsDropDown(View anchor):  
//相对某个控件的位置,有偏移;xoff表示x轴的偏移,正值表示向左,负值表示向右;yoff表示相对y轴的偏移,正值是向下,负值是向上;  
showAsDropDown(View anchor, int xoff, int yoff):  
//相对于父控件的位置(例如正中央Gravity.CENTER,下方Gravity.BOTTOM等),可以设置偏移或无偏移  
showAtLocation(View parent, int gravity, int x, int y):

设置其他属性的函数:

public void dismiss()  
public void setFocusable(boolean focusable)  //设置窗体可点击
public void setTouchable(boolean touchable)  
public void setOutsideTouchable(boolean touchable)  
public void setBackgroundDrawable(Drawable background)  //设置半透明,透明等背景

简单示例:(setAnimationStyle()、showAtLocation()) 布局文件activity_main.xml


PopupWindow弹出窗口的布局popwindowlayout.xml

	

窗口隐藏的动画:res/anim/pophidden_anim.xml


窗口显示的动画:res/anim/popshow_anim.xml

	

在res/values/styles.xml 中添加动画类型:

@anim/popshow_anim@anim/pophidden_anim" _ue_custom_node_="true">



点击按钮弹出驾校介绍窗口,点击屏幕别处,窗口消失。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

加入Blender并且即将集成主流Adobe 3D应用,Omniverse将为全球各地的创作者提供支持

关键字: NVIDIA 3D软件 动画

在14日举行的Apple会议上,每个人都熬夜了吗? 作为一个有责任心的新媒体人和数字爱好者,小磊当然整夜都没有感到惊讶! 整个晚上的前提当然是为手机充满电并等待直播! 为了不让漫长的夜晚无聊,小磊,我安排了一个超级有趣的...

关键字: 充电 动画 安卓

众所周知,在java里是不能给构造函数写返回值的,如果在低版本的编译器定义一个构造器写上返回值可能会报错,高版本里面他就是一个普通的方法。可如果构造函数没有返回值,比如Test t = new Test()我们new一个...

关键字: 构造函数 java

8月8日消息,《王者荣耀》官方宣布,王者荣耀首部官方动画番剧正式启动,由王者荣耀、企鹅影视出品,将在腾讯视频播出。 官方还晒出了首张动态海报,李白持剑伫立在大唐的钟楼之上,整个画面被高耸入云的高楼填充

关键字: 动画 启动 王者荣耀

今天,育碧宣布首部中国原创漫画《刺客信条:王朝》将于8月26在新漫画和腾讯动漫平台首发上线,该漫画由国内专业漫画平台“新漫画”制作,中国知名漫画家许先哲领衔创作。 携手新漫画旗下“第一国漫”漫画家许先

关键字: 动画 国漫

《白蛇缘起》团队历时四年打造的动画电影《哪吒重生》表示,这部电影会在今年上映。 制作团队介绍,《哪吒重生》是一部中国的超级英雄电影,不同于传统的哪吒,东方元素+朋克,导演赵霁表示《哪吒重生》是一部可能

关键字: 动画 哪吒重生

国产动画《我为歌狂2》今天宣布,正式更名《我为歌狂之旋律重启》,该动画将于2020年内在B站独家首播(共12集),至于具体的时间还不清楚。 《我为歌狂2》讲述了南华高中的叶峰、楚天歌、盖世爱、Coo

关键字: 动画 国产

20世纪40年代的经典《超人》动画片共收录了派拉蒙影业公司从 Fleischer工作室和后来的Famous工作室发行的17部彩色动画短片。这些视频现在都是公共领域的一部分,因此它们是非官方重制版的合适

关键字: 动画 超人

大家消遣时光的时候,有多少人喜欢刷哔哩哔哩(简称B站)的?6月26日,B站迎了来了第十一个年头,CEO陈睿提出了三大使命,未来将让中国原创动画及游戏受到全世界的欢迎。 今年B站十一年周年的活动沿用了去

关键字: b站 ceo 动画 哔哩哔哩 陈睿

日本动画电影《无限》(又名 《想哭的我戴上了猫的面具》)将于今日18:00上线抖音、西瓜视频等字节跳动旗下平台,与Netflix全球同步播出。 本片主要讲述了绰号叫“无限”的女生笹木美代,虽然想尽办法

关键字: 动画 抖音 日本
关闭
关闭