检测Imageview中的图像是否与Textview重叠

时间:2012-12-03 17:51:24

标签: android android-imageview textview overlap

我有以下布局:

<?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的背景?

非常感谢

1 个答案:

答案 0 :(得分:0)

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

要详细了解如何创建自定义覆盖方法,建议您阅读this,它只是解释了如何执行此操作。