2017-07-18 48 views
0

我有這種形式,當軟鍵盤打開時,屏幕不會調整大小,也不會調整它。android - 調整調整大小和滾動視圖不與edittext一起工作

我真的很想知道爲什麼。爲什麼我的視圖不滾動?爲什麼不調整大小?

這是我的xml:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="vertical" 
android:fitsSystemWindows="true" 

> 


<ScrollView 
    android:layout_width="match_parent" 
    android:fillViewport="true" 
    android:layout_height="wrap_content"> 

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

     <RelativeLayout 
      android:id="@+id/relativeLayout" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:background="#fff"> 

      <android.support.v7.widget.Toolbar 
       android:id="@+id/toolbar" 
       android:layout_width="match_parent" 
       android:layout_height="10dp" 
       android:background="@android:color/transparent" 
       android:visibility="invisible" 
       app:navigationIcon="@drawable/ic_left_arrow" 
       app:popupTheme="@style/ThemeOverlay.AppCompat.Light"> 

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

      <ImageView 
       android:id="@+id/imageView9" 
       android:layout_width="180dp" 
       android:layout_height="70dp" 
       android:layout_alignParentLeft="true" 
       android:layout_alignParentStart="true" 
       android:layout_below="@+id/toolbar" 
       android:layout_gravity="center_vertical|center_horizontal" 
       android:layout_marginLeft="10dp" 
       android:src="@drawable/logo" /> 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_alignLeft="@+id/imageView9" 
       android:layout_alignParentEnd="true" 
       android:layout_alignParentRight="true" 
       android:layout_alignStart="@+id/imageView9" 
       android:layout_below="@+id/imageView9" 
       android:layout_marginLeft="15dp" 
       android:paddingBottom="6dp" 
       android:text="OFERTAR OU \nSIMULAR LANCE" 
       android:textColor="#eb262a" 
       android:textSize="20sp" 
       android:textStyle="bold" /> 

     </RelativeLayout> 

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

      <LinearLayout 
       android:id="@+id/linearLayout2" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_margin="15dp" 
       android:orientation="horizontal"> 


       <RadioButton 
        android:id="@+id/livre" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_weight="1" 
        android:text="Lance Livre" /> 

       <RadioButton 
        android:id="@+id/fixo" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_weight="1" 
        android:text="Lance Fixo" /> 
      </LinearLayout> 

      <LinearLayout 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_below="@+id/linearLayout2" 
       android:layout_marginLeft="15dp" 
       android:layout_marginRight="15dp" 
       android:orientation="vertical"> 

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

        <RelativeLayout 
         android:layout_width="match_parent" 
         android:layout_height="match_parent" 
         android:layout_weight="1"> 

         <android.support.design.widget.TextInputLayout 
          android:id="@+id/text_input_layout" 
          android:layout_width="match_parent" 
          android:layout_height="wrap_content" 
          android:hint="Percentual do lance"> 

          <EditText 
           android:id="@+id/percent" 
           android:layout_width="wrap_content" 
           android:layout_height="wrap_content" 
           android:layout_toLeftOf="@+id/textView12" 
           android:layout_toStartOf="@+id/textView12" 
           android:ems="10" 
           android:inputType="numberDecimal" 
           android:nextFocusDown="@+id/value" 
           android:textSize="14dp" /> 

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

         <TextView 
          android:id="@+id/textView12" 
          android:layout_width="25dp" 
          android:layout_height="wrap_content" 
          android:layout_alignParentEnd="true" 
          android:layout_alignParentRight="true" 
          android:layout_centerVertical="true" 
          android:text="%" 
          android:textColor="#000" 
          android:textSize="16dp" 
          android:textStyle="bold" /> 

        </RelativeLayout> 

        <RelativeLayout 
         android:layout_width="match_parent" 
         android:layout_height="match_parent" 
         android:layout_weight="1"> 

         <android.support.design.widget.TextInputLayout 
          android:id="@+id/text_input_layout2" 
          android:layout_width="match_parent" 
          android:layout_height="wrap_content" 
          android:hint="Valor do lance"> 

          <EditText 
           android:id="@+id/value" 
           android:layout_width="match_parent" 
           android:layout_height="wrap_content" 
           android:ems="10" 
           android:inputType="numberDecimal" 
           android:textSize="14dp" /> 

         </android.support.design.widget.TextInputLayout> 
        </RelativeLayout> 

       </LinearLayout> 

       <android.support.design.widget.TextInputLayout 
        android:id="@+id/text_input_layout3" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:layout_marginTop="20dp" 
        android:hint="Número do Protocolo"> 

        <EditText 
         android:id="@+id/protocol" 
         android:layout_width="match_parent" 
         android:layout_height="wrap_content" 
         android:ems="10" 
         android:inputType="number" 
         android:textSize="14dp" /> 
       </android.support.design.widget.TextInputLayout> 
      </LinearLayout> 
     </RelativeLayout> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_marginLeft="15dp" 
      android:layout_marginRight="15dp" 
      android:layout_marginTop="30dp" 
      android:orientation="horizontal" 
      android:weightSum="10"> 

      <Button 
       android:id="@+id/limpar" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_weight="5" 
       android:backgroundTint="@android:color/holo_red_light" 
       android:text="Limpar" 
       android:textColor="#ffffff" 
       android:visibility="visible" /> 

      <Button 
       android:id="@+id/simular" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_weight="5" 
       android:backgroundTint="@android:color/holo_red_light" 
       android:text="Simular" 
       android:textColor="#ffffff" 
       android:visibility="visible" /> 

      <Button 
       android:id="@+id/registrar" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_weight="5" 
       android:backgroundTint="@android:color/holo_red_light" 
       android:text="Registrar" 
       android:textColor="#ffffff" 
       android:visibility="gone" /> 
     </LinearLayout> 

     <TextView 
      android:id="@+id/label" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginLeft="15dp" 
      android:layout_marginRight="15dp" 
      android:layout_marginTop="20dp" 
      android:text="Lance Fixo é definido em 30%" 
      android:textAlignment="center" 
      android:textColor="#000" 
      android:textSize="16sp" 
      android:visibility="gone" /> 
    </LinearLayout> 
