首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

DialogFragment 使用

屏幕旋转(横竖屏幕切换)DialogFragment对话框随之自动调整对话框大小。AlertDialog和PopupWindow随屏幕切换而消失,并且如果处理不当很可能引发异常。...DialogFragment的出现完美的解决了横竖屏幕切换Dialog消失的问题。...并且实现它的onCreateView(LayoutInflater, ViewGroup, Bundle) 这个方法来加载一个我们指定的xml布局从而提供对话框内容。...= null) { window.setLayout(lp.width, lp.height); } } } DialogFragment消失操作 DialogFragment在正常Dismiss并不会直接从当前的栈中移除...DialogFragment并没有对Dialog的消失提供监听给调用者使用,但是我们通过源码分析得知,DialogFragment在onActivityCreate当中其实已经帮我们设置了onDismissListener

1.6K10

如何修改网站备案 网站备案内容能否更改

当创建的网站成功备案,很多人会因为第一次网站备案,对网站内容填写的信息不满意,因此想要在备案之后重新修改网站备案,但是大多数已经备案成功的人,并不知道如何修改网站备案?...网站备案内容能否更改 原则上来说,网站备案的内容无法进行更改。...不过如果网站备案成功以后,那么网站上的内容是可以更改的,备案之后的网站,可以使用国内的空间,如此国内的用户打开网站的速度要大于其他的空间,所以网站创立之后,备案是十分重要的,一旦没有备案成功,那么网站就被会直接撤销...对于网站域名或者内容不满意的用户,可以在网站备案之后对其进行修改,或者在网站上交ICP备案信息,可以把网站给服务商,让服务商帮助修改网站备案的内容,这样可以减少个人或企业网站备案的负担与压力,强化服务商的备案责任

16.5K10
您找到你想要的搜索结果了吗?
是的
没有找到

解决Android中自定义DialogFragment解决宽度和高度问题

是一种特殊的Fragment,用于在Activity的内容之上展示一个模态的对话框。典型的用于:展示警告框,输入框,确认框等等。...2、 好处与用法 使用DialogFragment来管理对话框,当旋转屏幕和按下后退键时可以更好的管理其声明周期,它和Fragment有着基本一致的声明周期。...且DialogFragment也允许开发者把Dialog作为内嵌的组件进行重用,类似Fragment(可以在大屏幕和小屏幕显示出不同的效果)。...下面通过示例代码给大家介绍下Android中自定义DialogFragment解决宽度和高度问题 Android中自定义DialogFragment解决宽度和高度问题但是我们很多时候想把DialogFragment....setLayout(DeviceUtil.getDeviceWidth(), ResUtils.dp2px(295)); } 设置DialogFrament 从底部弹出,并且弹出动画为向上滑出,消失动画为向下滑出

4.1K20

android推荐使用dialogFrament而不是alertDialog

DialogFragment在android 3.0时被引入。是一种特殊的Fragment,用于在Activity的内容之上展示一个模态的对话框。典型的用于:展示警告框,输入框,确认框等等。...2、 好处与用法 使用DialogFragment来管理对话框,当旋转屏幕和按下后退键时可以更好的管理其声明周期,它和Fragment有着基本一致的声明周期。...且DialogFragment也允许开发者把Dialog作为内嵌的组件进行重用,类似Fragment(可以在大屏幕和小屏幕显示出不同的效果)。...6、DialogFragment屏幕适配 我们希望,一个对话框在大屏幕上以对话框的形式展示,而小屏幕上则直接嵌入当前的Actvity中。这种效果的对话框,只能通过重写onCreateView实现。...可以看到,传统的Dialog旋转屏幕时就消失了,且后台log会报异常~~~使用DialogFragment则不受影响。 好了,关于DialogFragment的介绍结束~~~~ 源码点击下载

2.3K50

Android底部弹窗的实现示例代码

收获早知道 阅读完本文,你可以有以下收获 利用PopupWindow实现底部弹窗 PopupWindow实现底部弹窗时的缺点 解决利用PopupWindow实现底部弹窗,无法覆盖状态栏的问题 利用dialog...由于,我们要将mPopWindow放在整个屏幕的最低部,所以我们将R.layout.activity_main做为它的父容器,将其显示在BOTTOM的位置。...利用DialogFragment实现底部弹窗 在实现弹窗之前,先了解一下DialogFragment DialogFragment在android 3.0时被引入。...是一种特殊的Fragment,用于在Activity的内容之上展示一个模态的对话框。 使用DialogFragment至少需要实现onCreateView或者onCreateDIalog方法。...以上就是本文的全部内容,希望对大家的学习有所帮助。

