1.1.0 • Published 7 years ago

rnkit-actionsheet-picker v1.1.0

Weekly downloads
11
License
MIT
Repository
github
Last release
7 years ago

npm react-native MIT bitHound Score Downloads

The best DatePicker and DataPicker for React Native.

Support me with a Follow

npm.io npm.io

Getting Started

First, cd to your RN project directory, and install RNMK through rnpm . If you don't have rnpm, you can install RNMK from npm with the command npm i -S rnkit-actionsheet-picker and link it manually (see below).

iOS

  • ####React Native < 0.29 (Using rnpm)

    rnpm install rnkit-actionsheet-picker

  • ####React Native >= 0.29 $npm install -S rnkit-actionsheet-picker

    $react-native link rnkit-actionsheet-picker

Manually

  1. Add node_modules/rnkit-actionsheet-picker/ios/RNKitASPickerView.xcodeproj to your xcode project, usually under the Libraries group
  2. Add libRNKitASPickerView.a (from Products under RNKitASPickerView.xcodeproj) to build target's Linked Frameworks and Libraries list

Android

  • ####React Native < 0.29 (Using rnpm)

    rnpm install rnkit-actionsheet-picker

  • ####React Native >= 0.29 $npm install -S rnkit-actionsheet-picker

    $react-native link rnkit-actionsheet-picker

Manually

  1. JDK 7+ is required
  2. Add the following snippet to your android/settings.gradle:

    include ':rnkit-actionsheet-picker'
    project(':rnkit-actionsheet-picker').projectDir = new File(rootProject.projectDir, '../node_modules/rnkit-actionsheet-picker/android/app')
  3. Declare the dependency in your android/app/build.gradle

    dependencies {
        ...
        compile project(':rnkit-actionsheet-picker')
    }
  4. Import import io.rnkit.actionsheetpicker.ASPickerViewPackage; and register it in your MainActivity (or equivalent, RN >= 0.32 MainApplication.java):

    @Override
    protected List<ReactPackage> getPackages() {
        return Arrays.asList(
                new MainReactPackage(),
                new ASPickerViewPackage()
        );
    }

Finally, you're good to go, feel free to require rnkit-actionsheet-picker in your JS files.

Have fun! :metal:

Basic Usage

Import library

import { DatePicker, DataPicker } from 'rnkit-actionsheet-picker';

DatePicker

DatePicker.show({
      onPickerConfirm: (selectedDate) => {
        console.log(selectedDate);
        this.setState({
          date: selectedDate
        })
      },
      onPickerCancel: () => {
        console.log('date picker canceled');
      },
      onPickerDidSelect: (selectedDate) => {
        console.log(selectedDate);
      }
    })
    

Params

KeyTypeDefaultDescription
titleTextstring'选择时间'
titleTextColorstring'#393939'
doneTextstring'确定'
doneTextColorstring'#269ff7'
cancelTextstring'选择时间'
cancelTextColorstring'#269ff7'
minimumDatestring'1900-01-01 00:00:00'
maximumDatestring'2222-12-12 23:59:59'
selectedDatestring
datePickerModestring'datetime'time、date、datetime
onPickerConfirmFunreturn selectedDate
onPickerCancelFun
onPickerDidSelectFuniOS only

DataPicker

DataPicker.show({
      // dataSource: ["男", "女"],
      // dataSource: [{"北京": ["123123", "ssssss"]}, {"广东省": ["深圳"]}],
      // dataSource: [{"北京": [{"北京x": ["123123", "ssssss"]}, {"北京xasdfasdf": ["123123", "ssssss"]}]},{"广东省": [{"深圳": ["福田区", "宝安区"]}]}],
      dataSource: require('./area.json'),
      defaultSelected: ["广东", '深圳市', '福田区'],
      numberOfComponents: 3,
      onPickerConfirm: (selectedData, selectedIndex) => {
        console.log(selectedData, selectedIndex);
        this.setState({
          data: JSON.stringify(selectedData) + ' -- ' + JSON.stringify(selectedIndex)
        })
      },
      onPickerCancel: () => {
        console.log('data picker canceled');
      },
      onPickerDidSelect: (selectedData, selectedIndex) => {
        console.log(selectedData, selectedIndex);
      }
    })

Params

KeyTypeDefaultDescription
titleTextstring'选择时间'
titleTextColorstring'#393939'
doneTextstring'确定'
doneTextColorstring'#269ff7'
cancelTextstring'选择时间'
cancelTextColorstring'#269ff7'
yearTextstring'年'android only
monthTextstring'月'android only
dayTextstring'日'android only
hoursTextstring'时'android only
minutesTextstring'分'android only
secondsTextstring'秒'android only
wheelBgColorstring'滚轮背景颜色' android only
titleBgColorstring'标题栏背景颜色'android only
doneCancelSizeint17'确定取消按钮大小'android only
titleSizeint18'标题文字大小'android only
contentSizeint18'内容文字大小'android only
cancelEnabelbooleantrue'是否能取消'android only
isCenterLablebooleantrue'是否只显示中间的label'android only
outTextColorstring'分割线以外的文字颜色'android only
centerTextColorstring'分割线之间的文字颜色'android only
dividerColorstring'分割线的颜色'android only
shadeBgColorstring'遮罩层背景色'android only
lineSpacingMultiplierfloat1.6f'条目间距倍数'android only
dividerTypestring'分割线类型:fill or wrap'android only
isCyclicbooleanfalse'滚轮是否循环' android only
numberOfComponentsint1
dataSourcearray
defaultSelectedarray
onPickerConfirmFunreturn selectedData、selectedIndex
onPickerCancelFun
onPickerDidSelectFunselectedData、selectedIndex (iOS only)

Contribution

Thanks

@saiwu-bigkoo - Android-PickerView 仿iOS的PickerView控件,有时间选择和选项选择并支持一二三级联动效果 @skywinder - ActionSheetPicker-3.0 Quickly reproduce the dropdown UIPickerView / ActionSheet functionality on iOS.

Questions

Feel free to contact me or create an issue

made with ♥

1.1.0

7 years ago

1.0.6

7 years ago

1.0.5

7 years ago

1.0.4

7 years ago

1.0.3

7 years ago

1.0.2

7 years ago

1.0.1

7 years ago

1.0.0

7 years ago

0.0.13

7 years ago

0.0.12

7 years ago

0.0.11

7 years ago

0.0.9

7 years ago

0.0.8

7 years ago

0.0.7

7 years ago

0.0.6

7 years ago

0.0.5

7 years ago

0.0.4

7 years ago

0.0.3

7 years ago

0.0.2

7 years ago

0.0.1

7 years ago