React-native-router-flux: Navbarλ₯Ό μˆ¨κΈ°λŠ” 방법?

에 λ§Œλ“  2015λ…„ 12μ›” 10일  Β·  42μ½”λ©˜νŠΈ  Β·  좜처: aksonov/react-native-router-flux

상단 탐색 λͺ¨μŒμ„ μ œκ±°ν•˜κ³  μ‹ΆμŠ΅λ‹ˆλ‹€.
κ²½λ‘œμ— showNavigationBar={false}λ₯Ό μ„€μ •ν•˜λ €κ³  μ‹œλ„ν–ˆμ§€λ§Œ μ—¬μ „νžˆ μžˆμŠ΅λ‹ˆλ‹€.
λ‚΄κ°€ λͺ…λ°±ν•œ 것을 λ†“μΉ˜κ³  μžˆμŠ΅λ‹ˆκΉŒ?

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

이것은 λ‚˜μ—κ²Œ νš¨κ³Όκ°€ μžˆμŠ΅λ‹ˆλ‹€!

λͺ¨λ“  42 λŒ“κΈ€

'라우트'κ°€ μ•„λ‹Œ 'λΌμš°ν„°'에 μ‚¬μš©ν•˜μ‹­μ‹œμ˜€. λ¬Έμ„œμ— λŒ€ν•œ PR을 ν™˜μ˜ν•©λ‹ˆλ‹€ :)

λ‚˜λŠ” 그것을 μ‹œλ„ν–ˆμ§€λ§Œ navbarλ₯Ό μ œκ±°ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€ :/

ν•œλ²ˆ 확인해 볼게

루트 탐색 λͺ¨μŒμ„ λ¨Όμ € μ œκ±°ν•˜μ…¨μŠ΅λ‹ˆκΉŒ?

그렇지 μ•ŠμœΌλ©΄ ν•˜μœ„ ν•­λͺ©μ„ 숨기면 ν‘œμ‹œλ©λ‹ˆλ‹€...

skjermbilde 2015-12-10 kl 17 05 52

ν™•μ‹€νžˆ ν•˜κΈ° μœ„ν•΄ κ°€λŠ₯ν•œ λŒ€λΆ€λΆ„μ˜ μœ„μΉ˜μ— μΆ”κ°€ν•©λ‹ˆλ‹€.

μ•ˆλ“œλ‘œμ΄λ“œ λ˜λŠ” iOS? 방금 데λͺ¨λ₯Ό μˆ˜μ •ν•˜κ³  λ‘œκ·ΈμΈμ— ν”Œλž˜κ·Έλ₯Ό μΆ”κ°€ν–ˆμœΌλ©° 일반적으둜 탐색 λͺ¨μŒμ΄ ν‘œμ‹œλ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
μ•„λ‹ˆλ©΄ "μ‹€ν–‰" 탐색 λͺ¨μŒμ„ μˆ¨κΈ°μ‹œκ² μŠ΅λ‹ˆκΉŒ? 그러면 μ•„λ§ˆλ„ 'wrapRouter'κ°€ λ‚΄λΆ€ λΌμš°ν„°μ— μ „λ‹¬ν•˜μ§€ μ•Šμ„ κ²ƒμž…λ‹ˆλ‹€. μˆ˜μ •ν•˜κ² μŠ΅λ‹ˆλ‹€.




            <Route name="launch" component={Launch} initial={true} wrapRouter={true} title="Launch"/>
            <Route name="register" component={Register} title="Register"/>
            <Route name="home" component={Home} title="Replace" type="replace"/>
            <Route name="login" schema="modal">
                <Router showNavigationBar={false}>
                    <Route name="loginModal" component={Login} title="Login" schema="modal"/>
                    <Route name="loginModal2" component={Login2} title="Login2"/>
                </Router>
            </Route>
            <Route name="register2" component={Register} title="Register2"  schema="withoutAnimation"/>
            <Route name="tabbar">
                <Router footer={TabBar} showNavigationBar={false}>
                    <Route name="tab1" schema="tab" title="Tab #1" >
                        <Router>
                            <Route name="tab1_1" component={TabView} title="Tab #1_1" />
                            <Route name="tab1_2" component={TabView} title="Tab #1_2" />
                        </Router>
                    </Route>
                    <Route name="tab2" schema="tab" title="Tab #2" component={TabView} />
                    <Route name="tab3" schema="tab" title="Tab #3" component={TabView} />
                    <Route name="tab4" schema="tab" title="Tab #4" component={TabView} />
                    <Route name="tab5" schema="tab" title="Tab #5" component={TabView} />
                </Router>
            </Route>
        </Router>

