【问题标题】:Set listview header size programmatically以编程方式设置列表视图标题大小
【发布时间】:2012-09-11 08:02:43
【问题描述】:

我有一个带有标题的 ListView,我需要根据屏幕大小以编程方式设置标题大小。所以它几乎填满了整个屏幕。我怎样才能做到这一点?我找到了一种获取屏幕高度的方法,但它是显示屏的全高,包含手机状态栏高度。

【问题讨论】:

  • 看起来像我要搜索的内容吗?
  • 在该链接中,查看已解决的答案,该答案显示了如何生成列表视图的自定义标题。在那里你可以做 tamp 让你输出。
  • 它如何满足我的需求?我知道如何实现自定义列表行并添加标题。我需要知道通知栏的大小!

标签: android layout dimensions


【解决方案1】:

如果您通过膨胀布局将标题设置为 ListView,如下所示:

ListView lv = getListView();
LayoutInflater inflater = getLayoutInflater();
ViewGroup header = (ViewGroup)inflater.inflate(R.layout.header, lv, false);
lv.addHeaderView(header, null, false);

您可以使用 R.layout.header 更改布局的高度

header.setLayoutParams(params);

您可以在此处使用此代码获取通知或状态栏高度:

Height of statusbar?

【讨论】:

  • 问题主要不是关于设置高度,而是关于获取它。我可以获得显示器的全高(我的手机上为 480x800),但我需要将标题高度设置为 。所以我需要得到notificationBarHeight,因为我想它在不同的设备之间可能会有所不同。
  • 所以你得到了你的屏幕高度,smthElse,你只需要notificationBarHeight?我的意思是你到底想要什么高度?
  • 是的,你可能会说我需要notificationBarHeight。但我不想硬编码它,因为我想它可能因不同设备而异
  • 检查答案中提供的链接
猜你喜欢
  • 2015-10-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-08
  • 2020-05-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多