Android 为什么我的应用程序在设计模式和模拟器上看起来不同?

Android 为什么我的应用程序在设计模式和模拟器上看起来不同?,android,xamarin,Android,Xamarin,我正在编写一个应用程序,并为我的应用程序进行自定义设计,问题是ui在设计模式下看起来很完美,但在运行时模式(在模拟器和真实设备上)看起来不同。有什么线索吗???谢谢大家 我的任务是使emulator中的ui与设计模式中的ui相同 下面是一些代码: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

我正在编写一个应用程序,并为我的应用程序进行自定义设计,问题是ui在设计模式下看起来很完美,但在运行时模式(在模拟器和真实设备上)看起来不同。有什么线索吗???谢谢大家

我的任务是使emulator中的ui与设计模式中的ui相同

下面是一些代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 
    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"
    android:orientation="vertical"
    android:background="@drawable/bg"
    android:weightSum="8">
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight=".8">
    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight=".8">
    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:gravity="center"
        android:layout_marginLeft="50sp"
        android:layout_marginRight="50sp"
        android:padding="4dp"
        android:layout_weight=".8">
    <Button
        android:text="Start"
        android:textColor="#0495d4"
        android:textAllCaps="false"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/btnStart"
        android:layout_gravity="center" />
    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:gravity="center"
        android:layout_marginLeft="50sp"
        android:layout_marginRight="50sp"
        android:padding="4dp"
        android:layout_weight=".8">
    <Button
        android:text="Followings"
        android:textColor="#0495d4"
        android:textAllCaps="false"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/btnFollowings"
        android:layout_gravity="center" />
    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight=".8">
    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:gravity="center"
        android:layout_weight=".8"
        android:orientation="horizontal"
        android:weightSum="3">
        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="fill_parent"
            android:layout_weight=".2"/>
        <LinearLayout
            android:layout_width="0dp"
            android:padding="2sp"
            android:layout_height="fill_parent"
            android:layout_weight="2.6">
    <EditText
        android:hint="Pin Code"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:textSize="16dp"
        android:textColor="@android:color/white"
        android:fontFamily="sans-serif-medium"
        android:textColorHint="@android:color/white"
        android:backgroundTint="@android:color/white"
        android:id="@+id/txtPinCode" />
        </LinearLayout>
        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="fill_parent"
            android:layout_weight=".2"/>

    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:gravity="center"


        android:layout_weight=".8"
        android:orientation="horizontal"
        android:weightSum="3">
        <LinearLayout
        android:layout_width="0dp"
        android:layout_height="fill_parent"
        android:layout_weight=".8"/>
        <LinearLayout
            android:layout_width="0dp"
            android:padding="10sp"
            android:gravity="center"

            android:layout_height="fill_parent"
            android:layout_weight="1.4">
    <Button
        android:text="Verify Pin"
        android:textColor="#0495d4"
        android:textAllCaps="false"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/btnSavePin" 
        android:layout_gravity="center" />
        </LinearLayout>
        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="fill_parent"
            android:layout_weight=".8"/>

    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="2.4">

    </LinearLayout>
</LinearLayout>

在不同的设备(设备模拟器)和不同版本的android上使用不同的值​​标准样式(文本视图、输入字段等)。设计器一字不差地显示所有内容,设备小部件与标准android库(特定版本)中的样式混合在一起。

设计外观不同的原因是模拟器的屏幕配置与用于呈现设计预览的屏幕配置不同

在布局编辑器的下拉列表(请参见屏幕截图)中,尝试查找在尺寸和dpi方面与仿真设备匹配的配置。这样,预览将更加准确

要了解emulator的屏幕配置,只需转到设备管理器(屏幕截图)并参考分辨率列


布局权重问题,您将其设置为XML元素Scalate all
android:layout\u weight
=
android:weightSum
@IntelliJAmiya我得到了14,当设置它时,在设计模式下的ui就像在模拟器中一样。我在这里很困惑。。。