0

我有以下布局:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<com.myapp.imagezoom.ImageViewTouch
    android:id="@+id/image"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" />

<TextView
    android:id="@+id/txtTitle"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="bottom|center"
    android:layout_marginBottom="3dp"
    android:gravity="center"
    android:maxLines="2"/>

<ProgressBar
    android:id="@+id/loading"
    style="?android:attr/progressBarStyleLarge"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:visibility="gone" />

如您所见,有一个可缩放的 ImageView。只要不缩放,TextView 就会显示在 ImageView 下方。如果用户放大 ImageView,它就在它上面。如何检测显示的 ImageView 是否与 TextView 重叠以向 TextView 显示背景?

非常感谢

4

1 回答 1

0

您应该在您的ImageViewTouch类中添加一个名为的属性isZoomed,然后在自定义覆盖方法或AsyncTask中验证是真还是假,并设置 TextView 的背景或您想要的任何内容。

要了解有关创建自定义覆盖方法的更多信息,我建议您阅读内容,它只是解释了如何执行此操作。

于 2012-12-03T19:18:56.137 回答