儿童视图焦点改变机器人

时间:2013-11-25 05:07:47

标签: android android-layout

我有一个ViewGroup可以有很多LinearLayout个。每个LinearLayout都可以有许多嵌套的子视图。我想要的是,如果LinearLayout内的任何视图(甚至是深层嵌套)获得焦点,它应该调用其主要父LinearLayout的自定义方法。

我要做的最后一件事是,在OnFocusChangeListener的每个深层嵌套子视图上设置LinearLayout,该侦听器将调用其父级的自定义方法。但这是非常糟糕的方式。

我是否可以覆盖父{4}}的任何方法,每次嵌套子视图的焦点发生变化时都会调用它?

1 个答案:

答案 0 :(得分:6)

您可以使用{View}组的contentView.getViewTreeObserver().addOnGlobalFocusChangeListener()或覆盖ViewGroup.requestChildFocus()requestChildFocus()沿着视图父链传递。)