</ScrollView> 
</LinearLayout> 

我已經嘗試設置match_parent以滾動型。 而我在清單android:windowSoftInputMode="stateAlwaysHidden|adjustResize"中有這個。

回答

0

加入這一行活動要調整上打開軟鍵盤:

android:windowSoftInputMode="adjustResize" 

更新後:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       xmlns:app="http://schemas.android.com/apk/res-auto" 
       xmlns:tools="http://schemas.android.com/tools" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:orientation="vertical" 
       android:fitsSystemWindows="true" 

    > 


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

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:orientation="vertical"> 

      <RelativeLayout 
       android:id="@+id/relativeLayout" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:background="#fff"> 

       <android.support.v7.widget.Toolbar 
        android:id="@+id/toolbar" 
        android:layout_width="match_parent" 
        android:layout_height="10dp" 
        android:background="@android:color/transparent" 
        android:visibility="invisible" 
        app:navigationIcon="@drawable/ic_left_arrow" 
        app:popupTheme="@style/ThemeOverlay.AppCompat.Light"> 

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

       <ImageView 
        android:id="@+id/imageView9" 
        android:layout_width="180dp" 
        android:layout_height="70dp" 
        android:layout_alignParentLeft="true" 
        android:layout_alignParentStart="true" 
        android:layout_below="@+id/toolbar" 
        android:layout_gravity="center_vertical|center_horizontal" 
        android:layout_marginLeft="10dp" 
        android:src="@drawable/logo"/> 

       <TextView 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_alignLeft="@+id/imageView9" 
        android:layout_alignParentEnd="true" 
        android:layout_alignParentRight="true" 
        android:layout_alignStart="@+id/imageView9" 
        android:layout_below="@+id/imageView9" 
        android:layout_marginLeft="15dp" 
        android:paddingBottom="6dp" 
        android:text="OFERTAR OU \nSIMULAR LANCE" 
        android:textColor="#eb262a" 
        android:textSize="20sp" 
        android:textStyle="bold"/> 

      </RelativeLayout> 

      <RelativeLayout 
       android:layout_width="match_parent" 
       android:layout_height="0dp" 
       android:layout_weight="1"> 

       <LinearLayout 
        android:id="@+id/linearLayout2" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:layout_margin="15dp" 
        android:orientation="horizontal"> 


        <RadioButton 
         android:id="@+id/livre" 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:layout_weight="1" 
         android:text="Lance Livre"/> 

        <RadioButton 
         android:id="@+id/fixo" 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:layout_weight="1" 
         android:text="Lance Fixo"/> 
       </LinearLayout> 

       <LinearLayout 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:layout_below="@+id/linearLayout2" 
        android:layout_marginLeft="15dp" 
        android:layout_marginRight="15dp" 
        android:orientation="vertical"> 

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

         <RelativeLayout 
          android:layout_width="match_parent" 
          android:layout_height="match_parent" 
          android:layout_weight="1"> 

          <android.support.design.widget.TextInputLayout 
           android:id="@+id/text_input_layout" 
           android:layout_width="match_parent" 
           android:layout_height="wrap_content" 
           android:hint="Percentual do lance"> 

           <EditText 
            android:id="@+id/percent" 
            android:layout_width="wrap_content" 
            android:layout_height="wrap_content" 
            android:layout_toLeftOf="@+id/textView12" 
            android:layout_toStartOf="@+id/textView12" 
            android:ems="10" 
            android:inputType="numberDecimal" 
            android:nextFocusDown="@+id/value" 
            android:textSize="14dp"/> 

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

          <TextView 
           android:id="@+id/textView12" 
           android:layout_width="25dp" 
           android:layout_height="wrap_content" 
           android:layout_alignParentEnd="true" 
           android:layout_alignParentRight="true" 
           android:layout_centerVertical="true" 
           android:text="%" 
           android:textColor="#000" 
           android:textSize="16dp" 
           android:textStyle="bold"/> 

         </RelativeLayout> 

         <RelativeLayout 
          android:layout_width="match_parent" 
          android:layout_height="match_parent" 
          android:layout_weight="1"> 

          <android.support.design.widget.TextInputLayout 
           android:id="@+id/text_input_layout2" 
           android:layout_width="match_parent" 
           android:layout_height="wrap_content" 
           android:hint="Valor do lance"> 

           <EditText 
            android:id="@+id/value" 
            android:layout_width="match_parent" 
            android:layout_height="wrap_content" 
            android:ems="10" 
            android:inputType="numberDecimal" 
            android:textSize="14dp"/> 

          </android.support.design.widget.TextInputLayout> 
         </RelativeLayout> 

        </LinearLayout> 

        <android.support.design.widget.TextInputLayout 
         android:id="@+id/text_input_layout3" 
         android:layout_width="match_parent" 
         android:layout_height="wrap_content" 
         android:layout_marginTop="20dp" 
         android:hint="Número do Protocolo"> 

         <EditText 
          android:id="@+id/protocol" 
          android:layout_width="match_parent" 
          android:layout_height="wrap_content" 
          android:ems="10" 
          android:inputType="number" 
          android:textSize="14dp"/> 
        </android.support.design.widget.TextInputLayout> 
       </LinearLayout> 
      </RelativeLayout> 

      <LinearLayout 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginLeft="15dp" 
       android:layout_marginRight="15dp" 
       android:layout_marginTop="30dp" 
       android:orientation="horizontal" 
       android:weightSum="10"> 

       <Button 
        android:id="@+id/limpar" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:layout_weight="5" 
        android:backgroundTint="@android:color/holo_red_light" 
        android:text="Limpar" 
        android:textColor="#ffffff" 
        android:visibility="visible"/> 

       <Button 
        android:id="@+id/simular" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:layout_weight="5" 
        android:backgroundTint="@android:color/holo_red_light" 
        android:text="Simular" 
        android:textColor="#ffffff" 
        android:visibility="visible"/> 

       <Button 
        android:id="@+id/registrar" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:layout_weight="5" 
        android:backgroundTint="@android:color/holo_red_light" 
        android:text="Registrar" 
        android:textColor="#ffffff" 
        android:visibility="gone"/> 
      </LinearLayout> 

      <TextView 
       android:id="@+id/label" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginLeft="15dp" 
       android:layout_marginRight="15dp" 
       android:layout_marginTop="20dp" 
       android:text="Lance Fixo é definido em 30%" 
       android:textAlignment="center" 
       android:textColor="#000" 
       android:textSize="16sp" 
       android:visibility="gone"/> 
     </LinearLayout> 
    </ScrollView> 
