博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android:设置布局参数LayoutParams
阅读量:6171 次
发布时间:2019-06-21

本文共 3637 字,大约阅读时间需要 12 分钟。

在adapter的getView中给view设置布局参数时,使用下面方法:

LayoutParams params = new LayoutParams(                        LayoutParams.FILL_PARENT,                        (int) (metrics.heightPixels * 0.23f + 0.5f));                convertView.setLayoutParams(params);

程序会出现错误

06-08 15:39:43.071: E/AndroidRuntime(610): java.lang.ClassCastException: android.view.ViewGroup$LayoutParams06-08 15:39:43.071: E/AndroidRuntime(610):     at android.widget.ListView.setupChild(ListView.java:1688)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.widget.ListView.makeAndAddView(ListView.java:1661)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.widget.ListView.fillDown(ListView.java:637)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.widget.ListView.fillFromTop(ListView.java:694)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.widget.ListView.layoutChildren(ListView.java:1516)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.widget.AbsListView.onLayout(AbsListView.java:1112)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.view.View.layout(View.java:6569)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1119)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.widget.LinearLayout.layoutHorizontal(LinearLayout.java:1108)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.widget.LinearLayout.onLayout(LinearLayout.java:920)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.view.View.layout(View.java:6569)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1119)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.widget.LinearLayout.layoutVertical(LinearLayout.java:998)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.widget.LinearLayout.onLayout(LinearLayout.java:918)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.view.View.layout(View.java:6569)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.widget.FrameLayout.onLayout(FrameLayout.java:333)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.view.View.layout(View.java:6569)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.widget.FrameLayout.onLayout(FrameLayout.java:333)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.view.View.layout(View.java:6569)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.view.ViewRoot.performTraversals(ViewRoot.java:979)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.view.ViewRoot.handleMessage(ViewRoot.java:1613)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.os.Handler.dispatchMessage(Handler.java:99)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.os.Looper.loop(Looper.java:123)06-08 15:39:43.071: E/AndroidRuntime(610):     at android.app.ActivityThread.main(ActivityThread.java:4203)06-08 15:39:43.071: E/AndroidRuntime(610):     at java.lang.reflect.Method.invokeNative(Native Method)06-08 15:39:43.071: E/AndroidRuntime(610):     at java.lang.reflect.Method.invoke(Method.java:521)06-08 15:39:43.071: E/AndroidRuntime(610):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791)06-08 15:39:43.071: E/AndroidRuntime(610):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:549)

但最后设置如下时:

ViewGroup.LayoutParams param = convertView.getLayoutParams();                param.height = (int) (metrics.heightPixels * 0.20f + 0.5f);                convertView.setLayoutParams(param);

就OK。

  里也是一样的情况

 

给LinearLayout设置LayoutParams时用初始的方法则没有问题

 

 

 

本文转自老Zhan博客园博客,原文链接:http://www.cnblogs.com/mybkn/archive/2012/06/08/2542581.html,如需转载请自行联系原作者

你可能感兴趣的文章
WCF服务的IIS托管(网站托管)
查看>>
【Aaronyang原创】用linq取出一个集合中重复的数据
查看>>
滚屏动作使用小技巧
查看>>
Cookie和Session的区别
查看>>
java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: Java he
查看>>
C# Winform中WndProc 函数作用
查看>>
DES,AeS加解密,MD5,SHA加密
查看>>
FusionInsight大数据开发学习总结(1)
查看>>
Mac下Chrome浏览器的手机模拟器,开启模拟定位
查看>>
移动端车牌识别sdk开发包(可下载)
查看>>
并发03--创建线程的方法
查看>>
mock.js接口测试
查看>>
Algs4-2.3.30极端情况-各种分布排列时的快排性能
查看>>
Js中call apply函数以及this用法
查看>>
pycharm同一目录下无法import明明已经存在的.py文件
查看>>
python 邮件发送
查看>>
RFKILL 调研
查看>>
解决 emoji表情存入数据库为' ??? '
查看>>
hausaufgabe--python 36-- Basic knowledge of Class
查看>>
redis 常用命令
查看>>