这是我开发Android的第五天所以要温柔!
我正在尝试将两行三个按钮放入我的SlidingDrawer
,这是我到目前为止所得到的,但我无法理解为什么第二行按钮不可见?
<SlidingDrawer
android:id="@+id/SlidingDrawer"
android:layout_width="fill_parent"
android:layout_height="200dip"
android:content="@+id/drawerButtons"
android:handle="@+id/slideHandleButton" >
<Button
android:id="@+id/slideHandleButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/closearrow" />
<RelativeLayout
android:id="@+id/drawerButtons"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#80000000" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal" >
<Button
android:id="@+id/Button01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Test1" >
</Button>
<Button
android:id="@+id/Button02"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Test2" >
</Button>
<Button
android:id="@+id/Button03"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Test3" >
</Button>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal" >
<Button
android:id="@+id/Button04"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Test4" >
</Button>
<Button
android:id="@+id/Button05"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Test5" >
</Button>
<Button
android:id="@+id/Button06"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Test6" >
</Button>
</LinearLayout>
</RelativeLayout>
</SlidingDrawer>
第一行按钮按预期显示但我看不到第二行?只是空的空间。
任何帮助表示赞赏
答案 0 :(得分:2)
你已经在RelativeLayout中删除了两个LinearLayout,而没有给布局任何提示如何放置它的元素。因此,默认情况下,两个LinearLayouts将在RelativeLayout内的(0,0)处相互重叠。
一种解决方案是给顶部的LinearLayout一个id
android:id="@+id/topRow"
然后给LinearLayout一个提示,将其置于RelativeLayout
中android:layout_below="@id/topRow"
除此之外,您还必须将LinearLayouts的layout_height设置为wrap_content。否则,第一个LinearLayout仍会填充整个RelativeLayout,而另一个则位于屏幕外的下方。
其他解决方案:将LinearLayouts包含在LinearLayout中,方向垂直或使用GridLayout(&gt; = API级别14)。您还可以尝试缩小视图树并仅使用一个RelativeLayout并使用layout_below,layout_leftOf,...将元素放置在布局中。
答案 1 :(得分:0)
try this below code :
<LinearLayout
android:layout_width="fill_parent"
android:id="@+id/drawerButtons"
android:orientation="vertical"
<LinearLayout>
// your buttons
</LinearLayout>
<LinearLayout>
// your buttons
</LinearLayout>
</LinearLayout>