2017-09-06 101 views
0

有沒有辦法只刪除特定屏幕的頂部導航欄?我正在使用react-navigation。刪除某些屏幕的頂部導航欄

我已經試過如下:

header: { visible: false } 

但它只是隱藏導航欄。導航欄的空間仍然不能使用。

在此先感謝!

+1

你試過「header:null」了嗎?我用它不在我的頭上顯示。 – rabbit87

+0

是的,但是如何才能在某些屏幕上刪除它? – Jed

+0

我這樣做的方式是爲每個屏幕提供navigationOptions。例如,請參閱我的答案。 – rabbit87

回答

3

這是我如何做礦用StackNavigator一個例子:

const stackN = StackNavigator({ 
    Screen1 : { 
     screen: Screen1, 
     navigationOptions: { 
     header: null, 
     } 
    }, 
    Home : { 
     screen: HomeScreen, 
     navigationOptions: ({navigation}) => ({ 
     title: 'Home', 
     headerStyle: styles.headerStyle, 
     headerTitle: <Text>Home</Text>, 
     headerLeft : null, 
     headerRight: null, 
     }) 
    }, 
}, {headerMode: 'screen'}) 

所以每個屏幕都有自己的navigationOptions代替。可能有一種方法可以共享導航選項,但我目前還沒有看過它。

+0

如果有一種方法可以共享navigationOptions,會更好。我只想在登錄和啓動畫面上刪除導航,其他人將顯示。 – Jed

+0

測試完成後,您的答案也能滿足刪除某些視圖導航的需要。你所做的只是在這些特定的視圖上指定一個導航選項,並放置'header:null'屬性。 – Jed