0

我想不断检查片段是否可见或更好。如果键盘存在于 Android 应用程序中。解决这个问题的最佳方法是什么?

我对活动生命周期不太熟悉,但我希望这是正确的方法。下面的代码是用 OnCreate 方法编写的。我需要它不断运行。

if (timeFragment.isVisible()){
    Toast.makeText(getApplicationContext(), "Time visible", Toast.LENGTH_LONG).show();
}
4

2 回答 2

1

对于片段,每次片段变为可见或不可见时都会触发函数 setUserVisibleHint(boolean isVisible)。

与轮询相比,这将节省资源。在时间片段中:

public void setUserVisibleHint(boolean isVisible) {
    if (isVisible)
        Toast.makeText(getActivity(), "Time becoming visible", Toast.LENGTH_LONG).show();
    else
        Toast.makeText(getActivity(), "Time becoming invisible", Toast.LENGTH_LONG).show();
}

希望这可以帮助...

于 2012-08-01T06:39:30.633 回答
0

如果您真正想要的是检查软键盘当前是否在屏幕上(正如我从您对我上面评论的回复中假设的那样),您可以使用这种相当老套的侦听器方法。

于 2012-08-09T16:33:08.533 回答