2017-10-13 2 views
0

반응 네이티브 프로젝트에서 반응 탐색을 사용하면 사용자 정의 headerLeft를 지정할 때 스택 내비게이터에서 기본 뒤로 버튼을 렌더링 할 수 있습니까? 아니면 프레스에서 navigation.goBack을 수행하는 버튼을 포함하는 사용자 정의 headerLeft를 명시 적으로 반환하여 만 가능합니까? 내 현재 코드는 아래처럼 보이지만 적용 가능한 경우 뒤로 버튼을 표시하여 goBack이 옵션 일 때도 표시합니다.사용자 정의 headerLeft (반응 탐색)를 지정할 때 헤더의 기본 뒤로 버튼 렌더링

export default StackNavigator(
    { 
     ..., 
    }, 
    { 
    headerMode: "float", 
    navigationOptions: ({ navigation }) => ({ 
     headerLeft: (
     <MaterialCommunityIcons name={"menu"} style={{ color: "white" }} size={25} onPress={() => navigation.navigate("DrawerOpen")} /> 
    ), 
     headerStyle: { backgroundColor: "#4C3E54", paddingLeft: 10, paddingRight: 10 }, 
     headerTitleStyle: { color: "white" } 
    }) 
    } 
) 

사용자 정의 headerLeft를 적용한 후 다시 버튼을 표시 한 참조 용 이미지.

enter image description here

답변

0

당신은 또한 당신이 전체 StackNavigation의 기본 navigationOption을 설정할 수 있습니다, 다른 모든 화면에 대한 navigationOption을 설정할 수 있습니다. 아래 예제에서는 Main 화면을 제외한 모든 화면에서 제스처가 비활성화됩니다.

const ModalNavigator = StackNavigator(
{ 
    Main: { 
    screen: Main, 
    navigationOptions: { 
     gesturesEnabled: true, 
    } 
    }, 
    Login: { screen: Login }, 
    Profile: { screen: Profile }, 
}, 
{ 
    headerMode: 'none', 
    mode: 'modal', 
    navigationOptions: { 
    gesturesEnabled: false, 
    } 
} 
);