Android:使用单击按钮在单个相对布局中创建两个linearlayout

时间:2013-04-19 08:11:57

标签: java android xml android-linearlayout relativelayout

在我的单屏android项目中(仅使用一个XML文件)当我按下button1然后linerlayout1打开,当我按下button2然后linearlayout2打开。我的button1和button2被放置在linearlayout3.can它工作??如果是怎么?? 提前致谢。

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

       <LinearLayout
       android:id="@+id/linearLayout1"
       android:layout_width="fill_parent"
       android:layout_height="50dp"
       android:layout_above="@+id/linearLayout3"
       android:layout_alignParentLeft="true"
       android:layout_alignParentRight="true"
       android:layout_alignParentTop="true"
       android:orientation="vertical" >

      <RadioButton
      android:id="@+id/radioButton3"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="@string/linearLayout1" />

     <RadioButton
      android:id="@+id/radioButton4"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="@string/linearLayout1" />



     </LinearLayout>

     <LinearLayout
     android:id="@+id/linearLayout3"
     android:layout_width="fill_parent"
     android:layout_height="50dp"
     android:layout_alignParentBottom="true"
     android:layout_alignParentRight="true" >

    <Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/Button1" />

    <Button
    android:id="@+id/button2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/Button2" />


   </LinearLayout>

   <LinearLayout
   android:id="@+id/linearLayout2"
   android:layout_width="fill_parent"
   android:layout_height="50dp"
   android:layout_alignParentBottom="true"
   android:layout_alignParentLeft="true"
   android:orientation="vertical" >

    <RadioButton
    android:id="@+id/radioButton13"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/linearLayout2" />

    <RadioButton
    android:id="@+id/radioButton14"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/linearLayout2" />


        </LinearLayout>

        </RelativeLayout>

3 个答案:

答案 0 :(得分:0)

是的,这很简单:

最初使用android:Visibility XML标记,当按下每个相应按钮时,您将获得对LinearLayout的引用,并将其可见性设置为VISIBLE或{{ 1}}代码。

注意:您希望使用GONE而不是GONE,因为INVISIBILE仍将占用屏幕空间,因此之前会有一大块空白区域,而我认为你希望它们代替彼此

答案 1 :(得分:0)

在线性布局1和2的布局xml中,使用

android:visibility="gone"

来自代码

LinearLayout l1 = (LinearLayout) findViewById(R.id.linearLayout2);

您可以使用以下内容使其可见

l1.setVisibility(View.VISIBLE);

并隐藏它

l1. setVisibility(View.GONE):

答案 2 :(得分:0)

您可以使用布局的“setVisibility”属性。 在“onCreate()”方法中,您可以执行类似这样的操作

LinearLayout layout1 = (LinearLayout) view.findViewById(R.id.linearLayout1);
layout1.setVisibility(View.GONE);

然后按下按钮

layout1.setVisibility(View.VISIBLE);