模拟器上的布局与android studio预览不同

模拟器上的布局与android studio预览不同,android,android-layout,screen-size,Android,Android Layout,Screen Size,所以,我在Nexus5(1080x1920,dpi:480)和Nexus6p(1440x2560,dpi:560)模拟器上运行我的应用程序。我使用这个公式来计算最小宽度(sw) Nexus5:1080/(480/160)=360。 Nexus6p:1440/(560/160)=411 问题1:我为这两款手机创建了标准的sw320布局。Nexus5上的一张图片比预览版和6P大幅缩小,所有其他图片看起来都不错 显示预览,显示nexus 6P,显示nexus 5 另外,我注意到,当我在android

所以,我在Nexus5(1080x1920,dpi:480)和Nexus6p(1440x2560,dpi:560)模拟器上运行我的应用程序。我使用这个公式来计算最小宽度(sw)

Nexus5:1080/(480/160)=360。 Nexus6p:1440/(560/160)=411

问题1:我为这两款手机创建了标准的sw320布局。Nexus5上的一张图片比预览版和6P大幅缩小,所有其他图片看起来都不错

显示预览,显示nexus 6P,显示nexus 5

另外,我注意到,当我在android studio预览中移动信号栏图像时,图像的大小会发生变化

问题2:我创建了不同的软件布局,如图所示。但是,默认的布局预览现在已经完全混乱,如图所示。之前,我添加了所有的软件布局,看起来像

问题1:是什么原因导致两款手机在图像上的显著差异

问题2:在android studio预览中,当我拖动图像时,图像的大小发生变化的原因是什么

问题3:即使我没有更改该文件中的任何代码,默认布局仍然混乱的原因是什么

使用xml代码更新:

<RelativeLayout 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:background="@drawable/joystick_background"
tools:context="com.example.android.toybot.JoyStickActivity">

<RelativeLayout
    android:id="@+id/relativeLayout"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"

    android:layout_weight="0.5"

    android:layout_marginTop="70dp"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true">

    <ImageView
        android:id="@+id/imageView4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginEnd="11dp"
        android:layout_below="@+id/exit_switch_id"

        android:scaleX="0.5"
        android:scaleY="0.5"
        android:layout_marginTop="1dp"
        android:layout_marginLeft="30dp"
        android:src="@drawable/text_exit"/>


    <ImageView
        android:id="@+id/imageView8"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:scaleX="0.5"
        android:scaleY="0.5"
        android:src="@drawable/text_turbo"
        android:layout_alignTop="@+id/imageView4"
        android:layout_toEndOf="@+id/exit_switch_id"
        android:layout_alignBottom="@+id/imageView4" />

    <Switch
        android:id="@+id/exit_switch_id"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:rotation="90"
        android:scaleX="0.8"
        android:scaleY="0.8"
        android:thumb="@drawable/joystick_hat"
        android:track="@drawable/joystick_lever_switch"
        android:layout_alignBaseline="@+id/turbo_switch_id"
        android:layout_alignBottom="@+id/turbo_switch_id"
        android:layout_alignParentStart="true"
        android:layout_marginStart="14dp" />

    <Switch
        android:id="@+id/turbo_switch_id"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="14dp"
        android:rotation="90"
        android:scaleX="0.8"
        android:scaleY="0.8"
        android:thumb="@drawable/joystick_hat"
        android:track="@drawable/joystick_lever_switch"
        android:layout_alignParentTop="true"
        android:layout_toEndOf="@+id/exit_switch_id" />

</RelativeLayout>

<LinearLayout
    android:id="@+id/linearLayout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:layout_alignParentBottom="true"
    android:layout_alignParentStart="true">

    <com.example.android.toybot.JoyStickView
        android:id="@+id/joystickLeft"
        android:layout_width="wrap_content"
        android:layout_height="200dp"
        android:layout_alignParentStart="true"
        android:layout_weight="0.5" />


    <com.example.android.toybot.JoyStickView
        android:id="@+id/joystickRight"
        android:layout_width="wrap_content"
        android:layout_height="200dp"
        android:layout_weight="0.5" />

</LinearLayout>

<LinearLayout
    android:id="@+id/linearLayout3"
    android:layout_width="100dp"
    android:layout_height="wrap_content"
    android:layout_weight="0.5"
    android:orientation="horizontal"
    android:layout_above="@+id/linearLayout4"
    android:layout_alignParentStart="true">

    <TextView
        android:id="@+id/textView3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="RM:" />

    <TextView
        android:id="@+id/x_coo"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="x_coo" />

</LinearLayout>

<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:id="@+id/linearLayout5"
    android:layout_above="@+id/linearLayout3"
    android:layout_alignParentStart="true">

    <TextView
        android:id="@+id/textview6"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"

        android:layout_alignBaseline="@+id/dir_view"
        android:layout_alignBottom="@+id/dir_view"
        android:layout_marginEnd="15dp"
        android:layout_toStartOf="@+id/dir_view"
        android:layout_weight="0.04"
        android:text="Direction:" />

    <TextView
        android:id="@+id/dir_view"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/linearLayout3"
        android:layout_marginStart="15dp"
        android:layout_toEndOf="@+id/linearLayout2"
        android:layout_weight="0.01"
        android:text="TextView" />
</LinearLayout>

<LinearLayout
    android:layout_width="100dp"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:id="@+id/linearLayout4"
    android:layout_above="@+id/linearLayout"
    android:layout_alignParentStart="true"
    android:layout_marginBottom="17dp">

    <TextView
        android:id="@+id/ly_id"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="LM:" />

    <TextView
        android:id="@+id/ly_id_display"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="left_y_coo" />

</LinearLayout>

<TextView
    android:id="@+id/RSSI_id"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_above="@+id/linearLayout5"
    android:layout_alignEnd="@+id/linearLayout3"
    android:layout_marginBottom="14dp"
    android:text="rssi value" />

<FrameLayout
    android:id="@+id/singal_bar_layout"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginBottom="17dp"
    android:layout_above="@+id/RSSI_id"
    android:layout_alignParentEnd="true">


    <ImageView
        android:scaleX="0.8"
        android:scaleY="0.8"
        android:id="@+id/signal_bar_0"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:visibility="visible"
        android:src="@drawable/signal_bars0_01" />

    <ImageView
        android:scaleX="0.8"
        android:scaleY="0.8"
        android:id="@+id/signal_bar_1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/signal_bars1_01"
        android:visibility="invisible" />

    <ImageView
        android:scaleX="0.8"
        android:scaleY="0.8"
        android:id="@+id/signal_bar_2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/signal_bars2_01"
        android:visibility="invisible" />

    <ImageView
        android:scaleX="0.8"
        android:scaleY="0.8"
        android:id="@+id/signal_bar_3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/signal_bars3_01"
        android:visibility="invisible" />

    <ImageView
        android:id="@+id/signal_bar_4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:scaleX="0.8"
        android:scaleY="0.8"
        android:src="@drawable/signal_bars4_01"
        android:visibility="invisible" />

</FrameLayout>


为了解决我的问题1,我没有创建可绘制的文件,而是创建了mipmap文件,这样,图像就保持在一个大小,这对我来说是可行的


问题2,前一个出现问题的原因是,编辑器中的设备位于apple watch视图中,而不是一个实际的手机视图,它只是一个正方形。

发布xml文件…@Itoun更新。