【问题标题】:I can not display the same design on different phones(DialogFragment)我无法在不同的手机上显示相同的设计(DialogFragment)
【发布时间】:2015-03-20 08:32:54
【问题描述】:

我在不同设备上显示设计时遇到了一些问题。 我不解决这个问题。 这是照片 - enter link description here

这是xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
                android:orientation="vertical" android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:background="@android:color/transparent">


    <LinearLayout
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginRight="39dp"
        android:layout_marginLeft="39dp"
        android:layout_gravity="center_horizontal"
        android:background="#ffffffff">

        <LinearLayout
            android:orientation="vertical"
            android:layout_width="fill_parent"
            android:layout_height="225.75dp"
            >

            <LinearLayout
                android:orientation="horizontal"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="center_horizontal">

                <TextView
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:text="ItemName"
                    android:id="@+id/itemName"
                    android:layout_weight="3"
                    android:paddingTop="14dp"
                    android:paddingLeft="14dp"/>

                <TextView
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:text="ItemPrice"
                    android:id="@+id/itemPrice"
                    android:layout_weight="1"
                    android:paddingRight="14dp"/>
            </LinearLayout>

            <ImageView
                android:layout_width="match_parent"
                android:layout_height="161.75dp"
                android:id="@+id/itemImage"
                android:layout_weight="16"/>

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Buy 1 and Get 2 for free "
                android:id="@+id/textView9"
                android:layout_gravity="center_horizontal"
                android:paddingBottom="25dp"/>

        </LinearLayout>

        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="match_parent"
            android:layout_height="101dp"
            android:layout_gravity="center_horizontal"
            android:background="@drawable/placeholder_blue"
            android:gravity="center_vertical"
            android:paddingTop="26dp"
            android:paddingBottom="26dp">

            <Button
                android:layout_width="49dp"
                android:layout_height="49dp"
                android:text="-"
                android:id="@+id/itemMinus"
                android:layout_marginLeft="48dp"
                android:background="#fff"/>

            <TextView
                android:layout_width="match_parent"
                android:layout_height="49dp"
                android:text="1"
                android:id="@+id/textView11"
                android:layout_weight="1"
                android:gravity="center_vertical|center_horizontal"
                android:background="#fff"
                android:textAlignment="gravity"/>

            <Button
                android:layout_width="49dp"
                android:layout_height="49dp"
                android:text="+"
                android:id="@+id/itemPlus"
                android:layout_marginRight="48dp"
                android:background="#fff"/>
        </LinearLayout>

    </LinearLayout>

    <LinearLayout
        android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:gravity="center_horizontal"
        android:background="@android:color/transparent"
        android:paddingTop="38.5dp"
        >

        <ImageButton
            android:layout_width="65.25dp"
            android:layout_height="65.25dp"
            android:id="@+id/itemCancel"
            android:src="@drawable/cancel"
            android:background="@android:color/transparent"
            android:layout_marginRight="12dp"/>

        <ImageButton
            android:layout_width="65.25dp"
            android:layout_height="65.25dp"
            android:id="@+id/itemAdd"
            android:src="@drawable/apply"
            android:background="@android:color/transparent"
            android:layout_marginLeft="12dp"/>

    </LinearLayout>

</LinearLayout>

在照片上从左到右:

LG g3 - 5" 1280 x 720 294 dpi
samsung galaxy s5 - 5,1" 1080x1920 432 dpi
samsung galaxy note 4 - 5.7" 1440x2560  515 dpi
nexus 6 5.96" 1440x2560 493 dpi

问题是我的 DialogFragment 在不同设备上显示设计。我需要让它始终作为第一部手机 (LG g3)。

我做错了什么?我有 5 个带有图片 mdpi hdpi xhdpi xxhdpi xxxhdpi 的文件夹。我在 Photoshop 中给他们剪了一个脚本。我检查了计算器。都一样。但仍然显示歪斜。我尝试使用值权重。

编辑:所有图片显示正常。但我的 DialogFragment 始终显示在中心。我需要左上角的 DialogFragment 总是在按钮下方,并且没有向下填充

【问题讨论】:

标签: android android-layout android-dialogfragment


【解决方案1】:

为什么不尝试在RelativeLayout 中混合?如果您使用 layout_weight 它真的取决于我理解的屏幕尺寸和密度,如果您使用 RelativeLayout 也许您可以按照您想要的方式正确对齐它们。比如使用它的center_horizo​​ntal="true", above="@id/x", below="@id/y"。

【讨论】:

    猜你喜欢
    • 2023-02-08
    • 1970-01-01
    • 1970-01-01
    • 2012-06-01
    • 1970-01-01
    • 2016-01-16
    • 1970-01-01
    • 2015-03-09
    • 2019-03-11
    相关资源
    最近更新 更多