设置最大高度,有很多方法,我个人比较喜欢的是下面这种方式 ,这里的view即添加到

  view.addOnLayoutChangeListener(new View.OnLayoutChangeListener() {
@Override
public void onLayoutChange (View v, int left, int top, int right, int bottom, int oldLeft, int oldTop, int oldRight, int oldBottom) {
int height = view.getHeight();
int maxHeight = DensityUtils.dpToPx(mHomeActivity, 200);
if(height> maxHeight){
            //这里也可采用现获取layoutParams
view.setLayoutParams(new FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT,maxHeight));
//这里一定是frameLayout,不然会转换异常,由此可见alertdialog底层是frameLayout
} }
});

2.在dialog中含有recyclerView或者listview,用的relativeLayout,结果listview下面会被截取掉,这里应该这么处理

 view.addOnLayoutChangeListener(new View.OnLayoutChangeListener() {
@Override
public void onLayoutChange (View v, int left, int top, int right, int bottom, int oldLeft, int oldTop, int oldRight, int oldBottom) {
int height = mDeviceList.getHeight();
int maxHeight = DensityUtils.dpToPx(mHomeActivity, 200); if(height> maxHeight){
//必须首先获取控件的layoutParams,然后再更改,new一个不行
ViewGroup.LayoutParams layoutParams = mDeviceList.getLayoutParams();
layoutParams.height = maxHeight;
mDeviceList.setLayoutParams(layoutParams);
} }
});

这种方法会导致recyclerview的点击事件,不能及时响应。原因暂时不明

alertdialog 设置最大高度的更多相关文章

  1. css设置select高度(IE,FF,Chrome)[转]

    大家都知道select是无法设置高度和边框颜色等等的在ie67下面,其他的都是可以的,所以有时候为了在所有的浏览器下显示都一致,就使用了 js的模拟,这个是大家经常碰到的,js不光要模拟外观还有模拟事 ...

  2. [Android Pro] listView和GridView的item设置的高度和宽度不起作用

    referece to : http://blog.csdn.net/beibeixiao/article/details/9032569 1.     在Android开发中会发现,有时listVi ...

  3. jquery获取和设置元素高度宽度

    jquery获取和设置元素高度宽度 1.height()/ width() 取得第一个匹配元素当前计算的高度/宽度值(px) height(val)/ width(val) 为每个匹配的元素设置CSS ...

  4. Android PopupWindow 弹窗背景半透明,设置最大高度

    首先讲一个网上的方法: popupwindow弹出后,屏幕背景变成半透明这个效果很普通.实现的方法也很多.我使用的可能是最简单的一种,就是设置一下getWindows的透明度. /** * 设置添加屏 ...

  5. 外部div自适应内部标签的高度,设置最小高度、最大高度

    一.div自适应高度:在前端开发中经常需要让外层的div自动适应内部标签和内容的高度,内部标签可能是<div>.<ul>.<ol>或者文字等各种内容.造成外层的di ...

  6. ## GridView 布局:item设置的高度和宽度不起作用、自动适配列数、添加Header和Footer ##

    一.item设置的高度和宽度不起作用 转自:http://www.cnblogs.com/0616--ataozhijia/p/6031875.html [Android Pro] listView和 ...

  7. 设置frameset高度

      设置frameset的高度 设置frameset高度 目前做了一个项目,界面如下: 这是使用frameset做的,在宽屏下开发一直没有发现什么问题,直到一个用户使用800*600的机子测试的时候, ...

  8. uni-app swiper设置自定义高度

    话不多少先上图, 大家可以看到图片中红色区域是头部区域,黄色区域则是我们要滑动的区域. 大家可以在uni-app官网上看到swiper高度是默认100%,而swiper-item则是要有固定宽高的,要 ...

  9. AntV设置Chart高度

    AntV在使用柱状图时不能单独设置一个柱状图的宽度,但可以设置整体高度,宽度,代码如下 const chart = new F2.Chart({ id: 'c1', // 指定图表容器 ID widt ...

随机推荐

  1. DocX插件

    DocX是一个用C#编写的.NET库,它允许开发人员以简单直观的方式操作Word文件.

  2. 微信小程序demo——入门级(附源码)

    最近小程序又蠢蠢欲动,出了一个公众号绑定小程序功能,目测不错,就看了下微信小程序文档,顺便写了几行代码,后续有空会持续更新维护. 源码:https://github.com/SibreiaDante/ ...

  3. excel表格如何限制单元格输入内容

    一天一天实在太快,周六了~~~ 测试任务不太紧的时候就可以着手开始整理本月的测试项目,选择的是excel,清晰明了. 原来excel的功能远比我们想象的强大与好用,今天先介绍如何限制单元格内容: 如下 ...

  4. selenium 关键字驱动部分设计思路

    1 说明: 1.以下的代码亲测直接可用, 2.设计思路来自博客园的 张飞_ :http://www.cnblogs.com/zhangfei/p/5330994.html   /   http://w ...

  5. CentOS下Neo4j安装教程

    本文记录一下在CentOS 6.7上,安装neo4j图数据库,本文安装的版本为neo4j-community-2.3.9-unix.tar.gz. 下载Neo4j安装包 使用wget命令获取Neo4j ...

  6. 使用w3m访问页面执行函数

    Ubuntu系统中 在计划任务中使用 w3m命令访问地址 locahost/index.php,或许使用curl "locahost/index.php"来访问地址

  7. java 数据结构与算法---链表

    原理来自百度百科  一.链表的定义 链表是一种物理存储单元上非连续.非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的.链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运 ...

  8. linux下安装jenkins

    我们不用离线安装方式 第一步.必须验证java环境 第二步.我们这里使用yum命令进行在线安装,使用service命令进行启动 1.wget -O /etc/yum.repos.d/jenkins.r ...

  9. java的finally用法

    finally作为异常处理的一部分,它只能用在try/catch语句中,并且附带一个语句块,表示这段语句最终一定会被执行(不管有没有抛出异常),经常被用在需要释放资源的情况下. 之前在写爬虫的时候数据 ...

  10. Android Paging库使用详解

    Android分页包能够更轻易地在RecyclerView里面缓慢且优雅地加载数据. 许多应用从数据源消耗数据, 数据源里面有大量的数据, 但是一次却只展示一小部分. 分页包帮助应用观测和展示大量数据 ...