1.0.2 버전을 ν™•μΈν•˜μ‹­μ‹œμ˜€. 예제 λ‚΄μ—μ„œ 'μ‹€ν–‰' 화면에 λŒ€ν•œ 탐색 λͺ¨μŒλ„ λΉ„ν™œμ„±ν™”ν–ˆμŠ΅λ‹ˆλ‹€.

맀λ ₯처럼 μΌν–ˆμŠ΅λ‹ˆλ‹€. 감사 ν•΄μš”!

이것은 λ‚˜μ—κ²Œ νš¨κ³Όκ°€ μžˆμŠ΅λ‹ˆλ‹€!

  <Router hideNavBar={true} >

λ˜ν•œ μž‘λ™ν•©λ‹ˆλ‹€.

lakmalnirangaμ—μ„œ μœ„μ˜ μ½”λ“œλ₯Ό μ‹œλ„ν–ˆμ§€λ§Œ 헀더가 μ—¬μ „νžˆ 자리λ₯Ό μ°¨μ§€ν•©λ‹ˆλ‹€.
https://snag.gy/91aXTj.jpg

hideNavBar={true} :D

μΌν•˜λ‹€ !!!! @lakmalniranga 감사

<Scene key="SplashSCreen" component={SplashSCreen}  title="splash" hideNavBar={true} initial/>

hideNavBar에 true 값을 ν• λ‹Ήν•  ν•„μš”μ‘°μ°¨ μ—†μŠ΅λ‹ˆλ‹€.
μ–ΈκΈ‰ν•˜λ©΄ μ •μ˜λ˜μ§€ μ•Šμ€ 것이 μ•„λ‹ˆλΌ true 값을 μ œκ³΅ν•œλ‹€λŠ” μ˜λ―Έμž…λ‹ˆλ‹€.
이 문제λ₯Ό μ–ΈκΈ‰ν•˜λŠ” 미래의 μ‚¬μš©μžλ₯Ό μœ„ν•΄ μΆ”κ°€ν•˜κΈ°λ§Œ ν•˜λ©΄ λ©λ‹ˆλ‹€.

<Scene 
key="SplashSCreen" 
component={SplashSCreen}  
title="splash" 
hideNavBar
 initial
/>

hideNavBarλ₯Ό μ‚¬μš©ν•  λ•Œ μ—¬μ „νžˆ λ‚˜νƒ€λ‚˜λŠ” 이유
screen shot 2017-06-09 at 1 34 44 am
screen shot 2017-06-09 at 1 33 59 am

@Omarkojak λΌμš°ν„°μ— paddingTop 65λ₯Ό μ£Όμ—ˆμŠ΅λ‹ˆλ‹€. 즉, 제λͺ©(navbar)이 μžˆλ“  μ—†λ“  λͺ¨λ“  μž₯면에 paddingTop이 65κ°€ λ©λ‹ˆλ‹€.

확인 μˆ˜μ • μ£„μ†‘ν•©λ‹ˆλ‹€

navbarλ₯Ό 숨길 뿐만 μ•„λ‹ˆλΌ μ œκ±°ν•˜λŠ” 방법이 μžˆμŠ΅λ‹ˆκΉŒ? 숨겨져 μžˆμ–΄λ„ μ—¬μ „νžˆ ν™”λ©΄μ˜ 곡간을 μ°¨μ§€ν•©λ‹ˆλ‹€.

μ—¬μ „νžˆ λ‚˜νƒ€λ‚©λ‹ˆλ‹€. 이유λ₯Ό μ•Œ 수 μ—†μŠ΅λ‹ˆλ‹€.
111
222

이것에 λŒ€ν•œ μ–΄λ–€ μ—…λ°μ΄νŠΈ? 탐색을 μˆ¨κΈ°λ”λΌλ„ μ—¬μ „νžˆ 거기에 μ•½κ°„μ˜ 곡간이 ν•„μš”ν•©λ‹ˆλ‹€.

@MehranJanfeshan v4 버전을

@aksonov λ‹΅λ³€ κ°μ‚¬ν•©λ‹ˆλ‹€. 버전 4λ₯Ό μ–»μ—ˆμ§€λ§Œ λ‹€μŒ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

[react-native-router-flux] props should be defined

λ¨Όμ € μ£Όμš” λ³€κ²½ 사항 확인

13 июля 2017 Π³., Π² 18:22, MehranJanfeshan [email protected] написал(Π°):

@aksonov λ‹΅λ³€ κ°μ‚¬ν•©λ‹ˆλ‹€. 버전 4λ₯Ό μ–»μ—ˆμ§€λ§Œ λ‹€μŒ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