4.2K31

仿iOS底部弹框实现及分析

我们就是单纯的引入我们写的布局,不做其他处理,我们运行发现界面效果如下图所示: ?...标题内容的上方有一块区域 我们弹框布局的底部的背景色默认是灰色 我们针对这二个先做处理: 其实我们上方的一块区域是弹框的标题, 我们在IOSDialogFragment中添加: ?...所以消失的时候我们不能单纯的让DialogFragment执行dismiss(),而是先让弹框执行下移的动画效果,然后再dismiss()。...刚开始超过屏幕,并且高度为弹框自身的高度,然后再回到原始位置,所以我们就用: ? 从原来的位置,增加了自身高度的距离为起始点,开始移动,然后再回到原来的位置。 消失动画: 只要跟上面反过来就可以了。...6 点击空白让弹框消失问题: 当点击上方一些空白处,我们会发现我们的弹框会直接消失,而不会像我们上面点击按钮点击事件那样,弹框先往下移动再消失,因为DialogFragment默认点击弹框外的时候

1.8K10

Android 屏幕旋转 处理 AsyncTask 和 ProgressDialog 的最佳方案

转载请表明出处:http://blog.csdn.net/lmj623565791/article/details/37936275 1、概述 众所周知,Activity在不明确指定屏幕方向和configChanges...时,当用户旋转屏幕会重新启动。...2、难点 假设当前Activity在onCreate中启动一个异步线程去夹在数据,当然为了给用户一个很好的体验,会有一个ProgressDialog,当数据加载完成,ProgressDialog消失,设置数据...这样,其实给我们带来一个很大的问题,DialogFragment说白了是Fragment,和当前的Activity的生命周期会发生绑定,我们旋转屏幕会造成Activity的销毁,当然也会对DialogFragment...声明引用指向你的有状态的对象 b) 当Fragment创建时调用setRetainInstance(boolean) c) 把Fragment实例添加到Activity中 d) 当Activity重新启动

2.1K20

项目需求讨论-仿ios底部弹框实现及分析

---- 实现弹框: 因为后来谷歌推荐使用的是DialogFragment,所以我们此处弹框也是使用DialogFragment。...---- 弹框从下而上显示: 我们看过ios的弹框效果,是从底部从下而上升起,然后消失的时候也是从上而下消失。...所以消失的时候我们不能单纯的让DialogFragment执行dismiss(),而是先让弹框执行下移的动画效果,然后再dismiss()。...刚开始超过屏幕,并且高度为弹框自身的高度,然后再回到原始位置,所以我们就用: Animation slide = new TranslateAnimation( Animation.RELATIVE_TO_SELF...我们会发现我们的弹框会直接消失,而不会像我们上面点击按钮点击事件那样,弹框先往下移动再消失,因为DialogFragment默认点击弹框外的时候,会直接dismiss,而不走我们的方法: ?

1.1K30

实践 | 为 Trackr app 适配大屏幕设备

△ 在大屏幕上的导航轨道 虽然是考虑到较大屏幕的设备而进行的此项更改,但由于腾出了更多的纵向空间来显示任务列表,横向模式显示的手机也能够因此受益。...在大屏幕上,UI 元素要么被拉伸,要么挤在一边,导致屏幕内容显得很不平衡。 △ 在手机上这样显示很自然,但在大屏幕上的空间利用率却不太理想。...△ 双窗格布局能更好地利用屏幕空间 编辑任务和新建任务 调整前 : 当您编辑一个任务时,编辑任务的界面会取代任务详细信息界面,并占据整个屏幕。和此前的任务详细信息界面一样,这样会使屏幕内容显得不平衡。...调整 : 在大尺寸屏幕上,我们使用了 DialogFragment,于是编辑任务的界面就悬浮在了其他内容之上。...我们还向您说明了为了更好满足用户的需求,您应该怎样围绕可用性而不仅是屏幕空间来重新思考您的设计。 我们希望您喜欢更新和改进的 Trackr 应用!您可以 查看源代码。

1.7K20

Android开发之DialogFragment用法实例总结

本文实例讲述了Android开发之DialogFragment用法。...分享给大家供大家参考,具体如下: 背景 Android 官方推荐使用 DialogFragment 来代替 Dialog ,可以让它具有更高的可复用性(降低耦合)和更好的便利性(很好的处理屏幕翻转的情况...方法 ②,一般用于创建复杂内容弹窗或全屏展示效果的场景,UI 复杂,功能复杂,一般有网络请求等异步操作。..., R.style.CustomDialog); } 处理屏幕翻转 如果使用传统的 Dialog ,需要我们手动处理屏幕翻转的情况,但使用 DialogFragment 的话,则不需要我们进行任何处理,...更多关于Android相关内容感兴趣的读者可查看本站专题:《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android基本组件用法总结》、《Android视图

