建立一個簡單的行為
建立 Behavior
只需擴充套件 CoordinatorLayout.Behavior
類。
擴充套件 CoordinatorLayout.Behavior
例:
public class MyBehavior<V extends View> extends CoordinatorLayout.Behavior<V> {
/**
* Default constructor.
*/
public MyBehavior() {
}
/**
* Default constructor for inflating a MyBehavior from layout.
*
* @param context The {@link Context}.
* @param attrs The {@link AttributeSet}.
*/
public MyBehavior(Context context, AttributeSet attrs) {
super(context, attrs);
}
}
此行為需要附加到要呼叫的 CoordinatorLayout
的子檢視。
以程式設計方式附加行為
MyBehavior myBehavior = new MyBehavior();
CoordinatorLayout.LayoutParams params = (CoordinatorLayout.LayoutParams) view.getLayoutParams();
params.setBehavior(myBehavior);
在 XML 中附加行為
你可以使用 layout_behavior
屬性在 XML 中附加行為:
<View
android:layout_height="...."
android:layout_width="...."
app:layout_behavior=".MyBehavior" />
自動附加行為
如果你使用自定義檢視,則可以使用 @CoordinatorLayout.DefaultBehavior
註釋附加行為:
@CoordinatorLayout.DefaultBehavior(MyBehavior.class)
public class MyView extends ..... {
}