动态改变Android Listview的高度

2023-12-01

我的 XML 文件的格式如下:

 LinearLayout 

     ScrollView

         RelativeLayout

             LinearLayout

             <ListView
               android:id="@android:id/list"
               android:layout_width="match_parent"
               android:layout_height="fill_parent"
               android:layout_margin="5dip"
               android:layout_weight="30" >
             </ListView>

             LinearLayout

这是我的 BaseAdapter 类

public class APIQuickCheckoutProductProvider extends BaseAdapter {

private Activity activity;
private ArrayList<HashMap<String, String>> data;
private static LayoutInflater inflater = null;

public APIQuickCheckoutProductProvider(Activity a, ArrayList<HashMap<String, String>> d) {
    activity = a;
    data = d;
    inflater = (LayoutInflater) activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}

public int getCount() {
    return data.size();
}

public Object getItem(int position) {
    return position;
}

public long getItemId(int position) {
    return position;
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    View vi = convertView;
    if (convertView == null)
        vi = inflater.inflate(R.layout.product_item, null);

    TextView brand = (TextView) vi.findViewById(R.id.brands); 
    TextView quantity_name = (TextView) vi.findViewById(R.id.quantity_name); 

    TextView price = (TextView) vi.findViewById(R.id.price); 

    HashMap<String, String> product = new HashMap<String, String>();
    product = data.get(position);

    // Setting all values in listview
    brand.setText(product.get(APIQuickCheckout.KEY_BRAND));
    quantity_name.setText(product.get(APIQuickCheckout.KEY_QUANTITY_NAME));
    price.setText(product.get(APIQuickCheckout.KEY_PRICE));

    return vi;
}
}

这是我设置适配器的主类:

adapter = new APIQuickCheckoutProductProvider(APIQuickCheckout.this, productList);
lv.setAdapter(adapter);
adapter.notifyDataSetChanged();

最后这是我设置到列表视图的每一行

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="0dip"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:padding="5dip"
    android:layout_weight="7"
    android:weightSum="6" >

    <TextView
        android:id="@+id/brands"
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:layout_weight="3" />

    <TextView
        android:id="@+id/quantity_name"
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:layout_weight="3" />
  </LinearLayout>

  <LinearLayout
    android:layout_width="0dip"
    android:layout_height="wrap_content"
    android:layout_weight="1" />

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="0dip"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:padding="5dip"
    android:layout_weight="2"
    android:weightSum="6" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="0dip"
        android:layout_weight="3" />

    <TextView
        android:id="@+id/price"
        android:layout_width="wrap_content"
        android:layout_height="0dip"
        android:layout_weight="3" />
   </LinearLayout>

 </LinearLayout>

但是,当我尝试上述代码时,它显示第一个产品,而我只能看到第二个产品的顶部。从那时起我什么也看不到。那么,我怎样才能改变高度ListView当我添加新产品时动态?为了将它们全部显示出来。


如果你想动态改变列表视图的高度,你可以使用,

list.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, theSizeIWant));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

动态改变Android Listview的高度 的相关文章

