我想有CollapsingToolbarLayout
(內AppBarLayout
)這擴展用戶時起牀手指 /崩潰。當用戶在屏幕上按住並移動手指時,CollapsingToolbarLayout
應同時更改大小(標準行爲)。如何僅強制CollapsingToolbarLayour的兩個狀態(展開和摺疊)?
我的問題是部分:「CollapsingToolbarLayout
擴展當用戶起牀手指 我有(片段內)從物質支持庫標準溶液/坍塌:
(我刪除不重要屬性):
<android.support.design.widget.CoordinatorLayout>
<android.support.design.widget.AppBarLayout
android:id="@+id/app_bar">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/toolbar_layout"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_height="?attr/actionBarSize"
app:layout_collapseMode="pin"/>
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<include layout="@layout/content_scrolling" />
</android.support.design.widget.CoordinatorLayout>
我試圖處理onTouch事件是這樣的:
findViewById(R.id.app_bar).setOnTouchListener(new View.OnTouchListener() {
int counter = 0;
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getActionMasked()) {
case MotionEvent.ACTION_DOWN:
counter++;
Log.d("tag toolbar_layout", "=== ACTION_DOWN "+ counter);
break;
case MotionEvent.ACTION_CANCEL:
counter--;
Log.d("tag toolbar_layout", " == ACTION_UP " +counter);
break;
case MotionEvent.ACTION_CANCEL:
counter--;
Log.d("tag toolbar_layout", " == ACTION_CANCEL "+ counter);
break;
default:
Log.d("tag toolbar_layout", "onTouch "+ event.getAction());
}
return true;
}
但我幾乎收到ACTION_CANCEL
和非常罕見的和ACTION_CANCEL
爲時尚早當應用程序收到該事件時,我仍握住屏幕。在ACTION_CANCEL
之後,應用程序甚至不再收到任何內容。我不能在appbar上撥打setExpanded(true, true)
。
所以問題是:還有另一種方式來獲得信息用戶起牀指形狀CollapsingToolbarLayout
?