2017-05-14 103 views
0

我試圖做一個英制到公制的轉換應用程序,這很好,直到我遇到了Android模擬器的問題。佈局是完全搞砸在模擬器中,我不知道爲什麼。 http://imgur.com/a/IBOcs我的應用程序佈局不同於activity_main佈局設計

編輯:

整個activity_main.xml中代碼:

<?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.daniel.converter.MainActivity" 
    tools:layout_editor_absoluteY="73dp" 
    tools:layout_editor_absoluteX="0dp"> 

    <TextView 
     android:id="@+id/textViewMPH" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="MPH" 
     tools:layout_editor_absoluteX="55dp" 
     tools:layout_editor_absoluteY="90dp" /> 

    <EditText 
     android:id="@+id/editTextMPH" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:ems="10" 
     android:inputType="number" 
     tools:layout_editor_absoluteX="85dp" 
     tools:layout_editor_absoluteY="77dp" /> 

    <TextView 
     android:id="@+id/textViewTO" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="To" 
     tools:layout_editor_absoluteX="55dp" 
     tools:layout_editor_absoluteY="132dp" /> 

    <TextView 
     android:id="@+id/textViewKMH" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="KMH" 
     tools:layout_editor_absoluteX="55dp" 
     tools:layout_editor_absoluteY="168dp" /> 

    <EditText 
     android:id="@+id/editTextKMH" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:ems="10" 
     android:inputType="number" 
     tools:layout_editor_absoluteX="85dp" 
     tools:layout_editor_absoluteY="156dp" /> 

    <Button 
     android:id="@+id/button" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Convert!" 
     tools:layout_editor_absoluteX="146dp" 
     tools:layout_editor_absoluteY="229dp" /> 

</android.support.constraint.ConstraintLayout> 
+0

嗨,看看[tour]和[mcve],這個問題在當前狀態下是非常不負責任的 –

+0

您正在使用絕對佈局。請嘗試使用相對佈局 – MZ4Code

回答

1

問題正在發生的事情,因爲你正在使用約束佈局,但您沒有提供對您的項目的任何約束。因此,每個項目都顯示在(0,0)位置。

Contraint佈局描述:

佈局編輯器允許你在任何地方放置控件在畫布上,它記錄了與這些屬性在運行時不會應用設計時屬性(如layout_editor_absoluteX)的當前位置,所以如果您在設備上推送佈局,則小部件可能會顯示在與編輯器中顯示不同的位置。爲了解決這個問題,通過從邊緣連接中拖拽來確保一個小部件具有水平和垂直約束。

因此,要麼分配x和y值,要麼使用LinearLayout/RelativeLayout。