0
私のアプリケーションは異なる内容を提供し、その中には画像やその他のものがあります。 画像があるものはCollapsingToolbarLayoutを使用していますが、正常に動作しますが、画像がないものはCollapsingToolbarLayoutを折りたたんで展開しないようにします。ここでCollapsingToolbarLayoutを無効にする
は私のアイテムのアクティビティコードです:
public class ItemActivity extends BaseActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_item);
collapsingToolbar = (CollapsingToolbarLayout) findViewById(R.id.collapsing_toolbar);
collapsingToolbar.setStatusBarScrimResource(R.color.black_transparent_190);
collapsingToolbar.setContentScrimResource(R.color.gray_transparent_150);
collapsingToolbar.setExpandedTitleTextAppearance(R.style.MyTheme_Toolbar_Title_Expanded);
appBarLayout = (AppBarLayout) findViewById(R.id.appbar);
appBarLayout.setExpanded(false);
loadData();
}
public void loadData() {
if(haveImage) {
// loading data and image
appBarLayout.setExpanded(true, true);
} else {
appBarLayout.setExpanded(false);
}
}
}
私はすでにそれが崩れ防止のだ、それが動作
AppBarLayout.LayoutParams params = (AppBarLayout.LayoutParams) collapsingToolbar.getLayoutParams();
params.setScrollFlags(AppBarLayout.LayoutParams.SCROLL_FLAG_SCROLL | AppBarLayout.LayoutParams.SCROLL_FLAG_EXIT_UNTIL_COLLAPSED);
collapsingToolbar.setLayoutParams(params);
と
CollapsingToolbarLayout.LayoutParams mParams = new CollapsingToolbarLayout.LayoutParams(collapsingToolbar.getLayoutParams());
mParams.setCollapseMode(CollapsingToolbarLayout.LayoutParams.COLLAPSE_MODE_OFF);
mToolbar.setLayoutParams(mParams);
を試してみました! しかし、折りたたみツールバーが拡張されています!
スクロールするイベントに対してツールバーを折りたたんで無効にするにはどうすればよいですか?
のように真を返すdispatchTouchEventをオーバーライドし、私はあなたが線形またはイメージを持っていない人のための相対的でシンプルなレイアウトを作成するべきだと思います。 ContentViewを設定する前に確認してください。 –
これを試す:http://stackoverflow.com/questions/33193223/using-appbarlayout-behavior-dragcallback-to-control-scroll-of-collapsing-toolbar/33230473#33230473 –