2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

RactNativeでPickerを利用する

Last updated at Posted at 2019-09-06

Webでいうselectとかdropdown的なやつ。コンポーネントを探していたが標準搭載されているみたい。

スクリーンショット 2019-09-07 6.33.38.png

使い方も特に難しくはない。
とりあえず選択された値がAlertで表示されるようにしてみた。

App.js
import React from 'react';
import { StyleSheet, Text, View, Picker } from 'react-native';

export default class App extends React.Component {

  //選択状態を保存しておくstateを定義しておく
  state = {
    area: 2,
  }

  render() {

    return (
      <View style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}>
        <Text>Picker Demo</Text>
        <Picker
          style={{ width: 200, backgroundColor: '#ffffff' }}
          itemStyle={{ color: 'blue' }}
          selectedValue={this.state.area}
          onValueChange={(value) => {
            this.setState({ area: value }); //これをしないと選択しても標準値に戻ってしまう
            alert(value);
          }}
        >
          <Picker.Item label="東京" value={1} />
          <Picker.Item label="大阪" value={2} />
          <Picker.Item label="福岡" value={3} />
        </Picker>
      </View>
    );
  }
}

余談

開発中iOSエミュレータの動作が遅くなって困った。コードが悪いと思っていたが、どうやらcommand + Tを押してデバックを有効にしたためのようでした(iTermの新規Tabのショートカットとかぶってるので押してしまったのだと思う)。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?