[react-native-router-flux] μ†Œν’ˆμ„ μ •μ˜ν•΄μ•Ό ν•©λ‹ˆλ‹€.

β€”
당신이 μ–ΈκΈ‰λ˜μ—ˆκΈ° λ•Œλ¬Έμ— 이것을 λ°›λŠ” κ²ƒμž…λ‹ˆλ‹€.
이 이메일에 직접 λ‹΅μž₯ν•˜κ±°λ‚˜ GitHubμ—μ„œ λ³΄κ±°λ‚˜ μŠ€λ ˆλ“œλ₯Ό μŒμ†Œκ±°ν•˜μ„Έμš”.

@aksonov 이전 λ²„μ „μ—μ„œ λ‹€μŒκ³Ό 같이 ν•  수 μžˆμŒμ„ λ°œκ²¬ν–ˆμŠ΅λ‹ˆλ‹€.
<Router sceneStyle={{margin:0}} hideNavBar={true}> <Scene key="auth"> <Scene key="login" component={AuthScreen}/> </Scene> <Scene key="main"> <Scene onRight={() => Actions.auth()} rightTitle="Log out" key="newOrderList" component={EmployeeList} title="New Orders" initial /> <Scene key="orderDetails" component={OrderDetails} title="Order Details"/> </Scene> </Router>

κ·ΈλŸ¬λ‚˜ 버전 4둜 μ΄λ™ν•œ ν›„μ—λŠ” κ·Έλ ‡κ²Œ ν•  수 μ—†μœΌλ―€λ‘œ λ‹€μŒκ³Ό 같이 λ³€κ²½ν•˜κ³  μž‘λ™ν–ˆμŠ΅λ‹ˆλ‹€.

<Router sceneStyle={{margin:0}} hideNavBar={true}> <Scene key="auth"> <Scene key="login" component={AuthScreen}/> <Scene onRight={() => Actions.auth()} rightTitle="Log out" key="newOrderList" component={EmployeeList} title="New Orders" initial /> <Scene key="orderDetails" component={OrderDetails} title="Order Details"/> </Scene> </Router>

ν•˜μ§€λ§Œ 이것은 λ‚΄κ°€ μ›ν•˜λŠ” 것이 μ•„λ‹ˆλΌ μž₯면을 λΆ„λ₯˜ν•  수 있기λ₯Ό μ›ν•©λ‹ˆλ‹€. λ‹€λ₯Έ λŒ€μ•ˆμ΄ μžˆμŠ΅λ‹ˆκΉŒ?

λ¬Έμ œκ°€ 이해가 λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 예제λ₯Ό ν™•μΈν•˜κ³  κ±°κΈ°μ—μ„œ 문제λ₯Ό μž¬ν˜„ν•΄ λ³΄μ‹­μ‹œμ˜€.

13 июля 2017 Π³., Π² 18:45, MehranJanfeshan [email protected] написал(Π°):

@aksonov 이전 λ²„μ „μ—μ„œ λ‹€μŒκ³Ό 같이 ν•  수 μžˆμŒμ„ λ°œκ²¬ν–ˆμŠ΅λ‹ˆλ‹€.

κ·ΈλŸ¬λ‚˜ 버전 4둜 μ΄λ™ν•œ ν›„μ—λŠ” κ·Έλ ‡κ²Œ ν•  수 μ—†μœΌλ―€λ‘œ λ‹€μŒκ³Ό 같이 λ³€κ²½ν•˜κ³  μž‘λ™ν–ˆμŠ΅λ‹ˆλ‹€.

ν•˜μ§€λ§Œ 이것은 λ‚΄κ°€ μ›ν•˜λŠ” 것이 μ•„λ‹ˆλΌ μž₯면을 λΆ„λ₯˜ν•  수 있기λ₯Ό μ›ν•©λ‹ˆλ‹€. λ‹€λ₯Έ λŒ€μ•ˆμ΄ μžˆμŠ΅λ‹ˆκΉŒ?

β€”
당신이 μ–ΈκΈ‰λ˜μ—ˆκΈ° λ•Œλ¬Έμ— 이것을 λ°›λŠ” κ²ƒμž…λ‹ˆλ‹€.
이 이메일에 직접 λ‹΅μž₯ν•˜κ±°λ‚˜ GitHubμ—μ„œ λ³΄κ±°λ‚˜ μŠ€λ ˆλ“œλ₯Ό μŒμ†Œκ±°ν•˜μ„Έμš”.