</LinearLayout> 
+0

已經在我的清單中有這一個。 'android:windowSoftInputMode =「stateAlwaysHidden | adjustResize」' – LMaker

+0

@LuanGabriel我的帖子已更新,測試 –

0

如果要調整活動時鍵盤彈出你需要在清單文件中指定一行代碼在活動標記內:

android:windowSoftInputMode="adjustResize" 

請參閱此鏈接瞭解更多詳情:https://developer.android.com/training/keyboard-input/visibility.html

你甚至可以嘗試調整屏幕活動把下面的代碼在你活動onCreate方法:

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE|WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); 

希望這應該幫助!

+0

已經在我的清單中有這個。 android:windowSoftInputMode =「stateAlwaysHidden | adjustResize」 – LMaker

+0

嘗試在xml文件中更新這行代碼android:fitsSystemWindows =「false」 –

+0

沒有任何變化 – LMaker

0

我發現了這個問題。我使用的是<item name="android:windowFullscreen">true</item> ,當全屏標誌激活時,resize不起作用。

0

如果您對應用程序或活動使用「FULLSCREEN」主題,那麼「調整大小」功能將不起作用,您應該在沒有「FULLSCREEN」的情況下使用「NoTitleBar」主題。 它將工作100%。 你應該使用「RelativeLayout」代替父佈局(主線性佈局)。

+0

雅,我已經注意到花了一些時間試圖解決這個:( – LMaker