2016-08-04 16 views
0

私は以下のスクリーンショットのような画面を持っています。私は "野菜"、 "フルーツ"、 "スナック"からなるカテゴリを持っています。これはカードビューで一番上に表示されます。今私が欲しいのは、スクロールしながらこの部分を隠し、スクロールアップするときにだけ表示することです。スクロールダウン時にカードビューを非表示にしてスクロールアップするとき

どうすればよいですか?

[追加情報:スクロールする製品の場合、[スクロール表示]が使用されます。また、この画面全体が断片である。]

enter image description here

+0

必要な操作を実行できるタブレイアウトを使用 – SaravInfern

答えて

0

Uはビューがscrollview境界に当たるかどうかを確認する方法でcardviewビューを通過することができます。この投稿は役に立ちましたAndroid: how to check if a View inside of ScrollView is visible?

+0

いいえ、スクロールビューは使用していません。その中には線形レイアウトがあり、画面全体が動的に生成されます。 –

0

あなたのカードビューをlistView onScrollListenerで表示および非表示にすることができます。このメソッドは参考になります。

private int mLastFirstVisibleItem; 
private ListView listView; 

listView.setOnScrollListener(new AbsListView.OnScrollListener() { 
     @Override 
     public void onScrollStateChanged(AbsListView view, int scrollState) { 
      if (view.getId() == listView.getId()) { 
       final int currentFirstVisibleItem = listView.getFirstVisiblePosition(); 

       if (currentFirstVisibleItem > mLastFirstVisibleItem) { 
        cardView.setVisibility(View.GONE); 
       } else if (currentFirstVisibleItem < mLastFirstVisibleItem) { 
        cardView.setVisibility(View.VISIBLE); 
       } 
       mLastFirstVisibleItem = currentFirstVisibleItem; 

      } 

     } 
関連する問題