码迷,mamicode.com
首页 > 其他好文 > 详细

How to limit Dialog's max height?

时间:2014-07-18 16:30:52      阅读:451      评论:0      收藏:0      [点我收藏+]

标签:android   style   blog   color   io   cti   

1. We can make it to play trick in code. 

At Dialog‘s show function, after app has set contentView, we can add a GlobalLayoutListener on decorView‘s ViewTreeObserver. At the listener, we can check the decorView‘s height, if over the max height, just truncate it.

 1 private void resolveAlertDialogHeight() {
 2         WindowManager wm = (WindowManager) mContext
 3                 .getSystemService(Context.WINDOW_SERVICE);
 4         Display display = wm.getDefaultDisplay();
 5 
 6         Point size = new Point();
 7         display.getSize(size);
 8         int height = size.y;
 9 
10         final int maxHeight = (int) (height * 0.68);
11 
12         final View decorView = mWindow.getDecorView();
13         decorView.getViewTreeObserver().addOnGlobalLayoutListener(
14                 new OnGlobalLayoutListener() {
15                     @Override
16                     public void onGlobalLayout() {
17                         int actualHeight = decorView.getMeasuredHeight();
18 
19                         WindowManager.LayoutParams l = mWindow.getAttributes();
20                         if (actualHeight > maxHeight) {
21                             l.height = maxHeight;
22 
23                             mWindow.setAttributes(l);
24                         }
25 
26                         decorView.getViewTreeObserver()
27                                 .removeOnGlobalLayoutListener(this);
28                     }
29                 });
30     }

 

2. Modify windowBackground reference png.

The dot9 png referenced by android:windowBackground attr is the Dialog‘s background. We can modify this dot9 png, adding extra padding on top and bottom to limit the margin of Alert.

How to limit Dialog's max height?,布布扣,bubuko.com

How to limit Dialog's max height?

标签:android   style   blog   color   io   cti   

原文地址:http://www.cnblogs.com/haobo/p/3850830.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!