1.5K20

Android 撸起袖子,自己封装 DialogFragment

本文的主要内容 DialogFragment 是什么 创建通用的 CommonDialogFragment 实现各种类型的 DialogFragment 在写正文之前,先来一波效果展示吧 ?...的内容之上显示一个静态的对话框。...基本一样的生命周期,使用 DialogFragment 来管理对话框,当旋转屏幕和按下后退键的时候可以更好的管理其生命周期 在手机配置变化导致 Activity 需要重新创建时,例如旋转屏幕,基于 DialogFragment...= null){ mCancelListener.onCancel(); } 这便是我们在构造函数中传入 OnCancelListener 的原因,当我们想要做一些取消对话框的处理时,只要在构造函数中传入...--不设置在6.0以上会出现,宽度不充满屏幕的情况--> 90% <!

1.2K41

Android 必知必会 - DialogFragment 使用总结

(很好的处理屏幕翻转的情况)。...方法 ②,一般用于创建复杂内容弹窗或全屏展示效果的场景,UI 复杂,功能复杂,一般有网络请求等异步操作。..., R.style.CustomDialog); } 处理屏幕翻转 如果使用传统的 Dialog ,需要我们手动处理屏幕翻转的情况,但使用 DialogFragment 的话,则不需要我们进行任何处理,...window.setAttributes(wlp); return rootView; } 代码 14 行设置了窗口的背景色为透明,这一步是必须的; 代码 15 行设置了窗口的 Pading 值全部为0,这一步也是必须的,内容不能填充全部宽度和高度...扩展阅读: 详细解读 DialogFragment Android Dialog/DialogFragment宽度高度修改/全屏,自定义样式 Full Screen DialogFragment in

3.8K31

三句代码创建全屏Dialog或者DialogFragment:带你从源码角度实现全屏Dialog

