我的聊天气泡如何指向多种屏幕尺寸的相同位置?

时间:2016-04-09 01:59:58

标签: android

无论手机的大小如何,它都应始终指向图像的相同部分。我想如果我有一个分辨率的这一点,我可以计算x坐标:宽度和y坐标:高度的比率,然后将这些比率乘以屏幕尺寸以得到我的锚点。我给出的图像太大,所以我设置了一个固定的高度。但如果图像的高度固定,则聊天气泡不会指向图像的相同部分。

例如,如果我有一个比另一个更高的手机,使用相同的比例会使聊天气泡指向图像中更高的pt。有没有解决的办法?这是我的布局:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
          xmlns:tools="http://schemas.android.com/tools"
          android:layout_width="match_parent"
          android:layout_height="match_parent">

<LinearLayout
        android:id="@+id/content"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical"
        android:orientation="vertical">

    <TextView
        android:id="@+id/title"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="25sp"
        android:text="Order"
        android:layout_gravity="center_horizontal"
        android:layout_marginTop="20dp"
        android:layout_marginBottom="20dp" />

    <ImageView
        android:id="@+id/wayfinder_image"
        android:layout_width="wrap_content"
        android:layout_height="275dp"
        android:src="@drawable/main_image"
        android:layout_gravity="center_horizontal" />

    <TextView
        android:id="@+id/instructions"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center_horizontal"
        android:layout_marginTop="16dp"
        android:layout_marginLeft="@dimen/description_side_margins"
        android:layout_marginRight="@dimen/description_side_margins"
        android:textSize="16sp"
        android:text="@string/wayfinder_instructions"/>

    <Button
        android:id="@+id/wayfinder_ok"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        style="@style/MyButton
        android:text="OK"
        android:layout_gravity="center_horizontal"
        android:visibility="gone"/>

</LinearLayout>

<TextView
    android:id="@+id/chat_bubble"
    android:layout_width="150dp"
    android:layout_height="wrap_content"
    android:background="@drawable/arrow_bottom_center"
    android:text="@string/caption"
    android:visibility="gone"/>
</FrameLayout>

0 个答案:

没有答案