在ListView的Adapter中去直接获取传入View的LayoutParams是会报空指针异常的,唯一的方法是在xml中嵌套布局一层LinearLayout

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:background="@drawable/subject_item_bg"
android:orientation="vertical" >
<!-- 这层需要嵌套 -->
<LinearLayout
android:id="@+id/subject_ll"
android:layout_width="fill_parent"
android:layout_height="120dp"
android:orientation="vertical" > <ImageView
android:id="@+id/subject_ico"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight=""
android:layout_margin="5dp"
android:scaleType="fitXY"
android:src="@drawable/woji" /> <TextView
android:id="@+id/subject_title"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight=""
android:layout_marginLeft="10dp"
android:singleLine="true"
android:text="曾经啊减肥的撒飞机 合集合集合集肥的撒飞机 合肥的撒飞机 合"
android:textColor="#000000"
android:textSize="18sp" />
</LinearLayout> </LinearLayout>

然后再在Adapter的getView中去动态改变即可,关键代码:

if (view == null) {
view = getActivity().getLayoutInflater().inflate(
R.layout.subject_list_item, null);
holder = new ViewHolder();
LinearLayout ll = (LinearLayout)view.findViewById(R.id.subject_ll);
holder.tvTitle = (TextView) view
.findViewById(R.id.subject_title);
holder.imgIco = (ImageView) view.findViewById(R.id.subject_ico); LayoutParams linearParams = (LayoutParams) ll
.getLayoutParams();
linearParams.height = screenWidth * / ;
// linearParams.gravity = Gravity.CENTER_VERTICAL;
ll.setLayoutParams(linearParams);
view.setTag(holder);
} else {
holder = (ViewHolder) view.getTag();
}

【Android多屏适配】动态改变Listview item高度的更多相关文章

  1. android 动态改变listview的内容

    本文模拟:点击一个按钮,为已有的listview添加一行数据 <?xml version="1.0" encoding="utf-8"?> < ...

  2. Unity与Android刘海屏适配

    本周学习Unity与Android刘海屏适配 关于刘海屏适配部分 网上有很多教程 这里只是做一下整理 https://blog.csdn.net/xj1009420846/article/detail ...

  3. 实现ScrollView中包含ListView,动态设置ListView的高度

    ScrollView 中包含 ListView 的问题 : ScrollView和ListView会冲突,会导致ListView显示不全 <?xml version="1.0" ...

  4. 动态替换iframe的src及动态改变iframe的高度

    实现效果:点击左侧右侧内容变化,但左侧保持不变(如折叠等) 动态替换iframe的src <iframe width="100%" frameBorder="0&q ...

  5. js动态改变iframe的高度

    js动态改变iframe的高度的写法 〈iframe id="docDetail" width="100%"  height="200"   ...

  6. Android中Selector的用法(改变ListView和Button的默认背景)

    Android中的Selector的用法 http://blog.csdn.net/shakespeare001/article/details/7788400#comments Android中的S ...

  7. Android刘海屏适配 ----- ImmersionBar

    android 4.4以上沉浸式状态栏和沉浸式导航栏管理,适配横竖屏切换.刘海屏.软键盘弹出等问题,可以修改状态栏字体颜色和导航栏图标颜色,以及不可修改字体颜色手机的适配,适用于Activity.Fr ...

  8. Android 动态获取ListView的高度

    public static void setListViewHeightBasedOnChildren(ListView listView) { ListAdapter listAdapter = l ...

  9. Android 多屏适配解决方式

    1.主流手机必要測量的參数(通过详细的方法.測量出,须要測试手机的 以下的这些參数,我们主要使用的仅仅是 screenwidth  这个參数,其它參数仅仅是帮助我们更好的理解 屏幕适配) Displa ...

随机推荐

  1. sqlalchemy - day1

    一.Create engine Database url规则: dialect+driver://username:password@host:port/database echo: True表示cm ...

  2. JSON对象配合jquery.tmpl.min.js插件,手动攒出一个table

    jquery.tmpl.min.js 首先下载这个插件 1.绑定json那头的键 //TemplateDDMX 这个是这段JS的ID,这个必须写!!!!!! //${}为json的键的值,必须要填写正 ...

  3. Oracle 的证也会过期咯

    How does this recertification requirement affect me? If your Database Certification credential is re ...

  4. C# 命名参数【转】

    命名参数(Named Arguments)就是说在调用函数时可以通过指定参数名称的方式来调用参数.它最大的好处就是方便调用参数时按调用者的需要来排列顺序,而不必死守函数声明时的顺序(相对于“位置参数” ...

  5. 数据的增量更新之EXISTS

    有时候需要实现是数据的增量更新,因为更新全量会带来时间跟数据库资源的浪费,还有可能是数据出现冗余,所以需要使用增量数据同步,下面是一个数据增量同步的小实例. ---drop table A CREAT ...

  6. (C学习基础)一,CMD的使用

    以后考研要考数据结构,所以系统的整理一下C学习笔记.这里开发用VS2013  CMD资料在这里下载 首先就是DOS系统的CMD的使用,是不是觉得会命令行语句的人特别牛呢,有时候使用命令行总是事半功倍, ...

  7. Apache网站根目录

    Apache环境配置好了,把项目放到网站根目录下的htdocs文件夹下,运行网站的时候不需要加上该文件夹的名称,Apache直接在上面找对应的项目

  8. nodejs redis

    0. install redis library for node npm install redis 1.node command example > var _redis = require ...

  9. Leetcode#79 Word Search

    原题地址 依次枚举起始点,DFS+回溯 代码: bool dfs(vector<vector<char> > &board, int r, int c, string ...

  10. MemSQL Start[c]UP 2.0 - Round 2 - Online Round

    搞到凌晨4点一个没出,要gg了. A. Golden System http://codeforces.com/contest/458/problem/A #include<cstdio> ...