--desiredWindowWidth一般是屏幕的宽高--> childWidthMeasureSpec = getRootMeasureSpec(desiredWindowWidth,...Dialog,就是会之后就会利用MeasureSpec.makeMeasureSpec(windowSize, MeasureSpec.AT_MOST)生成RootMeasureSpec,也就是最大是屏幕尺寸...generateLayout创建根布局,Android系统默认实现了多种样式的根布局应,以应对不同的场景,选择的规则就是用户设置的主题样式(Window属性),比如需不需要Title,而布局样式在选定就不能再改变了...(大小可以),有些属性是选择布局文件的参考,如果是在setContentView之后再设定,就是失去了意义,另外Android也不允许在选定布局,设置一些影响布局选择的属性,会抛出异常,原理如下。...及rootView的设置,在上面的基础上有两点需要处理,一是:内容区域延展上去;二是:状态栏变成透明(不透明你也看不见啊),如何延展内容区域,参考全屏、沉浸式、fitSystemWindow使用及原理分析

3.1K40

Android如何自定义升级对话框示例详解

前言 本文主要给大家介绍了关于Android自定义升级对话框的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 实现的效果如下所示 ?...其实这也只是一个DialogFragment 而已,重点只是在于界面的设计 想要使用做出这样一个DialogFragment ,需要自定义一个View,然后将该View传入到该Dialog中 先定义布局...,一个TextView用于标题,一个TextView用于升级内容阐述,一个ImageView,一个确认升级的按钮 <?...可以看到 Dialog 中有较大的空白区,显得有点虚浮 这里可以选择在 VersionDialogFragment 的 onStart() 方法中指定 Dialog 所占屏幕宽度的比例 @Override...,希望本文的内容对各位Android开发者们的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对ZaLou.Cn的支持。

55321

解决Android开发中的痛点问题用Kotlin Flow

对于新技术新框架,我们不会盲目接入,在经过调研试用一阶段,发现Flow确实可以为业务开发止痛提效,下文分享这个探索的过程。...痛点一:蹩脚地处理ViewModel和View层通信 发现问题 当屏幕可旋转,LiveData不好用了?...MVVM时,其中一个典型的重构手段就是将Presenter中的回调写法改写成在ViewModel中持有LiveData由View层订阅,比如以下场景: 在大力自习室中,当老师切换至互动模式时,页面需要更改的同时还会弹出...observe,也就导致了每次旋转都会弹一遍Toast。...,比如LiveData防止因Activity停止时消费导致crash 方案一:阻塞队列 ViewModel持有阻塞队列,View层在主线程死循环读取队列内容

3.1K20

iOS OC swift 自定义 popover 泡泡

popover.gif 灰色区域 底层视图 棕色 popover 泡泡不能超出的区域,popover 是不能超出屏幕或者离屏幕太近,否则效果不好。...棕色区域是可以设置的 红色 底层箭头视图的边框 白色 底层箭头视图的背景颜色 蓝色 自定义内容区域,在此区域(contentView)可以添加希望展示的内容 加号按钮 模拟了 sourceView...可以看到当 sourceView(加号按钮) 在不同地方的时候,popover 自动更改方向、调整箭头方向、位置以适应不同的 sourceView 类说明 open class KKPopover: UIView...Bool /// 是否点击空白地方自动消失 /// 设置为 true 的时候,空白地方可以处理触摸事件 /// 当 touchThrough 为 true 的时候,此字段不起作用 arrowDirection...防止内容覆盖圆角 targetSize: CGSize /// 需要展示内容的大小,此字段一定需要重新设置 /// 并且宽高大小加上 minScreenEdg contentInset 不能大于屏幕宽高

2.6K70

项目需求讨论-APP手势解锁及指纹解锁

现在越来越多的APP在填入账号密码,第二次登录,基本不会再次重复输入账号密码了。而是快捷登录,而常用的就是 指纹解锁 和 手势解锁 二种. ---- 好了,我们就开始我们今天的解锁之旅。...这边我只是展示我的需求的逻辑,不同项目可能逻辑不同,不影响本文主要内容。 主要步骤就分三步: 账号密码登录。登录成功弹出一个弹框让用户选择快捷登录方式。...具体的大家去百度下DialogFragment即可。...{ super.onResume(); aty = (LoginActivity) getActivity(); //让我们的弹框无法点击外面区域消失...判断了是否有硬件支持,和手机是否有指纹之后,要注意,谷歌还需要判断当前设备必须是处于安全保护中的,即:你的设备必须是使用屏幕锁保护的,这个屏幕锁可以是password,PIN或者图案都行。

1.5K20

十一、飞机大战(IVX 快速开发教程)

90 度则为垂直向上运动,随后给与这个方向设置移动速度,设置为 -600 则为表示反方向运动,最后还需要开启自动播放才会生效: 接着我们预览将会发现已经成功的使该子弹反方向进行运动,此时还要注意要将子弹的固定旋转属性开启...: 此时再预览项目则会发现子弹会自动消失,但是顶部的物体存在边框和颜色,我们点击顶部组件,更改背景颜色的透明度为 0,再更改该组件的边框宽度为 0,该组件就可以从视觉上消失在这个页面之中: 接着我们开始为这个飞机主角添加移动事件...,X 值为随机x 变量值, Y 值给与一个固定值距离顶部一定距离即可: 此时敌机未击中将会掉落到屏幕底部,此时在底部添加一个透明的矩形组件命名为底部,敌机触发自动消失: 11.1.7 优化游戏...接下来创建一个变量记录击落敌机数量: 在子弹触碰到敌机时该数值加一: 我们在前台创建一个文本命名为击落,用于显示该变量值并且设置初始文本为 0: 之后在子弹触碰敌机时添加一个动作,将显示该变量的内容...: 此时预览内容将会实现计分效果: 最后在主角飞机中添加触碰到敌机时的动作: 以上事件当主角飞机触碰敌机使使用物理世界以及触发器执行暂停动作游戏则会停止。

1.3K30
领券