随机推荐

  • 如何使用 JavaScript 获取整个文档的高度?

    有些文档我无法获取文档的高度 将某些内容绝对放置在最底部 此外 填充底部似乎在这些页面上没有任何作用 但在高度将返回的页面上起作用 相关案例 http fandango com http paperbackswap com 方丹戈jQuer
  • C# 使用 SMO 以编程方式创建数据库

    我正在尝试创建数据库 但创建后无法连接到它 服务器是Microsoft SQL Server 2008并使用 Net 4 5 我们使用 SMO 创建数据库 但我们通常使用Dapper连接并查询数据库 这是我到目前为止的代码 它有效 Syst
  • WebAPI OAuth 注销 - 如何删除令牌 Cookie?

    我有一个带有 OAuth 登录配置的 WebAPI 如下所示 app UseOpenIdConnectAuthentication new OpenIdConnectAuthenticationOptions ClientId client
  • 如何找到与正方形周长相交的 Voronoi 图的悬垂线的交点?

    我试图通过查找与定义的正方形周长相交的悬垂多边形线的交点来更新 Voronoi 的交点数组 我希望能够重新创建一个新的 Voronoi 交点数组 该数组应该用相交点替换那些悬垂点 下面是我为实验创建的一些代码 function grainn
  • 使用 iTextSharp 将图像转换为 PDF 并保留剪切路径

    我们希望以编程方式将图像批量转换为 PDF 到目前为止 我们似乎将使用 iTextSharp 但我们在使用剪切路径的 JPG 图像时遇到问题 我们在测试中使用以下代码 using FileStream fs new FileStream o
  • 删除 Postgresql 中连续的重复行

    我有一个包含 3 列 id 金额 时间 的表 该表根据id升序排列 我想删除除第一个之外在金额列中具有相同值的所有连续行 eg id 12 15 16 17 19 22 amount 555 546 546 53 53 500 time A
  • 通用Web表单的数据库设计

    我想构建一个通用网络表单的后端 其中包含用户可以回答的问题 问题有多种类型 普通 文本问题 通过简单的文本字段回答问题 Example 一般个人信息 例如姓名 文本区域问题 相同 但有更多空间来写答案 Example 您要添加的更多信息 框
  • 通过 Odoo 中的代码发送电子邮件时出错

    我创建了一个通过单击模块 linh warehoues 中的按钮 发送电子邮件 来发送电子邮件的函数 但出现以下错误 关系 mail thread 不存在 我实在不明白这是什么意思 我还检查了 mail thread py 中存在 mail
  • if 语句中的 getline

    从我读到的来看 getline 在布尔上下文中使用会返回隐式转换为void 我在网络上没有找到任何真正引用此声明的地方 它到处都说隐式转换不存在 并且在布尔上下文中指针应该是相同类型的 并且如果ptr 0 than 0转换为指针类型ptr
  • 检查嵌套字典内的成员资格

    这是此问题的后续问题 Python DictReader 跳过缺少列的行 事实证明我很愚蠢 并且使用了错误的 ID 字段 顺便说一句 我在这里使用的是 Python 3 x 我有一个员工字典 由字符串 directory id 索引 每个值
  • 获取Xamarin图库图像的路径?

    我正在尝试获取图库图像的路径 我正在获取存储在内部存储中但不是外部存储中的图像的路径 我还启用了已授予的读写存储和相机访问权限 这是我的代码 void ChoosePhoto try var imageIntent new Intent i
  • PHP 不区分大小写的 in_array 函数

    使用时是否可以进行不区分大小写的比较in array功能 因此 使用这样的源数组 a array one two three four 以下查找都将返回 true in array one a in array two a in array
  • NHaml 可以用作通用模板引擎吗? (MVC 之外)

    我见过很多人喜欢在 ASP NET MVC 中使用 NHaml 视图引擎 但我想知道 NHaml 是否可以用作 NET 中的通用模板引擎 我想在 ASP MVC 视图引擎环境之外从控制台应用程序使用 NHaml 或者生成 HTML 电子邮件
  • VS2012 - 服务器/数据库资源管理器中未显示“创建表”或“显示表数据”菜单选项[重复]

    这个问题在这里已经有答案了 可能的重复 让 Sql Server Data Tools 与 Visual Studio 2012 Express 候选版一起使用 我已经安装了 VS 2012 for Web 和 SQL Server 201
  • 正则表达式:匹配除特定模式之外的所有内容

    我需要一个能够匹配所有内容的正则表达式but以特定模式开头的字符串 具体而言index php以及接下来的内容 例如index php id 2342343 正则表达式 匹配所有内容but a string starting with a
  • laravel Eloquent ORM 多表插入

    我如何使用 laravel Eloquent ORM 关系发出单个请求来插入多个表 表1 用户 id name email 表 2 职位 id user id content 表 3 图像 id user id post id 图片名称 关
  • 在 powershell 中复制文件同时保留文件夹结构的正确方法是什么?

    我似乎永远无法把这件事做好 我有一个现有的文件夹c MyApps Websites MySite已经有一个正在运行的现有网站 我已经下载了位于以下的最新版本c temp MySite artifacts 当我尝试运行这个时 source c
  • 一个人的补足是一个现实世界的问题,还是一个历史问题?

    另一个问题询问如何确定 C 中的奇数 偶数 并且惯用的 x 1 方法被正确标记为损坏基于补语的C 标准允许的系统 系统真的存在于计算机博物馆之外的 现实世界 中吗 我从 20 世纪 70 年代就开始编码 而且我很确定我从未遇到过这样的野兽
  • 接到来电时如何调用活动。

    大家好 我想在默认来电活动上调用我自己的活动 我已经使用广播接收器完成了此操作 我在接到来电时调用我的活动 但当我第二次接到来电时 它第一次工作正常 然后默认来电活动将超过我的活动 我不知道问题是什么 有人可以帮助我吗 显现
  • 动态改变Android Listview的高度

    我的 XML 文件的格式如下 LinearLayout ScrollView RelativeLayout LinearLayout