λ‹€μŒμ€ 버전 3μ—μ„œ μ™„λ²½ν•˜κ²Œ μž‘λ™ν•˜λŠ” μ½”λ“œμ΄μ§€λ§Œ 버전 4둜 μ—…κ·Έλ ˆμ΄λ“œν–ˆμ„ λ•Œ λ‹€μŒ 였λ₯˜κ°€ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€.
[react-native-router-flux] props should be defined
κ·Έλž˜μ„œ νŒŒλž€μƒ‰ μ„ μœΌλ‘œ λ‘˜λŸ¬μ‹ΈμΈ 뢀뢄을 μ œκ±°ν–ˆλŠ”λ° 잘 μž‘λ™ν•©λ‹ˆλ‹€.
image

ν•˜λ‚˜μ˜ 루트 μž₯면으둜 λž˜ν•‘ν•˜μ‹­μ‹œμ˜€.

13 июля 2017 Π³., Π² 18:55, MehranJanfeshan [email protected] написал(Π°):

λ‹€μŒμ€ 버전 3μ—μ„œ μ™„λ²½ν•˜κ²Œ μž‘λ™ν•˜λŠ” μ½”λ“œμ΄μ§€λ§Œ 버전 4둜 μ—…κ·Έλ ˆμ΄λ“œν–ˆμ„ λ•Œ λ‹€μŒ 였λ₯˜κ°€ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€.
[react-native-router-flux] μ†Œν’ˆμ„ μ •μ˜ν•΄μ•Ό ν•©λ‹ˆλ‹€.
κ·Έλž˜μ„œ νŒŒλž€μƒ‰ μ„ μœΌλ‘œ λ‘˜λŸ¬μ‹ΈμΈ 뢀뢄을 μ œκ±°ν–ˆλŠ”λ° 잘 μž‘λ™ν•©λ‹ˆλ‹€.

β€”
당신이 μ–ΈκΈ‰λ˜μ—ˆκΈ° λ•Œλ¬Έμ— 이것을 λ°›λŠ” κ²ƒμž…λ‹ˆλ‹€.
이 이메일에 직접 λ‹΅μž₯ν•˜κ±°λ‚˜ GitHubμ—μ„œ λ³΄κ±°λ‚˜ μŠ€λ ˆλ“œλ₯Ό μŒμ†Œκ±°ν•˜μ„Έμš”.

ν•˜λ‚˜μ˜ 루트 μž₯면으둜 λž˜ν•‘ν•˜λ©΄ λ’€λ‘œ λ²„νŠΌμ„ μ–΄λ–»κ²Œ μ œμ–΄ν•  수 μžˆμŠ΅λ‹ˆκΉŒ? λ‚˜λŠ” μ‚¬μš©μžκ°€ 둜그인 νŽ˜μ΄μ§€λ‘œ λŒμ•„κ°ˆ 수 있기λ₯Ό μ›ν•˜μ§€ μ•ŠκΈ° λ•Œλ¬Έμ— '씬'을 μ‚¬μš©ν–ˆμŠ΅λ‹ˆλ‹€.

RNRF에 λŒ€ν•œ 질문이 μ•„λ‹ˆλΌ μ• ν”Œλ¦¬μΌ€μ΄μ…˜ ꡬ쑰에 λŒ€ν•œ μ§ˆλ¬Έμž…λ‹ˆλ‹€. tabs ν•˜κ±°λ‚˜ λ’€λ‘œ λ²„νŠΌμ„ λΉ„ν™œμ„±ν™”('μ΄ˆκΈ°ν™”' μ†μ„±μœΌλ‘œ ν‘œμ‹œ)ν•˜κ±°λ‚˜ 'λ°”κΎΈκΈ°' μœ ν˜•μ„ μ‚¬μš©ν•΄μ•Ό ν•œλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. 예λ₯Ό ν™•μΈν•˜μ‹­μ‹œμ˜€.

μ‹€μ œλ‘œ v3λŠ” μ—¬λŸ¬ μž₯면을 ν•˜λ‚˜λ‘œ κ°μŒŒμœΌλ―€λ‘œ λ’€λ‘œ λ²„νŠΌμ΄ ν‘œμ‹œλ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€(μƒμœ„ 탐색 λͺ¨μŒμ„ 숨기기 λ•Œλ¬Έμ—).

@aksonov 도움에 κ°μ‚¬ν•˜κ³  ν›Œλ₯­ν•œ μž‘μ—…μ— κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€ :)

이것은 λ‚˜λ₯Ό μœ„ν•΄ μΌν–ˆμŠ΅λ‹ˆλ‹€ : <Scene key="homeScreen" component={mainScreen} hideNavBar={1} />

