因此Android Studio在设计选项卡中具有拖放功能。我可以将元素放在我想要的位置,并且屏幕上的布局看起来很棒。
然而,当我去运行app模拟器时,它看起来完全不同。一切都被推到了屏幕的左上角,远离我将其置于设计模式的地方。
有没有办法让你的元素在模拟器中以相同的方式显示,就像你将它们置于设计模式一样?现在我每次都要回去编辑所有代码。
我的代码如下,以及下面的图片链接,以进一步澄清我的观点。Comparison of Design mode vs App Emulator
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.luke.currencyconverter.MainActivity">
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Enter The Amount in Dollars"
tools:layout_editor_absoluteX="-159dp"
tools:layout_editor_absoluteY="126dp" />
<TextView
android:id="@+id/textView2"
android:layout_width="403dp"
android:layout_height="0dp"
android:text="Enter The Amount in Dollars:"
android:textColor="@android:color/black"
android:textSize="22sp"
tools:layout_editor_absoluteX="33dp"
tools:layout_editor_absoluteY="365dp" />
<ImageView
android:id="@+id/currency"
android:layout_width="361dp"
android:layout_height="450dp"
app:srcCompat="@drawable/currency"
tools:layout_editor_absoluteX="12dp"
tools:layout_editor_absoluteY="-117dp" />
<Button
android:id="@+id/convert"
android:layout_width="361dp"
android:layout_height="wrap_content"
android:onClick="convert"
android:text="Convert"
tools:layout_editor_absoluteX="12dp"
tools:layout_editor_absoluteY="462dp" />
<EditText
android:id="@+id/dollarField"
android:layout_width="368dp"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="numberDecimal"
tools:layout_editor_absoluteX="8dp"
tools:layout_editor_absoluteY="408dp" />
</android.support.constraint.ConstraintLayout>
答案 0 :(得分:0)
Android的拖放只会将对象放在屏幕内。为了保持它,你应该修改xml,以便对象相互约束。
您可以使用相对布局或约束布局,以便更轻松地设计布局。
答案 1 :(得分:0)
我明白了。我正在使用“约束布局”,我需要使用“相对布局”。