생각은 길게 코딩은 짧게

[React-Native] 간단한 Modal 구현 본문

React Native

[React-Native] 간단한 Modal 구현

sayhee 2022. 10. 18. 16:47
728x90

안녕하세요 세히이 입니다 이번에는 아이콘 클릭 시 Modal 을 띄워보았어요 :)

종 아이콘을 누르면 

 

모달 창으로 넘어가는 형태입니다 !

 

modal의 초기값은 false
 this.state = {
          modal: false
          }

 

 

아이콘을 눌렀을 때 호출 될 함수
handleModal = () => {
        this.setState({
          modal: this.state.modal ? false : true,
        });
      };

 

 

엠카즈 로고 옆의 종 아이콘을 눌렀을 때 TouchableOpacity 버튼기능을 사용하여 onpress 되었을 때 handleModal 호출
 <Text style={styles.textStyle}>엠카즈 로고                           <TouchableOpacity onPress={this.handleModal}>
                <Icon name="notifications" size={20} color="white" />
              </TouchableOpacity></Text>

 

 

  • React-Native에서 Button 보다 TouchableOpacity 를 사용하는 이유는                                                                    Button 컴포넌트는 안드로이드와 ios에서 다르게 보이기 때문에 관리하는데에 어려움이 있어서라고 합니다

 

Modal 창 코드로 뒤로가기는 아이콘을 통해 만들었습니다
<Modal visible={this.state.modal}>
                    <TouchableOpacity onPress={this.handleModal} style={{backgroundColor:'#fff',}}>
                        <Icon name={"chevron-left"} size={30} color="black" />
                    </TouchableOpacity>
                    <Text>모달 창입니다 </Text>
                </Modal>

 

결과화면

 

Modal 구현을 해보고 싶어서 간단하게 만들어보았는데

navigation 요소 중 stack을 이용하여 아이콘을 눌렀을 때 새 창으로 가도록 만들어주는 것이 더 좋을 것 같다고 생각했습니다. 굳이 이렇게 만들 필요성을 못 느꼈달까...? 다음엔 Modal 을 꼭 사용하여야 부분에 사용해보려구 합니다 !!