に膨らませているV24のAsyncLayoutInflaterは、UIスレッド
「のAndroidサポートライブラリの最新のリリースでは、リビジョン24人のGoogleの開発者がV4ライブラリにレイアウトの非同期インフレのための新たなヘルパークラスを焼いた」これが私のコードです:
Timber.e("Timeinflationstarts");
AsyncLayoutInflater asyncLayoutInflater=newAsyncLayoutInflater(this.getContext());
asyncLayoutInflater.inflate(R.layout.async_calendar,mLinearLayout,
new AsyncLayoutInflater.OnInflateFinishedListener() {
@Override
public void onInflateFinished(View view, int resid, ViewGroup parent) {
parent.addView(view);
Timber.e("timeWhenInflated");
}
});
、これが出力されます:
07-05 20:36:22.331 18250-18250/? E/PersonalFragment: Timeinflationstarts
07-05 20:36:22.371 18250-18250/? E/PersonalFragment: timeWhenInflated
問題がasync_calendar.xmlのビューを見られるように多くの時間(その後、0.04s)を取っているということです画面上で、UIスレッドをブロックする!
私が見るラグが0.04をはるかに超えていることを確認するために、私はビューをさらに重くしました。
インフレ率は、ビューを描く道のりのほんの一歩です。ビューは測定とレイアウトにどれくらいの時間がかかりますか?測定の場合は – ianhanniballake
〜30ms、レイアウトの場合は2.5ms(階層ビューでビューノードの時間を取得する場合)。 –