我使用eclipse xml编辑器设计了一个布局,这就是我的布局在Wclipse(Nexus One)的eclipse 3.7上的样子:
以下是模拟器中的样子:
继承了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>
答案 0 :(得分:1)
我遇到了同样的问题。它与uses-sdk有关。如果我删除了这个标签,文本框看起来很好,有边框等。但是当我加入这个标签时,问题就出现了。那么我尝试将minSDK设置为14并将targetSDK设置为11仍然是问题所在。然后我尝试将targetSDK设置为7,问题就消失了。看起来这是一个引入的错误,与模拟器有关!
答案 1 :(得分:1)
我有一个使用EditText定义的文本字段,它在第一个屏幕中显示为您的用户名/密码文本,带有橙色边框,而未在清单文件中指定标记。
现在,当我指定时,文本字段看起来就像是第二个屏幕中的密码文本字段。
查看删除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”或任何其他值