1

我实现滚动视图以显示视图元素...在中心滚动视图,左右按钮上有两个按钮以移动滚动

现在在这种情况下,我想将焦点从滚动视图转移到按钮。

有人知道吗?

4

1 回答 1

1

选项 I:getLocationOnScreen在内部的所有子视图上使用ScrollView

  1. 获取滚动视图的实例。

    ScrollView scrollView = findViewById(R.id.scrollViewID);

  2. 类型转换到 ViewGroup

    ViewGroup viewGroup = (ViewGroup)scrollView;

  3. 查找所有子视图ViewGroup (检查 Android 文档)

    通过调用获取表示子视图在屏幕上位置的矩形 - getLocationOnScreen

    getLocationOnScreen 将 x,y 坐标存储在 Rect 对象中,比较 rect x,y 坐标以查看 Rectangles 是否位于屏幕边界内。(您可以在 Content View / Root View 上使用 getLocationOnScreen 获取屏幕)

选项二: getGlobalVisibleRect在里面的所有子视图上ScrollView (快速简单)

  1. 获取 ScrollView 中的所有子视图。调用getGlobalVisibleRect每个子视图,如果它返回 true,则意味着至少有一部分子视图是可见的。
于 2016-02-08T09:58:09.157 回答