React-Native 구성 요소 의 Modal 사용 에 대한 자세 한 설명
속성
Modal 이 제공 하 는 속성 은:
animation Type(애니메이션 형식)PropTypes.oneOf(['none','slide','fade']
none:애니메이션 이 없습니다.
슬라이드:바닥 에서 미끄러져 들 어 갑 니 다fade:시야 에 담담 하 다onRequestClose(삭 제 될 때 이 함 수 를 호출 합 니 다)
'Android'플랫폼 에서 이 함 수 를 호출 해 야 합 니 다.
onShow(모드 표시 시 호출 됨)
투명(투명도)bool
true 일 때 투명 배경 렌 더 링 모드 를 사용 합 니 다.
visible(가시 성)bool
onOrientationChange(방향 변경 시 호출)
모드 방향 이 변 할 때 호출 되 고 제공 하 는 방향 은'또는'일 뿐이다.렌 더 링 을 초기 화 할 때 도 호출 되 지만 현재 방향 은 고려 하지 않 습 니 다.
supported Orientations(지정 한 취향 으로 모드 회전 허용)['portrait','portrait-upside-down','landscape','landscape-left','landscape-right']
iOS 에서 모드 는 여전히 info.plist 의 UI Supported InterfaceOrientations 필드 에서 지정 한 제한 을 받 습 니 다.
예시
Modal 의 사용 은 매우 간단 합 니 다.예 를 들 어:
<Modal
animationType='slide' //
transparent={false} //
visible={this.state.isModal} // isModal
onRequestClose={() => {this.onRequestClose()}} // android
>
종합 예:
import React, { Component} from 'react';
import {
AppRegistry,
View,
Modal,
TouchableOpacity,
Text
} from 'react-native';
export default class ModalView extends Component {
constructor(props) {
super(props);
this.state = {
modalVisible: false,
}
}
setModalVisible = (visible)=> {
this.setState({
modalVisible: visible
})
};
render(){
return(
<View style={{flex: 1, justifyContent: 'center', alignItems: 'center', backgroundColor: '#ffaaff'}}>
<Modal animationType={'none'}
transparent={true}
visible={this.state.modalVisible}
onrequestclose={() => {alert("Modal has been closed.")}}
onShow={() => {alert("Modal has been open.")}}
supportedOrientations={['portrait', 'portrait-upside-down', 'landscape', 'landscape-left', 'landscape-right']}
onOrientationChange={() => {alert("Modal has been OrientationChange.")}}>
<View style={{flex:1, marginTop: 22, backgroundColor: '#aaaaaa', justifyContent: 'center', alignItems: 'center'}}>
<View>
<Text>Hello World!</Text>
<TouchableOpacity onPress={() => {
this.setModalVisible(false)
}}>
<Text> Modal</Text>
</TouchableOpacity>
</View>
</View>
</Modal>
<TouchableOpacity onPress={() => {
this.setModalVisible(true)
}}>
<Text> Modal</Text>
</TouchableOpacity>
</View>
)
}
}
AppRegistry.registerComponent('ModalView', ()=>ModalView);
실행 효과:modal 의 소스 코드 를 통 해 알 수 있 듯 이 modal 은 절대적 인 포 지 셔 닝 을 사 용 했 기 때문에 modal 이 우리 의 수 요 를 만족 시 키 지 못 할 때 우 리 는 절대적 인 포 지 셔 닝 을 통 해 자신 을 봉인 할 수 있다.
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
바삭바삭하고 간단한 결제 페이지 만들기먼저 Next.js에서 프로젝트를 만듭니다. Vercel & Next.js가 매우 편하기 때문에 최근에는이 구성을 사용하고 있습니다. 그런 다음 Tailwind CSS를 넣습니다. Tailwind CSS를 사용하면 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.