检查视图是否对屏幕可见

时间:2015-05-22 07:45:38

标签: android algorithm

我在Android imageView Zoom-in and Zoom-Out使用ZoomableImageView(参见Nicolas Tyler的帖子)

我正在使用FrameLayout进行重叠视图技术。我希望球(带有id球的ImageView)始终与(背景)地图重叠(带有id地图的ZoomableImageView)。

布局如下:

<FrameLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <mypackage.ZoomableImageView
        android:id="@+id/map"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:scaleType="matrix"
        android:src="@raw/gamemap"
        />
    <ImageView
        android:id="@+id/ball"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@raw/ball"
        />
</FrameLayout>

球是&#34;附加&#34; (&#34;映射到&#34;)到游戏地图上的(可见)点(例如:PointF)。像地图应用程序一样,当我缩放背景(游戏地图)时,球需要相对于游戏地图自动移动。因此,当缩放时,球会在屏幕上可见或不可见。

我想像我说的那样实施。我想检查球是否在屏幕上可见或不可见。我该怎么办?

2 个答案:

答案 0 :(得分:2)

您可以检查此类视图的可见性。

if(tvEndDate.getVisibility()==View.VISIBLE)
{

// do your stuff
}

答案 1 :(得分:0)

或者你可以简单地使用

View.isShown()