Проблема с макетом эмулятора Android - PullRequest
1 голос
/ 26 октября 2011

Я разработал макет с помощью редактора eclipse xml, и вот так выглядит мой макет на Eclipse 3.7in WVGA (Nexus One):

enter image description here

И вот как это выглядиткак в эмуляторе:

enter image description here

И вот XML-файл:

                <GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
                    android:id="@+id/gridLayout1"
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent"
                    android:background="@color/background"
                    android:columnCount="3" >

                    <TextView
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:layout_column="0"
                        android:layout_columnSpan="2"
                        android:layout_marginBottom="25dip"
                        android:layout_row="1"
                        android:text="@string/main_title"
                        android:textColor="@color/Title_Color"
                        android:textSize="24.5sp" />

                    <EditText
                        android:id="@+id/editText1"
                        android:layout_column="0"
                        android:layout_columnSpan="2"
                        android:layout_gravity="fill_horizontal"
                        android:layout_row="3"
                        android:text="@string/user_name" >

                        <requestFocus />
                    </EditText>

                    <EditText
                        android:id="@+id/editText2"
                        android:layout_column="0"
                        android:layout_columnSpan="2"
                        android:layout_gravity="fill_horizontal"
                        android:layout_row="4"
                        android:text="@string/pass_word"
                        android:inputType="textPassword" />

                        />

                    <Button
                        android:id="@+id/button1"
                        android:layout_width="match_parent"
                        android:layout_column="0"
                        android:layout_columnSpan="2"
                        android:layout_row="5"
                        android:text="Login" />

                    <Space
                        android:layout_width="1dp"
                        android:layout_height="53dp"
                        android:layout_column="0"
                        android:layout_row="0" />

                    <Space
                        android:layout_width="1dp"
                        android:layout_height="10dp"
                        android:layout_column="0"
                        android:layout_gravity="fill_horizontal"
                        android:layout_row="2" />

                    <Space
                        android:layout_width="1dp"
                        android:layout_height="72dp"
                        android:layout_column="0"
                        android:layout_gravity="fill_horizontal"
                        android:layout_row="4" />

                    <Space
                        android:layout_width="52dp"
                        android:layout_height="1dp"
                        android:layout_column="0"
                        android:layout_row="0" />

                </GridLayout>

Ответы [ 3 ]

1 голос
/ 26 октября 2011

У меня та же проблема. Это связано с использованием-SDK. Если бы я удалил этот тег, текстовое поле выглядело нормально, с границами и т. Д. Но когда я включил этот тег, возникла проблема. Затем я попытался установить minSDK на 14 и targetSDK на 11, но проблема все еще была. Затем я попытался установить targetSDK на 7, и проблема исчезла. Похоже, что это введенная ошибка и что-то связанное с эмулятором!

1 голос
/ 26 октября 2011

У меня есть текстовое поле, определенное с помощью EditText, и оно выглядит как текст вашего имени пользователя / пароля на первом экране с оранжевыми границами вокруг без указания тега в файле манифеста.

Text field rendered correctly

Теперь, когда я указываю, текстовое поле выглядит как текстовое поле вашего пароля на втором экране.

Text field not rendered correctly

Посмотрите, делает ли удаление использование-sdk нормальным.В этом случае я бы сказал, что в коде эмулятора есть ошибка.Я не знаю, что еще думать.По сути, я только учусь кодировать в Android, и это было тестовое приложение, которое я создал, и поэтому заметил проблему!

0 голосов
/ 26 октября 2011

Попробуйте использовать LinearLayout вместо GridLayout и удалите эти пробелы.

                <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
                android:id="@+id/gridLayout1"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:background="@color/background"
                android:columnCount="3" >

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_column="0"
                    android:layout_columnSpan="2"
                    android:layout_marginBottom="25dip"
                    android:layout_row="1"
                    android:text="@string/main_title"
                    android:textColor="@color/Title_Color"
                    android:textSize="24.5sp" />

                <EditText
                    android:id="@+id/editText1"
                    android:layout_column="0"
                    android:layout_columnSpan="2"
                    android:layout_gravity="fill_horizontal"
                    android:layout_row="3"
                    android:text="@string/user_name" >

                    <requestFocus />
                </EditText>

                <EditText
                    android:id="@+id/editText2"
                    android:layout_column="0"
                    android:layout_columnSpan="2"
                    android:layout_gravity="fill_horizontal"
                    android:layout_row="4"
                    android:text="@string/pass_word"
                    android:inputType="textPassword" />

                    />

                <Button
                    android:id="@+id/button1"
                    android:layout_width="match_parent"
                    android:layout_column="0"
                    android:layout_columnSpan="2"
                    android:layout_row="5"
                    android:text="Login" />

            </LinearLayout>

Если вам нужно разнести объекты, используйте android: paddingTop = "20dp" или любое другое значение

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