应用程序可能会卡在以前运行良好的 Binding.inflate 上,这可能是什么原因?

问题描述 投票:0回答:1

在意识到我的应用程序似乎表现不佳后,我做了一些聪明的调试策略,即在我的代码和一些厚颜无耻的调试断点之间添加

Log
调用,我意识到我的
MainActivity
似乎没有通过
我的代码中的binding = ActivityMainBinding.inflate(layoutInflater)
行。而且我也没有收到任何错误。相关代码如下:

Log.d(TAG, "before mainActBind")
binding = ActivityMainBinding.inflate(layoutInflater)
Log.d(TAG, "after mainActBind")
setContentView(binding.root)
Log.d(TAG, "after setContent")
setSupportActionBar(binding.appContentMain.toolbar)
Log.d(TAG, "after setSupportActionBar")

这些是我的

MainActivity
onCreate
中最上面的几行代码,我还有
super.onCreate(savedInstanceState)
在那里。

我在 Logcat 中得到的结果如下所示:

RenderThread::setGrContext()
Checking for metadata for AppLocalesMetadataHolderService : Service not found
Access denied finding property "vendor.mali.config"
RenderThread::setGrContext()
Checking for metadata for AppLocalesMetadataHolderService : Service not found
before mainActBind
Compat change id reported: 210923482; UID 10259; state: ENABLED
Accessing hidden method Landroid/view/View;->computeFitSystemWindows(Landroid/graphics/Rect;Landroid/graphics/Rect;)Z (unsupported, reflection, allowed)
Accessing hidden method Ljava/lang/invoke/MethodHandles$Lookup;-><init>(Ljava/lang/Class;I)V (unsupported, reflection, allowed)

我目前正在运行 Android Studio Giraffe 2022.3.1 Patch 1。我已经做了“无效缓存”、“清理”、“重建”和“制作项目”。

我已经尝试过使用

DataBindingUtil.setContentView(this, R.layout.activity_main)
,但似乎不起作用

android android-studio android-databinding
1个回答
0
投票

确保您的 XML 布局文件没有错误。

您可以尝试在 XML 文件中添加标签

<layout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools">
    <data>
    </data>
</layout>
© www.soinside.com 2019 - 2024. All rights reserved.