2014-12-06 24 views
0

我已經在任何地方搜索,但是我沒有找到它。任何我發現的東西總是在ListView,GridView或RecyclerView滾動時隱藏Action Bar。我需要的是如何在ViewGroup(例如使用ScrollView)滾動時隱藏Action Bar?因爲我無法真正將我的佈局轉換爲這三者中的任何一個,並且沒有用於ScrollView的onScrollListener。在視圖上隱藏操作欄滾動

謝謝。

+1

看到這個【答案】(http://stackoverflow.com/a/30962301/1576416) – 2015-07-09 08:04:22

回答

0

1.implement ViewTreeObserver.OnScrollChangedListener到類, 2.Write此行到您的onCreate 「getWindow()requestFeature(Window.FEATURE_ACTION_BAR_OVERLAY)。」 (不帶引號) 3.Now得到的ActionBar的隱藏動畫身高如下 -

final TypedArray mstyled = getTheme().obtainStyledAttributes(new int[]{android.R.attr.actionBarSize }); 
mActionBarHeight = styledAttributes.getDimension(0, 0); 
mstyled.recycle(); 

4.Get操作欄。

mActionBar = getActionBar(); 

5.直接滾動查看。

((ScrollView)findViewById(R.id.parent)).getViewTreeObserver().addOnScrollChangedListener(this); 

6.override onScrollChange並設置你的方法是這樣的。

@Override 
public void onScrollChanged() { 
    float mfloat = ((ScrollView)findViewById(R.id.parent)).getScrollY(); 
    if (mfloat >= mActionBarHeight && mActionBar.isShowing()) { 
     mActionBar.hide(); 
    } else if (mfloat==0 && !mActionBar.isShowing()) { 
     mActionBar.show(); 
    } 
} 

希望它有助於。

+0

它的工作原理,非常感謝! – 2014-12-08 04:16:53

+0

如何實現這個列表視圖? – WISHY 2015-03-24 12:01:14

0

使用

android.support.v4.widget.NestedScrollView 

代替

Scrollview. 

它的工作好

相關問題