我在使用相对布局向我的应用添加按钮时遇到了问题。当我使用图形布局工具时,它会在我拖放按钮时显示,但是当我在模拟器上编译并运行apk时,只有原始版本sms'按钮在那里。新按钮应该在'sms'按钮的左边
这是xml文件中的代码
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#FF000000" >
<EditText
android:id="@+id/edit_message_input"
android:layout_width="match_parent"
android:layout_height="100dp"
android:hint="@string/edit_message_input"
android:inputType="textMultiLine"
android:background="#ff000000"
android:textColor="#CCCCCC"
/>
<Button
android:id="@+id/button2"
android:layout_width="150dp"
android:layout_height="40dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="36dp"
android:text="@string/translate_to_english"
android:onClick="sendToEnglish"
android:background="#CCCCCC"
/>
<Button
android:id="@+id/button1"
android:layout_width="150dp"
android:layout_height="40dp"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:text="@string/translate_to_text"
android:onClick="sendToText"
android:background="#CCCCCC" />
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="100dp"
android:layout_above="@+id/button3"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_marginBottom="31dp"
android:ems="10"
android:hint="@string/edit_message_output"
android:inputType="textMultiLine"
android:background="#ff000000"
android:textColor="#CCCCCC" />
<Button
android:id="@+id/button3"
android:layout_width="150dp"
android:layout_height="40dp"
android:layout_alignParentBottom="true"
android:layout_alignRight="@+id/button2"
android:layout_marginRight="22dp"
android:background="#CCCCCC"
android:onClick="sendSMS"
android:text="@string/send_as_sms" />
<!-- test save button -->
<Button
android:id="@+id/save_word_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:background="#cccccc"
android:text="@string/save_word" />
</RelativeLayout>
非常感谢任何帮助或指示!
答案 0 :(得分:1)
不要假设您在XML布局中设计的内容在每个设备中看起来都不错,因为市场上有各种各样的Android设备。
如果要支持多个屏幕,请不要采用固定的高度/宽度布局。
android:layout_width="150dp"
android:layout_height="40dp"
相反,您可以提及“wrap_content”或“fill_parent”。
答案 1 :(得分:0)
老实说,我建议你转到android开发人员文档,花些时间阅读有关设计界面的建议。
两个特别有用的部分是:
http://developer.android.com/design/style/metrics-grids.html
和
http://developer.android.com/guide/topics/ui/layout/relative.html
http://developer.android.com/reference/android/widget/RelativeLayout.LayoutParams.html
xml中有许多固定的维度和冲突的对齐属性,这似乎会导致一些问题。