检测片段何时被绘制?

Vic*_*cVu 26 android

基本上我需要的功能,onWindowFocusChanged()但在一个Fragment.该onWindowFocusChanged()监听器是不实际提供给不幸的片段,所以我不知道该怎么做.

有什么办法吗?

Dee*_*eeV 55

碎片是通过View你返回来"绘制"的onCreateView().您可以使用事件处理程序.通常,如果在第一个View查看时需要运行命令,则可以将其分配给a RunnableView通过该post()方法将其附加到该命令.

getView().post(new Runnable() {
    @Override
    public void run() {
      // code you want to run when view is visible for the first time
    }
  }
)
Run Code Online (Sandbox Code Playgroud)

  • 似乎工作正常!在选择这个作为正确答案之前,我将通过一些场景来运行它. (2认同)
  • 我还应该注意(差不多两个月后),这个技巧适用于任何View.不仅仅是通过Fragment发布的那些,所以如果你将一个View int膨胀为例如.这会奏效. (2认同)