Проблема - та же схема в разных плотностях - PullRequest
0 голосов
/ 29 февраля 2012

Я тестирую свое приложение в разрешениях HVGA и WVGA800, оба имеют нормальный экран, поэтому я создал изображения для средней и высокой плотности, но я не могу понять, почему мой текст "Orientação" (название) в HVGA децентрализован по сравнению с WVGA800 Я закодировал с единицей "dp" как показано ниже:

    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >
    <ImageView
        android:id="@+id/imageCanadaNavBar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:adjustViewBounds="true"
        android:src="@drawable/canada_navbar"
        android:onClick="imgTop_Click"  />       
   <ImageView 
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_below="@id/imageCanadaNavBar"
        android:src="@drawable/bg_viagem"
        android:scaleType="fitXY" />                                
    <TextView 
        android:id="@+id/txtTitle"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"            
        android:paddingLeft="10dp"
        android:paddingRight="10dp"
        android:layout_marginTop="30dp"             
        android:textColor="#000000"
        android:textSize="19sp"
        android:gravity="center|center_vertical"        
        android:layout_below="@id/imageCanadaNavBar" />    
    <ScrollView 
        android:id="@+id/scrollTextoDetalhe"
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:layout_marginTop="20dp"
        android:layout_marginBottom="7dp" 
        android:layout_below="@id/txtTitle">                       
        <TextView 
            android:id="@+id/txtDetalhe"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"                       
            android:textColor="#FFFFFF"
            android:textSize="15dp"
            android:paddingRight="25dp"
            android:paddingLeft="25dp"
            android:paddingBottom="17dp"
            android:paddingTop="17dp" />        
    </ScrollView>
</RelativeLayout>

Comparison between WVGA800 and HVGA

Ответы [ 4 ]

0 голосов
/ 01 марта 2012

В моем случае я разделил все изображения, чтобы сделать уникальное изображение в XML.

New Layout

Вот мое окончательное приложение Canada Destino

0 голосов
/ 29 февраля 2012

Ваши настройки полей и отступов делают его по центру в одном случае, хотя на самом деле это не так.

Измените android:gravity="center" на android:gravity="center|center_vertical", и ваша проблема должна быть исправлена ​​(вам, возможно, придется немного изменить поля и отступы).

0 голосов
/ 29 февраля 2012

Я бы порекомендовал вместо того, чтобы использовать отдельный ImageView для фона вашего TextView, вы фактически установите его в качестве фона.Вы также должны убедиться, что Drawable представляет собой 9-патч, чтобы его можно было правильно масштабировать и отрегулировать отступы и поля.Поэтому вместо:

<ImageView 
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_below="@id/imageCanadaNavBar"
    android:src="@drawable/bg_viagem"
    android:scaleType="fitXY" />                                
<TextView 
    android:id="@+id/txtTitle"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"            
    android:paddingLeft="10dp"
    android:paddingRight="10dp"
    android:layout_marginTop="30dp"             
    android:textColor="#000000"
    android:textSize="19sp"
    android:gravity="center|center_vertical"        
    android:layout_below="@id/imageCanadaNavBar" />

у вас должно быть что-то вроде:

<TextView 
    android:id="@+id/txtTitle"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"            
    android:padding="10dp"
    android:textColor="#000000"
    android:textSize="19sp"
    android:gravity="center|center_vertical"       
    android:background="@drawable/bg_viagem" 
    android:layout_below="@id/imageCanadaNavBar" />
0 голосов
/ 29 февраля 2012

Попробуйте использовать sp (Scale-independent Pixels) вместо dp (Dentisy-Independent Pixels).

Рекомендуется использовать это для единиц размера текста.

http://developer.android.com/guide/topics/resources/more-resources.html#Dimension

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...