2016-08-08 16 views
1

所以我正在工作的應用程序,它似乎工作正常。但是,當我運行三星Galaxy或Nexus 4這樣的小屏幕尺寸設備(僅5.5英寸及以下的屏幕尺寸)時,屏幕布局高度並未完全覆蓋,但佈局寬度正在調整。當在小尺寸屏幕上運行時,活動高度不被覆蓋

這裏是我的XML文件:

<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" 
    android:background="#de0c101e" 
    android:paddingTop="20dp" 
    tools:context="com.newleaf.calculator.MainActivity"> 


    <EditText 
     android:singleLine="true" 
     android:background="@android:color/transparent" 
     android:focusable="false" 
     android:text="0" 
     android:layout_marginRight="20dp" 
     android:minHeight="101dp" 
     android:textSize="86sp" 
     android:fontFamily="sans-serif-thin" 
     android:textColor="#deffffff" 
     android:layout_gravity="right" 
     android:id="@+id/txtScreen" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" /> 
    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:gravity="bottom" 
     android:orientation="vertical"> 
     <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal"> 
     <Button 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:id="@+id/btnClear" 
      android:minHeight="88dp" 
      android:background="@drawable/mybutton" 
      android:text="AC" 
      android:fontFamily="sans-serif-thin" 
      android:textColor="#de0c101e" 
      android:textSize="36sp"/> 
     <Button 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:minHeight="88dp" 
      android:id="@+id/plusminus" 
      android:fontFamily="sans-serif-thin" 
      android:layout_marginLeft="1dp" 
      android:layout_weight="1" 
      android:background="@drawable/mybutton" 
      android:text="+/-" 
      android:textColor="#de0c101e" 
      android:textSize="36sp"/> 
     <Button 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:minHeight="88dp" 
      android:layout_weight="1" 
      android:text="%" 
      android:id="@+id/modul" 
      android:fontFamily="sans-serif-thin" 
      android:layout_marginLeft="1dp" 
      android:layout_marginRight="1dp" 
      android:background="@drawable/mybutton" 
      android:textColor="#de0c101e" 
      android:textSize="36sp"/> 
     <Button 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:minHeight="88dp" 
      android:layout_weight="1" 
      android:text="/" 
      android:fontFamily="sans-serif" 
      android:id="@+id/btnDivide" 
      android:background="@drawable/orenge" 
      android:textColor="#deffffff" 
      android:textSize="36sp"/> 
    </LinearLayout> 
    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="1dp" 
     android:orientation="horizontal"> 
     <Button 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:background="@drawable/mybutton" 
      android:text="7" 
      android:fontFamily="sans-serif-light" 
      android:minHeight="88dp" 
      android:id="@+id/btnSeven" 
      android:textColor="#de0c101e" 
      android:textSize="36sp"/> 
     <Button 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:fontFamily="sans-serif-light" 
      android:id="@+id/btnEight" 
      android:layout_marginLeft="1dp" 
      android:background="@drawable/mybutton" 
      android:text="8" 
      android:minHeight="88dp" 
      android:textColor="#de0c101e" 
      android:textSize="36sp"/> 
     <Button 
      android:fontFamily="sans-serif-light" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:minHeight="88dp" 
      android:text="9" 
      android:layout_marginLeft="1dp" 
      android:layout_marginRight="1dp" 
      android:id="@+id/btnNine" 
      android:background="@drawable/mybutton" 
      android:textColor="#de0c101e" 
      android:textSize="36sp"/> 
     <Button 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:text="*" 
      android:fontFamily="sans-serif-light" 
      android:minHeight="88dp" 
      android:id="@+id/btnMultiply" 
      android:background="@drawable/orenge" 
      android:textColor="#deffffff" 
      android:textSize="36sp"/> 
    </LinearLayout> 
    <LinearLayout 
     android:layout_marginTop="1dp" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal"> 
     <Button 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:fontFamily="sans-serif-light" 
      android:id="@+id/btnFour" 
      android:background="@drawable/mybutton" 
      android:text="4" 
      android:minHeight="88dp" 
      android:textColor="#de0c101e" 
      android:textSize="36sp"/> 
     <Button 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:fontFamily="sans-serif-light" 
      android:minHeight="88dp" 
      android:background="@drawable/mybutton" 
      android:text="5" 
      android:layout_marginLeft="1dp" 
      android:id="@+id/btnFive" 
      android:textColor="#de0c101e" 
      android:textSize="36sp"/> 
     <Button 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:minHeight="88dp" 
      android:layout_weight="1" 
      android:text="6" 
      android:fontFamily="sans-serif-light" 
      android:layout_marginLeft="1dp" 
      android:layout_marginRight="1dp" 
      android:id="@+id/btnSix" 
      android:background="@drawable/mybutton" 
      android:textColor="#de0c101e" 
      android:textSize="36sp"/> 
     <Button 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:text="-" 
      android:fontFamily="sans-serif-light" 
      android:minHeight="88dp" 
      android:id="@+id/btnSubtract" 
      android:background="@drawable/orenge" 
      android:textColor="#deffffff" 
      android:textSize="36sp"/> 
    </LinearLayout> 
    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal" 
     android:layout_marginTop="1dp"> 
     <Button 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:minHeight="88dp" 
      android:id="@+id/btnOne" 
      android:background="@drawable/mybutton" 
      android:text="1" 
      android:fontFamily="sans-serif-light" 
      android:textColor="#de0c101e" 
      android:textSize="36sp"/> 
     <Button 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:background="@drawable/mybutton" 
      android:text="2" 
      android:fontFamily="sans-serif-light" 
      android:minHeight="88dp" 
      android:id="@+id/btnTwo" 
      android:layout_marginLeft="1dp" 
      android:textColor="#de0c101e" 
      android:textSize="36sp"/> 
     <Button 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:text="3" 
      android:fontFamily="sans-serif-light" 
      android:layout_marginLeft="1dp" 
      android:layout_marginRight="1dp" 
      android:id="@+id/btnThree" 
      android:minHeight="88dp" 
      android:background="@drawable/mybutton" 
      android:textColor="#de0c101e" 
      android:textSize="36sp"/> 
     <Button 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:minHeight="88dp" 
      android:text="+" 
      android:fontFamily="sans-serif-light" 
      android:id="@+id/btnAdd" 
      android:background="@drawable/orenge" 
      android:textColor="#deffffff" 
      android:textSize="36sp"/> 


    </LinearLayout> 
    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal" 
     android:layout_marginTop="1dp"> 
     <Button 
      android:minHeight="88dp" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:background="@drawable/mybutton" 
      android:text="0" 
      android:fontFamily="sans-serif-light" 
      android:id="@+id/btnZero" 
      android:textColor="#de0c101e" 
      android:textSize="36sp"/> 
     <Button 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="0.5" 
      android:minHeight="88dp" 
      android:fontFamily="sans-serif-light" 
      android:text="." 
      android:layout_marginLeft="1dp" 
      android:layout_marginRight="1dp" 
      android:id="@+id/btnDot" 
      android:background="@drawable/mybutton" 
      android:textColor="#de0c101e" 
      android:textSize="36sp"/> 
     <Button 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="0.5" 
      android:minHeight="88dp" 
      android:text="=" 
      android:fontFamily="sans-serif-light" 
      android:id="@+id/btnEqual" 
      android:background="@drawable/orenge" 
      android:textColor="#deffffff" 
      android:textSize="36sp"/> 
    </LinearLayout> 
    </LinearLayout> 
