2017-04-14 79 views
0

我改造我的應用程序遵循看起來更「材料設計-EY」,但遇到了與FAB的麻煩。我有兩個浮動的操作按鈕滾動型:滾動視圖上的浮動操作按鈕?


當我滾動至底部,該晶圓廠覆蓋我的內容。我希望能夠滾動一點點過去的底部,這樣的晶圓廠可以align_parent_bottom不重疊的任何東西:

Picture speaks a thousand words :)(應該可以滾動多一點晶圓廠將在下面排列)


enter image description here(之前向下滾動)

如何創建在我的應用程序底部向下滾動到最大的晶圓廠休息後,額外的空間?

<?xml version="1.0" encoding="utf-8"?> 

<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:background="#68d9cc"> 

    <ScrollView 

     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:fillViewport="true"> 

<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:background="#68d9cc"> 



    <android.support.v7.widget.Toolbar 
     android:id="@+id/toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="?attr/actionBarSize" 
     android:background="@color/colorPrimary" 
     android:elevation="20dp" 
     android:theme="@style/ThemeOverlay.AppCompat.ActionBar" 
     app:popupTheme="@style/ThemeOverlay.AppCompat.Light"> 

     <ImageView 
      android:layout_height="match_parent" 
      android:layout_width="wrap_content" 
      android:id="@+id/back" 

      android:onClick="cancel" 

      android:src="@drawable/ic_arrow_back_black_24dp" /> 

     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="Test example" 
      android:textSize="22sp" 
      android:id="@+id/header" 
      android:textColor="@color/textColorPrimary" 
      android:layout_gravity="center" 
      android:paddingRight="10dp" 
      /> 


    </android.support.v7.widget.Toolbar> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal" 
     android:id="@+id/linear" 
     android:layout_marginBottom="55dp" 
     android:layout_below="@+id/textView12" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true"> 

     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:textSize="20sp" 
      android:textColor="@android:color/black" 
      android:layout_below="@+id/textView12" 

      android:text="textview:" 
      android:layout_alignParentLeft="true" 
      android:layout_alignParentStart="true" /> 

     <EditText 
      android:id="@+id/editText" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_alignBaseline="@+id/textView4" 
      android:layout_alignBottom="@+id/textView4" 

      android:layout_toEndOf="@+id/textView4" 
      android:layout_toRightOf="@+id/textView4" 
      android:imeOptions="actionDone" 
      android:inputType="text" /> 
    </LinearLayout> 

    <ListView 
     android:id="@+id/listview" 
     android:layout_width="wrap_content" 
     android:choiceMode="singleChoice" 
     android:layout_height="300dp" 
     android:layout_below="@+id/toolbar" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" 
     android:elevation="9dp"> 

    </ListView> 

    <TextView 
     android:id="@+id/textView12" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="78dp" 
     android:gravity="center_horizontal" 
     android:text="textview" 
     android:textColor="#000000" 
     android:textSize="18sp" 
     android:layout_below="@+id/listview" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" /> 

</RelativeLayout> 

</ScrollView> 

    <android.support.design.widget.FloatingActionButton 
     android:id="@+id/cancel" 
     android:onClick="cancel" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentBottom="true" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" 
     android:clickable="true" 
     app:fabSize="normal" 
     app:srcCompat="@drawable/ic_close_black_24dp" 
     /> 

    <android.support.design.widget.FloatingActionButton 
     android:id="@+id/done" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentBottom="true" 
     android:layout_alignParentEnd="true" 
     android:layout_alignParentRight="true" 
     android:clickable="true" 
     app:fabSize="normal" 
     app:srcCompat="@drawable/ic_done_black_24dp" 
     /> 

    </RelativeLayout> 

回答

0

如果您正如您所提到的那樣瞄準材料設計,那麼不鼓勵那些浮動操作按鈕。可以將它們堆疊在右邊的頂部,也可以在點擊時打開多個迷你FAB。

一個簡單的辦法,但是我能想到的在這裏將paddingBottom來添加到您的佈局,將有更多的「內容」,它更會向上滾動。

,如果你還沒有我會讀這一節。

https://material.io/guidelines/components/buttons-floating-action-button.html#

+0

我應該添加多少個paddingBottom?它不會基於不同的屏幕尺寸精確地對吧? –

+0

是的,不同的設備都會有不同的DPS。所以你可以做的是不是一個FAB的身高和體重是「WRAP_CONTENT」將它設置爲56 X 56dp(這是材料設計FAB提及的默認大小)和paddingBottom來也將是56dp爲好。 – Kia