1
在創建Layout,
我凸輪跨FitWindowsLinearLayout
但似乎無法理解LinearLayout
和FitWindowsLinearLayout
之間的差異。LinearLayout和FitWindowsLinearLayout有什麼區別?
所以,當我們應該用FitWindowsLinearLayout
?
在創建Layout,
我凸輪跨FitWindowsLinearLayout
但似乎無法理解LinearLayout
和FitWindowsLinearLayout
之間的差異。LinearLayout和FitWindowsLinearLayout有什麼區別?
所以,當我們應該用FitWindowsLinearLayout
?
首先,你可以看到它是annotated with @hide
,這意味着,它不向公衆公開的API。這意味着你不應該使用它。
其次,要回答你的問題:你可以從實施看,它有一個公共方法,它設置一個監聽器:
public void setOnFitSystemWindowsListener(OnFitSystemWindowsListener listener) {
mListener = listener;
}
當fitSystemWindows(Rect)
被稱爲這個監聽器將被稱爲:
@Override
protected boolean fitSystemWindows(Rect insets) {
if (mListener != null) {
mListener.onFitSystemWindows(insets);
}
return super.fitSystemWindows(insets);
}
這意味着,你可以檢索Rect insets
方式如下:
FitWindowsLinearLayout layout = new FitWindowsLinearLayout(context);
layout.setOnFitSystemWindowsListener(new OnFitSystemWindowsListener() {
boolean onFitSystemWindows(Rect insets) {
// interact with `insets`
return true;
}
})
要知道什麼是插圖,請參見this說明。
你不應該使用它 - 它是隱藏的(使用@hide註解) – pskink