我对 Android 还是很陌生,所以我可能没有必要的布局专业知识来确保我不会创建不必要的视图节点。目前,我的主要 XML 布局很大(大约 770 行),因此加载时间过长(大约 2 秒,感觉没有响应)。
我了解了可以解析 XML 并返回视图的 inflate 命令,因此我认为我可以使用 AssyncTask 在初始屏幕期间缓存这些视图,并在主要活动的 onCreate() 中使用它。
这可以解决问题吗?还有什么我应该研究的吗?我目前知道内存泄漏的可能性,所以我会留意这一点。
编辑:我尝试了预充气,但我似乎根本没有实现性能提升。
LayoutInflater inflater = LayoutInflater.from(this);
View layout = inflater.inflate(R.layout.question, null, false);
然后在另一个活动中,过了一会儿:
setContentView(layout);
但仍然需要同样的 2 秒才能打开。我错过了什么吗?预充气我这样做的方式真的不应该有任何改善吗?