有没有办法将布局高度和宽度设置为固定,即使在元素可见性内部也是如此:<?p>
我有2个listviews。当应用程序启动时,它们在
中 android:visibility="gone"
state。然后当按钮单击时它变得可见。但是在显示布局时会重新调整大小。(这些布局作为DialogFragments运行)。如何停止重新调整大小并为布局提供固定的宽度和高度。
这是我的布局文件
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:minWidth="500dp"
android:minHeight="600dp"
android:background="#ffffff"
android:shrinkColumns="*"
android:stretchColumns="*" >
<TableRow
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:layout_marginTop="10dp"
android:gravity="center_horizontal">
<Button
android:id="@+id/cus_add_cancel_btn"
android:layout_width="50dp"
android:layout_height="25dp"
android:textSize="15dp"
android:gravity="center"
android:textColor="@color/White"
android:background="@drawable/menu_button_border"
android:text="Cancel" />
<TextView
android:id="@+id/pagerow"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center"
android:text="Add Customer"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textStyle="bold" />
<Button
android:id="@+id/cus_add_save_btn"
android:layout_width="50dp"
android:layout_height="25dp"
android:gravity="center"
android:background="@drawable/menu_button_border"
android:text="Save"
android:textSize="15dp"
android:textColor="@color/White" />
</TableRow>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TableRow
android:id="@+id/tablseRoere"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:gravity="center_horizontal" >
<TextView
android:id="@+id/tesxtViewere"
android:layout_width="fill_parent"
android:layout_height="2dp"
android:layout_marginTop="5dp"
android:background="@drawable/redbar_separator"
android:textAppearance="?android:attr/textAppearanceMedium"
/>
</TableRow>
<TableRow
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
>
<Button
android:id="@+id/cus_add_window_btn"
android:layout_width="160dp"
android:layout_height="30dp"
android:textColor="@color/Red"
android:background="@drawable/button_border_clicked"
android:layout_marginTop="10dp"
android:gravity="center"
android:text="Add New" />
<Button
android:id="@+id/cus_search_btn"
android:layout_width="160dp"
android:layout_height="30dp"
android:layout_marginTop="10dp"
android:textColor="@color/White"
android:background="@drawable/button_border_right"
android:gravity="center"
android:text="Search" />
</TableRow>
<TableRow
android:id="@+id/tableRoeeeree"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal" >
<TextView
android:id="@+id/textViewrerere"
android:layout_width="fill_parent"
android:layout_height="2dp"
android:layout_marginTop="10dp"
android:background="@drawable/redbar_separator"
android:textAppearance="?android:attr/textAppearanceMedium"
/>
</TableRow>
<TableRow
android:id="@+id/search_window_item1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal" >
<EditText
android:id="@+id/cus_searchtxt"
android:layout_weight="1"
android:background="@drawable/lost_focus_style"
android:ems="10"
android:gravity="left"
android:hint="Search Customer"
android:inputType="textPersonName" />
<TextView
android:id="@+id/TextVijewgh"
android:layout_width="90dp"
android:layout_height="wrap_content"
android:gravity="center"
android:visibility="gone"
android:text="C-D" />
</TableRow>
<TableRow
android:id="@+id/search_window_item2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal" >
<ListView
android:id="@+id/cus_list"
android:background="#ffffff"
android:visibility="gone"
android:layout_height="400dp"
android:layout_weight="1"
android:gravity="left"
/>
<ListView
android:id="@+id/pages"
android:layout_width="30dp"
android:layout_height="300dp"
android:visibility="gone"
android:gravity="right"
/>
</TableRow>
<TableRow
android:id="@+id/addnew_window_item1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:gravity="center_horizontal" >
<TextView
android:id="@+id/fn"
android:layout_weight="1"
android:gravity="left"
android:layout_marginLeft="5dp"
android:text="First Name"
android:textAppearance="?android:attr/textAppearanceSmall" />
<TextView
android:id="@+id/ln"
android:layout_weight="1"
android:gravity="left"
android:text="Last Name"
android:textAppearance="?android:attr/textAppearanceSmall" />
<TextView
android:id="@+id/s1"
android:layout_width="90dp"
android:layout_height="wrap_content"
android:gravity="center"
android:visibility="gone"
android:text="A-B" />
</TableRow>
<TableRow
android:id="@+id/addnew_window_item2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal" >
<EditText
android:id="@+id/cus_fnametxt"
android:layout_weight="1"
android:gravity="left"
android:layout_marginLeft="5dp"
android:background="@drawable/lost_focus_style"
android:hint="First Name" />
<TextView
android:id="@+id/s10"
android:layout_width="10dp"
android:layout_height="wrap_content"
android:gravity="center"
/>
<EditText
android:id="@+id/cus_lnametxt"
android:layout_weight="1"
android:gravity="left"
android:paddingRight="5dp"
android:background="@drawable/lost_focus_style"
android:hint="Last Name" />
<TextView
android:id="@+id/s2"
android:layout_width="90dp"
android:layout_height="wrap_content"
android:gravity="center"
android:visibility="gone"
android:text="C-D" />
</TableRow>
<TableRow
android:id="@+id/addnew_window_item3"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:gravity="center_horizontal" >
<TextView
android:id="@+id/srt"
android:layout_weight="1"
android:gravity="left"
android:text="Street"
android:layout_marginLeft="5dp"
android:textAppearance="?android:attr/textAppearanceSmall" />
<TextView
android:id="@+id/lsn"
android:layout_weight="1"
android:gravity="left"
android:text=""
android:textAppearance="?android:attr/textAppearanceSmall" />
<TextView
android:id="@+id/s3"
android:layout_width="90dp"
android:layout_height="wrap_content"
android:gravity="center"
android:visibility="gone"
android:text="E-F" />
</TableRow>
<TableRow
android:id="@+id/addnew_window_item4"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal" >
<EditText
android:id="@+id/cus_streettxt"
android:layout_weight="1"
android:gravity="left"
android:layout_marginLeft="5dp"
android:paddingRight="10dp"
android:background="@drawable/lost_focus_style"
android:hint="Street" />
<TextView
android:id="@+id/s4"
android:layout_width="90dp"
android:layout_height="wrap_content"
android:gravity="center"
android:visibility="gone"
android:text="G-H" />
</TableRow>
<TableRow
android:id="@+id/addnew_window_item5"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:gravity="center_horizontal" >
<TextView
android:id="@+id/dn"
android:layout_weight="1"
android:gravity="left"
android:text="Door No"
android:layout_marginLeft="5dp"
android:textAppearance="?android:attr/textAppearanceSmall" />
<TextView
android:id="@+id/city"
android:layout_weight="1"
android:gravity="left"
android:text="City"
android:textAppearance="?android:attr/textAppearanceSmall" />
<TextView
android:id="@+id/s5"
android:layout_width="90dp"
android:layout_height="wrap_content"
android:gravity="center"
android:visibility="gone"
android:text="I-J" />
</TableRow>
<TableRow
android:id="@+id/addnew_window_item6"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal" >
<EditText
android:id="@+id/cus_doortxt"
android:layout_weight="1"
android:gravity="left"
android:layout_marginLeft="5dp"
android:background="@drawable/lost_focus_style"
android:hint="Door No" />
<TextView
android:id="@+id/s1s0"
android:layout_width="10dp"
android:layout_height="wrap_content"
android:gravity="center"
/>
<EditText
android:id="@+id/cus_citytxtt"
android:layout_weight="1"
android:gravity="left"
android:background="@drawable/lost_focus_style"
android:hint="City" />
<TextView
android:id="@+id/s6"
android:layout_width="90dp"
android:layout_height="wrap_content"
android:gravity="center"
android:visibility="gone"
android:text="K-L" />
</TableRow>
<TableRow
android:id="@+id/addnew_window_item7"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:gravity="center_horizontal" >
<TextView
android:id="@+id/pc"
android:layout_weight="1"
android:gravity="left"
android:text="Postal Code"
android:layout_marginLeft="5dp"
android:textAppearance="?android:attr/textAppearanceSmall" />
<TextView
android:id="@+id/em"
android:layout_weight="1"
android:gravity="left"
android:text="Email"
android:textAppearance="?android:attr/textAppearanceSmall" />
<TextView
android:id="@+id/s7"
android:layout_width="90dp"
android:layout_height="wrap_content"
android:gravity="center"
android:visibility="gone"
android:text="M-N" />
</TableRow>
<TableRow
android:id="@+id/addnew_window_item8"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal" >
<EditText
android:id="@+id/cus_postalcodetxt"
android:layout_weight="1"
android:gravity="left"
android:layout_marginLeft="5dp"
android:background="@drawable/lost_focus_style"
android:hint="Postal Code" />
<TextView
android:id="@+id/sss10"
android:layout_width="10dp"
android:layout_height="wrap_content"
android:gravity="center"
/>
<EditText
android:id="@+id/cus_emailtxt"
android:layout_weight="1"
android:gravity="left"
android:background="@drawable/lost_focus_style"
android:hint="Email" />
<TextView
android:id="@+id/s8"
android:layout_width="90dp"
android:layout_height="wrap_content"
android:gravity="center"
android:visibility="gone"
android:text="O-P" />
</TableRow>
<TableRow
android:id="@+id/addnew_window_item9"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:gravity="center_horizontal" >
<TextView
android:id="@+id/phn"
android:layout_weight="1"
android:gravity="left"
android:text="Contact Number"
android:layout_marginLeft="5dp"
android:textAppearance="?android:attr/textAppearanceSmall" />
<TextView
android:id="@+id/lssn"
android:layout_weight="1"
android:gravity="left"
android:text=""
android:textAppearance="?android:attr/textAppearanceSmall" />
<TextView
android:id="@+id/s9"
android:layout_width="90dp"
android:layout_height="wrap_content"
android:gravity="center"
android:visibility="gone"
android:text="Q-T" />
</TableRow>
<TableRow
android:id="@+id/addnew_window_item10"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal" >
<EditText
android:id="@+id/cus_contactno_txt"
android:layout_weight="1"
android:gravity="left"
android:background="@drawable/lost_focus_style"
android:inputType="phone"
android:layout_marginLeft="5dp"
android:hint="Contact Number" />
<TextView
android:id="@+id/ss10"
android:layout_width="90dp"
android:layout_height="wrap_content"
android:gravity="center"
android:visibility="gone"
android:text="U-Z" />
</TableRow>
</LinearLayout>
答案 0 :(得分:1)
尝试这样。在起始位置两个虚拟视图,并根据您的需要启用和禁用视图。在开始时创建list visibility = "gone"
和view visibility = "visible"
。并在按钮单击时反转它。 / p>
<TableRow
android:id="@+id/search_window_item2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:weightSum="1">
<ListView
android:id="@+id/cus_list"
android:background="#ffffff"
android:visibility="gone"
android:layout_width="0dp"
android:layout_height="400dp"
android:layout_weight=".5"
android:layout_gravity="left"
/>
<View
android:id="@+id/view1"
android:background="#ffffff"
android:visibility="visible"
android:layout_width="0dp"
android:layout_height="400dp"
android:layout_weight=".5"
android:layout_gravity="left"/>
<ListView
android:id="@+id/pages"
android:layout_width="0dp"
android:layout_height="300dp"
android:layout_weight=".5"
android:visibility="gone"
android:layout_gravity="right"
/>
<View
android:id="@+id/view2"
android:background="#ffffff"
android:visibility="visible"
android:layout_width="0dp"
android:layout_height="400dp"
android:layout_weight=".5"
android:layout_gravity="left"/>
</TableRow>