</LinearLayout> 

我認爲minHeight是竊喜problem.its不調整爲不同的屏幕尺寸,我知道有辦法通過每一個設備屏幕上添加不同的佈局來解決?我不想這樣做。有什麼辦法克服小屏幕尺寸minHeight問題?提前致謝。

+0

你有一個例子嗎? – Shaishav

+0

我發佈了XML文件alreday –

+0

*佈局差異的屏幕截圖。 – Shaishav

回答

1

使用佈局weights,以適應其在任何設備上查看下面的代碼:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="#de0c101e" 
    android:orientation="vertical" 
    android:paddingTop="20dp" 
    android:weightSum="10"> 


    <EditText 
     android:id="@+id/txtScreen" 
     android:layout_width="match_parent" 
     android:layout_height="0dip" 
     android:gravity="right" 
     android:layout_marginRight="20dp" 
     android:layout_weight="2" 
     android:background="@android:color/transparent" 
     android:focusable="false" 
     android:fontFamily="sans-serif-thin" 
     android:minHeight="101dp" 
     android:singleLine="true" 
     android:text="0" 
     android:textColor="#deffffff" 
     android:textSize="86sp" /> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="0dip" 
     android:layout_weight="8" 
     android:gravity="bottom" 
     android:orientation="vertical" 
     android:weightSum="10"> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="0dip" 
      android:layout_weight="2" 
      android:orientation="horizontal"> 

      <Button 
       android:id="@+id/btnClear" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_weight="1" 
       android:background="@drawable/mybutton" 
       android:fontFamily="sans-serif-thin" 
       android:minHeight="88dp" 
       android:text="AC" 
       android:textColor="#de0c101e" 
       android:textSize="36sp" /> 

      <Button 
       android:id="@+id/plusminus" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_marginLeft="1dp" 
       android:layout_weight="1" 
       android:background="@drawable/mybutton" 
       android:fontFamily="sans-serif-thin" 
       android:minHeight="88dp" 
       android:text="+/-" 
       android:textColor="#de0c101e" 
       android:textSize="36sp" /> 

      <Button 
       android:id="@+id/modul" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_marginLeft="1dp" 
       android:layout_marginRight="1dp" 
       android:layout_weight="1" 
       android:background="@drawable/mybutton" 
       android:fontFamily="sans-serif-thin" 
       android:minHeight="88dp" 
       android:text="%" 
       android:textColor="#de0c101e" 
       android:textSize="36sp" /> 

      <Button 
       android:id="@+id/btnDivide" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_weight="1" 
       android:background="@drawable/mybutton" 
       android:fontFamily="sans-serif" 
       android:minHeight="88dp" 
       android:text="/" 
       android:textColor="#deffffff" 
       android:textSize="36sp" /> 
     </LinearLayout> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="0dip" 
      android:layout_marginTop="1dp" 
      android:layout_weight="2" 
      android:orientation="horizontal"> 

      <Button 
       android:id="@+id/btnSeven" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_weight="1" 
       android:background="@drawable/mybutton" 
       android:fontFamily="sans-serif-light" 
       android:minHeight="88dp" 
       android:text="7" 
       android:textColor="#de0c101e" 
       android:textSize="36sp" /> 

      <Button 
       android:id="@+id/btnEight" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_marginLeft="1dp" 
       android:layout_weight="1" 
       android:background="@drawable/mybutton" 
       android:fontFamily="sans-serif-light" 
       android:minHeight="88dp" 
       android:text="8" 
       android:textColor="#de0c101e" 
       android:textSize="36sp" /> 

      <Button 
       android:id="@+id/btnNine" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_marginLeft="1dp" 
       android:layout_marginRight="1dp" 
       android:layout_weight="1" 
       android:background="@drawable/mybutton" 
       android:fontFamily="sans-serif-light" 
       android:minHeight="88dp" 
       android:text="9" 
       android:textColor="#de0c101e" 
       android:textSize="36sp" /> 

      <Button 
       android:id="@+id/btnMultiply" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_weight="1" 
       android:background="@drawable/mybutton" 
       android:fontFamily="sans-serif-light" 
       android:minHeight="88dp" 
       android:text="*" 
       android:textColor="#deffffff" 
       android:textSize="36sp" /> 
     </LinearLayout> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="0dip" 
      android:layout_marginTop="1dp" 
      android:layout_weight="2" 
      android:orientation="horizontal"> 

      <Button 
       android:id="@+id/btnFour" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_weight="1" 
       android:background="@drawable/mybutton" 
       android:fontFamily="sans-serif-light" 
       android:minHeight="88dp" 
       android:text="4" 
       android:textColor="#de0c101e" 
       android:textSize="36sp" /> 

      <Button 
       android:id="@+id/btnFive" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_marginLeft="1dp" 
       android:layout_weight="1" 
       android:background="@drawable/mybutton" 
       android:fontFamily="sans-serif-light" 
       android:minHeight="88dp" 
       android:text="5" 
       android:textColor="#de0c101e" 
       android:textSize="36sp" /> 

      <Button 
       android:id="@+id/btnSix" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_marginLeft="1dp" 
       android:layout_marginRight="1dp" 
       android:layout_weight="1" 
       android:background="@drawable/mybutton" 
       android:fontFamily="sans-serif-light" 
       android:minHeight="88dp" 
       android:text="6" 
       android:textColor="#de0c101e" 
       android:textSize="36sp" /> 

      <Button 
       android:id="@+id/btnSubtract" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_weight="1" 
       android:background="@drawable/mybutton" 
       android:fontFamily="sans-serif-light" 
       android:minHeight="88dp" 
       android:text="-" 
       android:textColor="#deffffff" 
       android:textSize="36sp" /> 
     </LinearLayout> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="0dip" 
      android:layout_marginTop="1dp" 
      android:layout_weight="2" 
      android:orientation="horizontal"> 

      <Button 
       android:id="@+id/btnOne" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_weight="1" 
       android:background="@drawable/mybutton" 
       android:fontFamily="sans-serif-light" 
       android:minHeight="88dp" 
       android:text="1" 
       android:textColor="#de0c101e" 
       android:textSize="36sp" /> 

      <Button 
       android:id="@+id/btnTwo" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_marginLeft="1dp" 
       android:layout_weight="1" 
       android:background="@drawable/mybutton" 
       android:fontFamily="sans-serif-light" 
       android:minHeight="88dp" 
       android:text="2" 
       android:textColor="#de0c101e" 
       android:textSize="36sp" /> 

      <Button 
       android:id="@+id/btnThree" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_marginLeft="1dp" 
       android:layout_marginRight="1dp" 
       android:layout_weight="1" 
       android:background="@drawable/mybutton" 
       android:fontFamily="sans-serif-light" 
       android:minHeight="88dp" 
       android:text="3" 
       android:textColor="#de0c101e" 
       android:textSize="36sp" /> 

      <Button 
       android:id="@+id/btnAdd" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_weight="1" 
       android:background="@drawable/mybutton" 
       android:fontFamily="sans-serif-light" 
       android:minHeight="88dp" 
       android:text="+" 
       android:textColor="#deffffff" 
       android:textSize="36sp" /> 


     </LinearLayout> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="0dip" 
      android:layout_marginTop="1dp" 
      android:layout_weight="2" 
      android:orientation="horizontal"> 

      <Button 
       android:id="@+id/btnZero" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_weight="1" 
       android:background="@drawable/mybutton" 
       android:fontFamily="sans-serif-light" 
       android:minHeight="88dp" 
       android:text="0" 
       android:textColor="#de0c101e" 
       android:textSize="36sp" /> 

      <Button 
       android:id="@+id/btnDot" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_marginLeft="1dp" 
       android:layout_marginRight="1dp" 
       android:layout_weight="0.5" 
       android:background="@drawable/mybutton" 
       android:fontFamily="sans-serif-light" 
       android:minHeight="88dp" 
       android:text="." 
       android:textColor="#de0c101e" 
       android:textSize="36sp" /> 

      <Button 
       android:id="@+id/btnEqual" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_weight="0.5" 
       android:background="@drawable/mybutton" 
       android:fontFamily="sans-serif-light" 
       android:minHeight="88dp" 
       android:text="=" 
       android:textColor="#deffffff" 
       android:textSize="36sp" /> 
     </LinearLayout> 
    </LinearLayout> 
</LinearLayout> 
+0

如果它有幫助,然後請打勾並投票。 –

+0

@Fajar可汗你不想要這些空間嗎? –

+0

是的,我不想要那些空間如何小屏幕之間沒有空間之間的佈局,它工作正常!謝謝 –

-1

將您的佈局添加到scrollview字段中。

<ScrollView > 
     .... 
     .... 
</ScrollView> 
+0

不,我不想添加滾動視圖我只是想適合高度小屏幕尺寸 –

0
  <EditText 
    android:singleLine="true" 
    android:background="@android:color/transparent" 
    android:focusable="false" 
    android:text="0" 
    android:textSize="86sp" 
    android:fontFamily="sans-serif-thin" 
    android:textColor="#deffffff" 
    android:layout_gravity="right" 
    android:id="@+id/txtScreen" 
    android:layout_width="@dimen/width" 
    android:layout_height="@dimen/height" /> 


    in values(change height and width vaules depending on screensize) folder put this 
     <dimen name="width">100dp</dimen> 
    <dimen name="hight">40dp</dimen>