<Scene key="homeScreen" component={mainScreen} hideNavBar />λ₯Ό μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

@lakmalniranga 이것은 λ‚˜λ₯Ό μœ„ν•΄ μΌν–ˆμŠ΅λ‹ˆλ‹€. κ°μ‚¬ν•©λ‹ˆλ‹€!

곡μž₯

const RouterComponent = () => (
    <Router headerMode="none">
        <Stack key="main">
            <Scene 
                key="login" 
                component={Login} 
            />
        </Stack>
    </Router>
);

@ahmetilhann κ°μ‚¬ν•©λ‹ˆλ‹€! λΌμš°ν„°μ—μ„œ μžμ‹ μž₯면의 λͺ¨λ“  헀더λ₯Ό μ œκ±°ν•˜κ³  v4.0.0-beta.3μ—μ„œ 계속 μž‘λ™ν•©λ‹ˆλ‹€.

@ahmetilhann 정말 κ°μ‚¬ν•©λ‹ˆλ‹€! μ•„λ§ˆλ„ 이전 방법은 4.0 RN μ΄μ „μ—μ„œλ§Œ μž‘λ™ν•©λ‹ˆκΉŒ? μ €λŠ” 4.0.6이고 headerMode="none" μž‘λ™ν•©λ‹ˆλ‹€.

λ‚΄ ν”„λ‘œμ νŠΈλ₯Ό RN0.59.10으둜 μ—…κ·Έλ ˆμ΄λ“œν–ˆμ§€λ§Œ μ—¬μ „νžˆ λΌμš°ν„° 및 μž₯면에 react-native-router-fluxλ₯Ό μ‚¬μš©ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. 그리고 이 흰색 헀더 ν‘œμ‹œμ€„ λ¬Έμ œκ°€ μžˆμŠ΅λ‹ˆλ‹€. λ©°μΉ  λ™μ•ˆ μ €λ₯Ό λ°λ €κ°€μ„œ λ°˜μ‘ νƒμƒ‰μœΌλ‘œ μΈν•œ 것이라고 μ˜μ‹¬ν•˜κ³  끌 수 μžˆμ—ˆμ§€λ§Œ μ—¬μ „νžˆ 보기λ₯Ό μ°¨λ‹¨ν•˜λŠ” λ‹€λ₯Έ 헀더가 μžˆμŠ΅λ‹ˆλ‹€. 그러면 λ°˜μ‘ λ„€μ΄ν‹°λΈŒ λΌμš°ν„° ν”ŒλŸ­μŠ€ λ•Œλ¬ΈμΌ 수 μžˆλ‹€κ³  μƒκ°ν–ˆμŠ΅λ‹ˆλ‹€. @ahmetilhann 방법이 μž‘λ™ μ€‘μž…λ‹ˆλ‹€. λΌμš°ν„°μ—μ„œ headerMode="none"을 μ„€μ •ν•˜μ‹­μ‹œμ˜€. 생λͺ…μ˜ 은인!!!

이것은 λ‚˜μ—κ²Œ νš¨κ³Όκ°€ μžˆμŠ΅λ‹ˆλ‹€!

μš”μ μ—

μ•ˆλ…•ν•˜μ„Έμš”,
hideNavBarλ₯Ό μ‚¬μš©ν•˜λ©΄ ꡬ멍 ꡬ성 μš”μ†Œκ°€ μ‚¬λΌμ§‘λ‹ˆλ‹€.
λ‚΄ μ½”λ“œλŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

<Router>
                <Stack key="root" >
                    <Scene key="login" component={Login} title="Login" initial={true} hideNavBar={true}/>
                    <Scene key="signup" component={Signup} title="Signup" />
                </Stack>
</Router>

원인은 λ¬΄μ—‡μž…λ‹ˆκΉŒ?

Screenshot_2020-05-03 elschool

μ•ˆλ…•ν•˜μ„Έμš”,
hideNavBarλ₯Ό μ‚¬μš©ν•˜λ©΄ ꡬ멍 ꡬ성 μš”μ†Œκ°€ μ‚¬λΌμ§‘λ‹ˆλ‹€.
λ‚΄ μ½”λ“œλŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

<Router>
                <Stack key="root" >
                    <Scene key="login" component={Login} title="Login" initial={true} hideNavBar={true}/>
                    <Scene key="signup" component={Signup} title="Signup" />
                </Stack>
</Router>

원인은 λ¬΄μ—‡μž…λ‹ˆκΉŒ?

Screenshot_2020-05-03 elschool

λ‚˜λ„ 같은 λ¬Έμ œκ°€ μžˆμŠ΅λ‹ˆλ‹€.

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