Android:创建 Activity 界面后调用的方法

标签 android android-activity

我想在创建 Activity 的图形界面后执行一些任务。我需要知道某些 View 的确切高度和宽度,并根据宽度和高度更改其中一些 View 的 layoutParams。在 onResume 方法中, View 的所有参数仍然等于 0...

至于现在,我正在使用延迟任务,该任务会在 onCreate 一段时间后运行,但这根本不是一个好的解决方案...

Activity 创建中调用的最后一个方法是什么? View 的宽度和高度是否可以通过这种方法获得?

最佳答案

在 onCreate() 中调用它

       final View rootView = getWindow().getDecorView().getRootView();
        rootView.getViewTreeObserver().addOnGlobalLayoutListener(
                new ViewTreeObserver.OnGlobalLayoutListener() {

                    @Override
                    public void onGlobalLayout() {

                        //by now all views will be displayed with correct values

                    }
                });

关于Android:创建 Activity 界面后调用的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19765453/

相关文章:

Android:如何用最原始的手机方式获取用户的当前位置NAME? (没有互联网或全局定位系统)

java - 保存底部导航栏 fragment 的 Activity 永远不会到达 fragment ,而是通过 FrameLayout 保存它们的 Activity

java - Android Activity 问题 startActivity (我只想显示)

android - 在 Android Studio 中创建第二个 Activity

android - Android : what UI choices? 中的新游戏 Activity

android - 使用 intent 和 BroadcastReceiver 获取 android 电池电量时的奇怪行为

java - 在游戏中的某些点将媒体播放器静音

android - 在android ndk中使用opencv haarcascades

android - 在脚手架中,错误已显示为 "No value passed for parameter ' 内容'“- 我在下面附上了快照

android - 结合服务处理暂停或停止的 Activity