android:layout_height=";匹配“家长”;在API上忽略列表中的项<;11
我有一个简单的列表视图显示一些内容。有一个真正的内容视图android:layout_height=";匹配“家长”;在API上忽略列表中的项<;11,android,android-listview,Android,Android Listview,我有一个简单的列表视图显示一些内容。有一个真正的内容视图@+id/conetnt和一个视图@+id/service\u disabled,只是为了在项目被禁用时显示一些奇特的背景。 禁用视图的背景应绘制在内容的顶部。这就是不为内容视图使用背景状态选择器的原因 内容视图的高度因项目而异。我基本上希望禁用的视图高度与内容视图的高度相同 但无论我尝试什么,在API=11上,一切都很好 我的列表项布局: <?xml version="1.0" encoding="utf-8"?> <F
@+id/conetnt
和一个视图@+id/service\u disabled
,只是为了在项目被禁用时显示一些奇特的背景。
禁用视图的背景应绘制在内容的顶部。这就是不为内容视图使用背景状态选择器的原因
内容视图的高度因项目而异。我基本上希望禁用的视图高度与内容视图的高度相同
但无论我尝试什么,在API=11上,一切都很好
我的列表项布局:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout android:id="@+id/content"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_vertical"
android:orientation="horizontal"
android:padding="@dimen/service_item_padding">
<!-- views... -->
</LinearLayout>
<View android:id="@+id/service_disabled"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/bg_disabled_service_repeat"/>
</FrameLayout>
如何在API上解决这个问题您是专门为旧API版本编译的吗?您测试过哪些API版本
它可以简单到不正确的命名。MATCH_PARENT是API 8及更高版本上使用的名称,但如果您使用的是API 7或更早版本(Android 2.1 Eclair或更早版本),则应使用常量填充_PARENT。想想看:ListView项的父项是什么,其高度是多少?使列表视图项等于其父级高度将使整个列表视图无效
您可能希望列表行布局的高度为
wrap\u content
,这不是问题所在。我刚刚把它添加到问题中:minSdk=9、targetSdk=18和match_parent
和fill_parent
是一样的,在编译代码中解析为-1
。只是您不能在未定义的较旧SDK上使用match\u parent
,而fill\u parent
会在较新SDK上发出弃用警告。@laalto:我指的不是编译代码,我指的是编译时。但你是对的,在编译后的代码中,它被翻译成了相同的值。@laalto:这个问题现在被更新以澄清这一点,但当我回答时,并不清楚这是否与编译问题有关。请尽量帮助回答这个问题,而不是试图开始无关的辩论。这就是我为什么要写的原因:我希望两个内部视图的大小相同。你是否用“填充父视图”替换了所有“匹配父视图”并尝试了?是的,我尝试了,但没有成功。