gpt4 book ai didi

android - onLayoutChange() 未调用

转载 作者:太空狗 更新时间:2023-10-29 13:24:18 26 4
gpt4 key购买 nike

我有一个自定义 View

 abstract public class MyView extends AdapterView<Adapter> implements android.view.View.OnLayoutChangeListener {
...
@Override
public void onLayoutChange(View v, int left, int top, int right, int bottom, int oldLeft, int oldTop, int oldRight, int oldBottom) {
Log.i("MyView", "onLayoutChange()");
}
}

我在 onResume() 期间实例化并设置为我的 ContentView 的匿名子类

onResume() {
...
MyView myView = new MyView(this) {...};
setContentView(myView);
}

当我现在隐藏 ActionBar 并切换到全屏时

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
getActionBar().hide();

ActionBar 和状态栏慢慢缩小,直到它们不再按预期可见。

现在我的 MyView 原则上会在屏幕上有更多空间,但据我所知,它不会自动重新测量和布局以填充这个空间。

我原以为至少会调用 onLayoutChange() 方法,但我可以通过 logcat 看到情况不是

我需要做什么才能在这种情况下调用 onLayoutChange() 或者我还能如何告诉我的 MyView 填充可用空间?

最佳答案

只是为了给这个问题一个答案(或者你可以用自己的代码自己回答)...

正如@pskink 在评论中指出的那样,不要忘记调用 addOnLayoutChangeListener

关于android - onLayoutChange() 未调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23512586/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com