Android模拟器布局问题

时间:2011-10-26 18:22:11

标签: java android xml android-layout android-emulator

我使用eclipse xml编辑器设计了一个布局,这就是我的布局在Wclipse(Nexus One)的eclipse 3.7上的样子:

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 个答案:

答案 0 :(得分:1)

我遇到了同样的问题。它与uses-sdk有关。如果我删除了这个标签,文本框看起来很好,有边框等。但是当我加入这个标签时,问题就出现了。那么我尝试将minSDK设置为14并将targetSDK设置为11仍然是问题所在。然后我尝试将targetSDK设置为7,问题就消失了。看起来这是一个引入的错误,与模拟器有关!

答案 1 :(得分:1)

我有一个使用EditText定义的文本字段,它在第一个屏幕中显示为您的用户名/密码文本,带有橙色边框,而未在清单文件中指定标记。

Text field rendered correctly

现在,当我指定时,文本字段看起来就像是第二个屏幕中的密码文本字段。

Text field not rendered correctly

查看删除uses-sdk是否使其看起来很好。在这种情况下,我会说模拟器代码中存在一个错误。我不知道还有什么想法。 基本上,我只是学习在Android中编写代码,这是我创建的测试应用程序,因此注意到了这个问题!

答案 2 :(得分:0)

尝试使用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”或任何其他值