2017-06-12 54 views
-3

我有一個佈局,我想設置任何2項目的可見性去掉,當我設置佈局和浮動動作按鈕的可見性消失,然後浮動動作按鈕沒有正確安排。這裏是我的xml文件:如何將可視性設置爲「可見」或「可見」時安排線性佈局?

我設計這個樣子的

enter image description here

main.xml中

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:id="@+id/home" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical" 
    android:background="#a62c23" 
    > 
    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical"> 


     <android.support.design.widget.CoordinatorLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent"> 


     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:background="#a62c23" 
      android:orientation="vertical"> 
      <LinearLayout 
       android:id="@+id/viewA" 
       android:layout_width="match_parent" 
       android:layout_height="100dp" 
       android:layout_weight="1" 
       android:background="#a62c23" 

       android:orientation="horizontal"> 
       <LinearLayout 
        android:layout_width="0dp" 
        android:layout_weight="1" 
        android:layout_height="wrap_content" 
        android:orientation="vertical" 
        android:layout_gravity="center"> 
       <TextView 
        android:layout_width="wrap_content" 
        android:layout_gravity="center" 
        android:layout_height="wrap_content" 
        android:textSize="16dp" 
        android:textColor="#fff" 
        android:id="@+id/urintime" 
        android:gravity="center" 
        android:text="Your In Time" 
        android:layout_marginLeft="05dp" 
        /> 
        <TextView 
         android:layout_width="wrap_content" 
         android:layout_gravity="center" 
         android:layout_height="wrap_content" 
         android:textSize="16dp" 
         android:textColor="#fff" 
         android:gravity="center" 
         android:id="@+id/intimeshow" 
         android:layout_marginLeft="05dp" 
         /> 
        </LinearLayout> 
       <Button 
        android:layout_width="0dp" 
        android:layout_height="wrap_content" 
        android:layout_weight="1" 
        android:gravity="center" 
        android:layout_gravity="center" 
        android:text="In Time" 
        android:layout_marginRight="10dp" 
        android:textColor="#3645ab" 
        android:id="@+id/intime" 

        android:background="@drawable/buttonradius"/> 
       <Button 
        android:layout_width="0dp" 
        android:layout_height="wrap_content" 
        android:gravity="center" 
        android:layout_gravity="center" 
        android:layout_marginRight="10dp" 
        android:layout_weight="1" 
        android:text="Out Time" 
        android:textColor="#3645ab" 
        android:visibility="gone" 
        android:id="@+id/outime" 
        android:background="@drawable/buttonradius"/> 
       <LinearLayout 
        android:layout_width="0dp" 
        android:layout_weight="1" 
        android:layout_height="wrap_content" 
        android:orientation="vertical" 
        android:layout_gravity="center"> 
        <TextView 
         android:layout_width="wrap_content" 
         android:layout_gravity="center" 
         android:layout_height="wrap_content" 
         android:textSize="16dp" 
         android:textColor="#fff" 
         android:id="@+id/urouttime" 
         android:gravity="center" 
         android:text="Your Out Time" 
         android:layout_marginLeft="05dp" 
         /> 
        <TextView 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="current time" 
        android:textSize="16dp" 
        android:textColor="#fff" 
        android:layout_gravity="center" 
        android:gravity="center" 
        android:id="@+id/currenttime" 
        /> 
        </LinearLayout> 
      </LinearLayout> 


     <LinearLayout 
      android:id="@+id/viewB" 
      android:layout_width="match_parent" 
      android:layout_marginTop="10dp" 
      android:layout_weight="1" 
      android:layout_height="80dp" 
      android:gravity="center" 
      android:background="#dcba473e" 
      android:orientation="horizontal"> 
      <LinearLayout 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:orientation="vertical"> 
       <TextView 
        android:layout_width="match_parent" 
        android:text="00" 
        android:textColor="#e6e3e3" 
        android:id="@+id/complaincount" 
        android:gravity="end|bottom" 
        android:layout_gravity="center" 
        android:layout_marginTop="10dp" 
        android:textSize="30dp" 
        android:layout_marginRight="10dp" 
        android:layout_height="match_parent" /> 
       <TextView 
        android:layout_width="match_parent" 
        android:layout_height="match_parent" 
        android:text="Complains" 
        android:gravity="end|bottom" 
        android:textColor="#dad8d8" 
        android:layout_gravity="center" 
        android:layout_marginRight="10dp" 
        android:textSize="15dp" 
        /> 
      </LinearLayout> 

     </LinearLayout> 

      <LinearLayout 
       android:id="@+id/viewc" 
       android:layout_width="match_parent" 
       android:layout_marginTop="10dp" 
       android:layout_height="80dp" 
       android:gravity="center" 
       android:layout_weight="1" 


       android:background="#dcba473e" 
       android:orientation="horizontal"> 
       <LinearLayout 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:layout_gravity="center" 

        android:orientation="vertical"> 
        <TextView 
         android:layout_width="match_parent" 
         android:text="00" 
         android:textColor="#e6e3e3" 
         android:id="@+id/filecount" 
         android:gravity="end|bottom" 
         android:layout_gravity="center" 
         android:layout_marginTop="10dp" 
         android:textSize="30dp" 
         android:layout_marginRight="10dp" 
         android:layout_height="match_parent" /> 
        <TextView 
         android:layout_width="match_parent" 
         android:layout_height="match_parent" 
         android:text="Files" 
         android:gravity="end|bottom" 
         android:textColor="#dad8d8" 
         android:layout_gravity="center" 

         android:layout_marginRight="10dp" 
         android:textSize="15dp" 
         /> 
       </LinearLayout> 
      </LinearLayout> 

      <LinearLayout 
       android:id="@+id/viewd" 
       android:layout_width="match_parent" 
       android:layout_marginTop="10dp" 
       android:layout_height="80dp" 
       android:layout_weight="1" 

       android:background="#dcba473e" 
       android:gravity="center" 

       android:orientation="horizontal"> 
       <LinearLayout 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 

        android:orientation="vertical"> 

        <TextView 
         android:layout_width="match_parent" 
         android:text="00" 
         android:textColor="#e6e3e3" 
         android:id="@+id/visitcount" 
         android:gravity="end|bottom" 
         android:layout_gravity="center" 
         android:layout_marginTop="10dp" 
         android:textSize="30dp" 
         android:layout_marginRight="10dp" 
         android:layout_height="match_parent" /> 

        <TextView 
         android:layout_width="match_parent" 
         android:layout_height="match_parent" 
         android:text="Visit" 
         android:gravity="end|bottom" 
         android:textColor="#dad8d8" 
         android:layout_gravity="center" 
         android:layout_marginRight="10dp" 
         android:textSize="15dp" 
         /> 
       </LinearLayout> 
      </LinearLayout> 
      <LinearLayout 
       android:id="@+id/viewe" 
       android:layout_width="match_parent" 
       android:layout_marginTop="10dp" 
       android:layout_height="80dp" 
       android:layout_weight="1" 

       android:background="#dcba473e" 
       android:gravity="center" 

       android:orientation="horizontal"> 

       <LinearLayout 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 

        android:orientation="vertical"> 
        <TextView 
         android:layout_width="match_parent" 
         android:text="00" 
         android:textColor="#e6e3e3" 
         android:id="@+id/ordercount" 
         android:gravity="end|bottom" 
         android:layout_gravity="center" 
         android:layout_marginTop="10dp" 
         android:textSize="30dp" 
         android:layout_marginRight="10dp" 
         android:layout_height="match_parent" /> 
        <TextView 
         android:layout_width="match_parent" 
         android:layout_height="match_parent" 
         android:text="Order" 
         android:gravity="end|bottom" 
         android:textColor="#dad8d8" 
         android:layout_gravity="center" 
         android:layout_marginRight="10dp" 
         android:textSize="15dp" 
         /> 
       </LinearLayout> 
      </LinearLayout> 
     </LinearLayout> 
     <android.support.design.widget.FloatingActionButton 
      android:id="@+id/fab" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_margin="25dp" 
      android:clickable="true" 
      app:backgroundTint="#ff6b7d" 
      app:fabSize="normal" 
      android:src="@drawable/complain" 
      app:layout_anchor="@id/viewA" 
      app:layout_anchorGravity="bottom|left"/> 
     <android.support.design.widget.FloatingActionButton 
      android:id="@+id/fab1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_margin="25dp" 
      app:backgroundTint="#fbb570" 
      android:clickable="true" 
      app:fabSize="normal" 

      android:src="@drawable/fileicon" 
      app:layout_anchor="@id/viewB" 
      app:layout_anchorGravity="bottom|left"/> 
     <android.support.design.widget.FloatingActionButton 
      android:id="@+id/fab2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_margin="25dp" 
      android:clickable="true" 
      app:fabSize="normal" 
      app:backgroundTint="#5d9d83" 
      android:src="@drawable/coms" 
      app:layout_anchor="@id/viewc" 
      app:layout_anchorGravity="bottom|left"/> 
     <android.support.design.widget.FloatingActionButton 
      android:id="@+id/fab3" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_margin="25dp" 
      android:clickable="true" 
      app:fabSize="normal" 
      app:backgroundTint="#4972a6" 
      android:src="@drawable/iconorder" 
      app:layout_anchor="@id/viewd" 
      app:layout_anchorGravity="bottom|left|end"/> 

    </android.support.design.widget.CoordinatorLayout> 



    <TextView 
     android:layout_height="wrap_content" 
     android:layout_width="match_parent" 
     android:id="@+id/longitude1" 
     /> 
    <TextView 
     android:layout_height="wrap_content" 
     android:layout_width="match_parent" 
     android:id="@+id/cops" 
     /> 
    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:id="@+id/latitude1" 
     /> 
    </LinearLayout> 
</LinearLayout> 
+0

你試過了,'看不見'嗎?這使得相應的視野看不見,但是視圖仍然佔據佈局中的空間。 – MikeT

+0

y我也試過..但不工作 –

+0

如果我設置爲不可見然後空間正在佈局,但我不想要它 –

回答

0

您可以使用中的RelativeLayout並使用不可見來隱藏。

<LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:padding="4dp"> 

     <RelativeLayout 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent"> 

      <LinearLayout 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:orientation="vertical" 
       android:visibility="visible"> 
      </LinearLayout> 
     </RelativeLayout> 
</LinearLayout? 
0

你應該將它設置爲View.INVISIBLE而不是View.GONE

+0

nope它是隻是看不見的佈局,但仍然空間正在採取我想替換視圖.. –

+0

你想發送到哪個視圖/佈局隱形? –

+0

假設我爲ViewB(線性佈局)設置了可見性,爲浮動動作條(fab)設置了可見性,然後將浮動動作條替換爲視圖A的空間 –

0

嘗試切換到使用ConstraintLayout

它讓您完全控制中間的視圖「消失」後會發生什麼。

相關問題