背景介绍
布局文件读取慢:IO过程
创建View慢:反射(比new慢3倍)
AsyncLayoutInflater实战
AsyncLayoutInflater
简称异步Inflate
WorkThread加载布局
回调主线程
节约主线程时间
AsyncLayoutInflater使用
implementation 'com.android.support:asynclayoutinflater:xxx'
new AsyncLayoutInflater(MainActivity.this).inflate(R.layout.activity_main, null, new AsyncLayoutInflater.OnInflateFinishedListener() {
@Override
public void onInflateFinished(@NonNull View view, int i, @Nullable ViewGroup viewGroup) {
setContentView(view);
//...
}
});
不能设置LayoutInflater.Factory(自定义解决)
注意View中不能有依赖主线程的操作