我想不断检查片段是否可见或更好。如果键盘存在于Android应用程序中。什么是最好的方法呢?
我对活动生命周期并不太熟悉,但我希望这是正确的方法。下面的代码是用OnCreate方法编写的。我需要它不断运行。
if (timeFragment.isVisible()){
Toast.makeText(getApplicationContext(), "Time visible", Toast.LENGTH_LONG).show();
}
答案 0 :(得分:1)
对于片段,每次片段变得可见或不可见时,都会触发函数setUserVisibleHint(boolean isVisible)。
与轮询相比,这将节省资源。在timeFragment中:
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();
}
希望这会有所帮助......
答案 1 :(得分:0)
如果您真正想要的是检查软键盘当前是否在屏幕上(正如我在回复上述评论时所假设的那样),您可以使用这种相当粗暴的listener方法。