Android LinearLayout分频器,但百分比?
作者:互联网
在happy.xml中我有一个LinearLayout …
<LinearLayout
android:orientation="vertical"
android:divider="@drawable/happy_spacer"
android:showDividers="middle"
...>
这是文件happy_spacer.xml …
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<size android:height="8dp" />
<solid android:color="#90909090" />
</shape>
太棒了,垫片高8dp.
但是你不能在响应的世界里那样工作,间隔的高度必须是它所在页面高度的一定百分比.
(或者,它必须 – 比如说 – 与happy.xml上的其他东西的高度有关.)
什么是Android解决方案?
(重要 – 正如Charuka在下面解释的那样,在这种情况下你几乎肯定想要“px”物理像素,而不是dp或dip.)
对于现代Android,apk 21仅向前.
解决方法:
通常,至少根据我的经验,列表项目分隔符是静态高度.在任何情况下,我认为你不能使用XML将它作为屏幕高度的百分比,但你可以使用setDividerHeight()
以编程方式;虽然你必须自己根据百分比来计算大小.
否则,您可以使用resource qualifiers根据特定的break points调整大小;例如h720dp(最小高度为720dp)或w600dp(最小宽度为600dp).
标签:android,android-linearlayout,xml-layout 来源: https://codeday.me/bug/20190727/1553244.html