1.0.2 • Published 5 years ago

react-native-citys-picker v1.0.2

Weekly downloads
3
License
ISC
Repository
github
Last release
5 years ago

react-native-citys-picker

npm npm npm npm

IOS & 安卓都兼容的中国地区选择器组件。该组件中使用到了第三方react-native-modal组件,有一个问题就是当弹出modal后,点击背景层关闭时,会出现闪烁问题,这个是使用了react-native-modal组件导致,见issues 解决方法

DEMO

安装

npm install react-native-citys-picker --save

使用

import CityPicker from 'react-native-citys-picker';

// ios用法一
<CityPicker
  onSubmit={(params) => this.setState({ region1: `${params.province},${params.city},${params.area}` })}
  onCancel={() => console.log('cancel')}
>
  <TextInput
    editable={false}
    placeholder="点击去选择地区"
    value={this.state.region1}
  />
</CityPicker>

// android用法一
<CityPicker
  onSubmit={(params) => this.setState({ region1: `${params.province},${params.city},${params.area}` })}
  onCancel={() => console.log('cancel')}
>
  <Text
    style={{ backgroundColor: '#FFF', width: 200, paddingVertical: 20, textAlign: 'center', color: 'black' }}
  >{this.state.region1 || '点击去选择地区'}</Text>
</CityPicker>

// 用法二(参考Example目录index.ios.js/android.ios.js)
<CityPicker
  isVisible={this.state.isPickerVisible}
  navBtnColor={'red'}
  selectedProvince={'广东'}
  selectedCity={'深圳'}
  selectedArea={'福田区'}
  transparent
  animationType={'down'}
  onSubmit={this._onPressSubmit.bind(this)} // 点击确认_onPressSubmit
  onCancel={this._onPressCancel.bind(this)} // 点击取消_onPressCancel
  androidPickerHeight={100}   // 安卓手机下可以设置picker区域的高度
/>

<TouchableOpacity
  onPress={this._onPress2Show.bind(this)}
>
  <Text style={{ color: 'white' }}>{this.state.region2 || '点击去选择地区' }</Text>
</TouchableOpacity>

属性设置

PropTypeOptionalDefaultDescription
titlestring选择地区modal标题
isVisibleboolfalse是否显示modal
selectedProvincestringYes江西选择省
selectedCitystringYes萍乡选择市
selectedAreastringYes安源区选择区
navBtnColorstringYes#3896B2按钮颜色
animationTypestringYesslide弹出方向,'up', 'down', 'left, or 'right'
transparentboolYestrue背景透明
onSubmitfuncYes确认时,将调用此函数
onCancelfuncYes取消时,将调用此函数
androidPickerHeightnumberYes50安卓手机下可以由该属性来设置picker区域的高度