当windowTranslucentNavigation = true时,不能将TextView元素放在ExpandableListView上方

时间:2014-03-22 21:17:29

标签: android xml expandablelistview

我需要使用半透明的NavBar在此图像上使用smt:

enter image description here

但仅当 windowTranslucentNavigation false 时,它才有效。

main.xml中

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          xmlns:tools="http://schemas.android.com/tools"
          android:orientation="vertical"
          android:layout_width="fill_parent"
          android:layout_height="fill_parent">

<fragment android:layout_width="fill_parent"
          android:layout_height="fill_parent"
          android:id="@+id/elvMainFragment"
          android:name="com.example.ExpListView_Events.FragmentExpListView"
          tools:layout="@layout/elv_fragment"/>
</LinearLayout>

elv_fragment.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:orientation="vertical"
          android:layout_width="fill_parent"
          android:layout_height="fill_parent">

<TextView android:layout_width="fill_parent"
          android:layout_height="30dp"
          android:id="@+id/tvMainText"
          android:background="@android:color/holo_orange_dark"
          android:textColor="@android:color/white"
          android:textSize="18dp"
          android:text="Hello!"
          android:gravity="center"
        />

<ExpandableListView
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:id="@android:id/list"
        android:fitsSystemWindows="true"
        android:clipToPadding="false"/>
</LinearLayout>

style.xml

<resources>
 <style name="MyTheme" parent="android:Theme.Holo">
  <item name="android:windowTranslucentNavigation">true</item>
 </style>
</resources>

有没有使用填充/边距的想法?:)

1 个答案:

答案 0 :(得分:0)

我认为最简单的解决方案是使用 RelativeLayout 而不是 LinearLayout ,它&# 39;让你有机会说&#34; ExpandableListView TextView &#34下;

要做到这一点,你必须做那样的事情:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:layout_width="fill_parent"
          android:layout_height="fill_parent">

<TextView android:layout_width="fill_parent"
          android:layout_height="30dp"
          android:id="@+id/tvMainText"
          android:background="@android:color/holo_orange_dark"
          android:textColor="@android:color/white"
          android:textSize="18dp"
          android:text="Hello!"
          android:gravity="center"/>

<ExpandableListView
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:id="@android:id/list"
        android:fitsSystemWindows="true"
        android:layout_below="@id/tvMainText"
        android:clipToPadding="false"/>
</RelativeLayout>

(诀窍在这一行:)

android:layout_below="@id/tvMainText"

我没有测试它,但它应该有效:)