根据变量在customdialog屏幕上放置一个imageview

时间:2014-11-30 10:20:08

标签: android dialog imageview relativelayout

我正在尝试在自定义对话框中将一个小图像放在一个大图像的顶部。

我希望根据变量将小的放在不同的地方,我称之为“pos”。它包含0到100之间的int值,表示对话框宽度的百分比。

如果pos = 0,我想将图像放在大图的左边缘,如果pos = 30,它应该从左边开始放在屏幕的30%。

如果pos = 50,我希望它能够放在中间位置,最大值为100并将其放在右边缘。

我提供了一份草稿,以便更好地解释自己。

enter image description here

我尝试使用RelativeLayout.LayoutParams,但我从未得到预期的输出。

1 个答案:

答案 0 :(得分:0)

也许更简单的策略是扩展ImageView,然后使用onDraw方法中的Canvas命令创建自定义图像,该方法在x轴上适当地绘制位图,背景设置与您的布局相匹配。

您可以在自定义ImageView的onMeasure方法中确定自定义对话框的宽度,因此返回的位图(包括空背景)可以是正确的宽度,并且可以正确分配较小位图的位置。

一旦您创建了这个类,只需几分钟,您就可以将其添加到XML布局中,例如:

 <com.domain.yourapp.YourCustomerImageView
                android:id="@+id/bitmap_graph"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_margin="3dp"/>