2015-08-03 2 views
2

Я новичок в программировании на Android. Я написал небольшое приложение. Но когда я запустил его на экран устройства 4,7" выглядит небольшой Как я могу это сделать автомасштабирование для различных размеров экранаИзменение размера макета зависит от размера экрана

Мой XML:.?

<?xml version="1.0" encoding="utf-8"?> 
 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
 
    android:orientation="vertical" 
 
    android:weightSum="100" 
 
    android:layout_width="wrap_content" 
 
    android:layout_height="wrap_content" 
 
    android:minWidth="25px" 
 
    android:minHeight="25px"> 
 
    <FrameLayout 
 
     android:layout_width="wrap_content" 
 
     android:layout_height="267.9dp" 
 
     android:weight="100" 
 
     android:id="@+id/frameLayout1"> 
 
     <ImageView 
 
      android:src="@drawable/fone" 
 
      android:layout_width="match_parent" 
 
      android:layout_height="match_parent" 
 
      android:scaleType="centerCrop" 
 
      android:id="@+id/imageView1" /> 
 
     <LinearLayout 
 
      android:orientation="horizontal" 
 
      android:layout_width="match_parent" 
 
      android:layout_height="140dp" 
 
      android:id="@+id/linearLayout1" 
 
      android:layout_marginBottom="0.0dp"> 
 
      <ImageButton 
 
       android:src="@android:drawable/ic_menu_gallery" 
 
       android:layout_width="49.0dp" 
 
       android:layout_height="50.8dp" 
 
       android:id="@+id/privateButton" 
 
       android:layout_marginRight="98.9dp" 
 
       android:background="#00000000" /> 
 
      <ImageButton 
 
       android:src="@drawable/logo" 
 
       android:layout_width="75.3dp" 
 
       android:layout_height="64.1dp" 
 
       android:id="@+id/logoButton" 
 
       android:layout_marginRight="113.7dp" 
 
       android:background="#00000000" /> 
 
      <ImageButton 
 
       android:src="@android:drawable/ic_menu_gallery" 
 
       android:layout_width="49.0dp" 
 
       android:layout_height="50.8dp" 
 
       android:id="@+id/cartButton" 
 
       android:background="#00000000" /> 
 
     </LinearLayout> 
 
    </FrameLayout> 
 
    <LinearLayout 
 
     android:orientation="horizontal" 
 
     android:minWidth="25px" 
 
     android:minHeight="25px" 
 
     android:layout_width="match_parent" 
 
     android:layout_height="142.7dp" 
 
     android:id="@+id/linearLayout2"> 
 
     <Button 
 
      android:text="Суші" 
 
      android:layout_width="192.8dp" 
 
      android:layout_height="fill_parent" 
 
      android:id="@+id/button1" 
 
      android:background="@drawable/sushi" 
 
      android:textColor="#ffffff" 
 
      android:textSize="20sp" 
 
      android:textStyle="bold" /> 
 
     <Button 
 
      android:text="Роли" 
 
      android:layout_width="192.8dp" 
 
      android:layout_height="fill_parent" 
 
      android:id="@+id/button2" 
 
      android:background="@drawable/rolli" 
 
      android:textColor="#ffffff" 
 
      android:textSize="20sp" 
 
      android:textStyle="bold" /> 
 
    </LinearLayout> 
 
    <LinearLayout 
 
     android:orientation="horizontal" 
 
     android:minWidth="25px" 
 
     android:minHeight="25px" 
 
     android:layout_width="match_parent" 
 
     android:layout_height="142.7dp" 
 
     android:id="@+id/linearLayout3"> 
 
     <Button 
 
      android:text="Сети" 
 
      android:layout_width="192.8dp" 
 
      android:layout_height="match_parent" 
 
      android:id="@+id/button3" 
 
      android:background="@drawable/sets" 
 
      android:textColor="#ffffff" 
 
      android:textSize="20sp" 
 
      android:textStyle="bold" /> 
 
     <Button 
 
      android:text="Холодні Закуски" 
 
      android:layout_width="192.8dp" 
 
      android:layout_height="match_parent" 
 
      android:id="@+id/button4" 
 
      android:background="@drawable/holodni" 
 
      android:textColor="#ffffff" 
 
      android:textSize="20sp" 
 
      android:textStyle="bold" /> 
 
    </LinearLayout> 
 
    <LinearLayout 
 
     android:orientation="horizontal" 
 
     android:minWidth="25px" 
 
     android:minHeight="25px" 
 
     android:layout_width="match_parent" 
 
     android:layout_height="70.2dp" 
 
     android:id="@+id/linearLayout4" 
 
     android:layout_marginLeft="0.0dp"> 
 
     <LinearLayout 
 
      android:orientation="horizontal" 
 
      android:layout_width="fill_parent" 
 
      android:layout_height="65dp" 
 
      android:background="#f2565c" 
 
      android:id="@+id/linearLayout5"> 
 
      <ImageButton 
 
       android:src="@drawable/back" 
 
       android:layout_width="49.0dp" 
 
       android:layout_height="50.8dp" 
 
       android:id="@+id/previousButton" 
 
       android:layout_marginRight="120.8dp" 
 
       android:background="#00000000" 
 
       android:layout_marginTop="8.6dp" 
 
       android:clickable="true" /> 
 
      <ImageButton 
 
       android:src="@drawable/home" 
 
       android:layout_width="49.0dp" 
 
       android:layout_height="50.8dp" 
 
       android:id="@+id/homeButton" 
 
       android:layout_marginRight="117.5dp" 
 
       android:background="#00000000" 
 
       android:layout_marginTop="7.4dp" 
 
       android:clickable="true" /> 
 
      <ImageButton 
 
       android:src="@drawable/next" 
 
       android:layout_width="49.0dp" 
 
       android:layout_height="50.8dp" 
 
       android:id="@+id/nextButton" 
 
       android:layout_marginLeft="0.0dp" 
 
       android:background="#00000000" 
 
       android:layout_marginTop="8.6dp" 
 
       android:clickable="true" /> 
 
     </LinearLayout> 
 
    </LinearLayout> 
 
</LinearLayout>

И должен это должно быть написано в xml или в Основной деятельности?

+0

Вы можете прочитать эту ссылку, чтобы узнать, как http://developer.android.com/training/multiscreen/screensizes.html – Minhtdh

ответ

1

Если вы хотите, чтобы приложение поддерживало различные размеры экрана, вы должны попытаться использовать свои представления не с такими смешными значениями, как:

андроида: layout_height = "140dp"

но играть со значениями: match_parent & wrap_content, например:

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

Для выравнивания компонентов играть с тяжести и layout_gravity Недвижимость. Например:

android:layout_gravity="center_horizontal" 
android:gravity="center" 
+0

Спасибо так много! –

Смежные вопросы