2017-10-27 3 views
0

モーダルでオプションのリストを提示する必要があります。 Androidには<Picker>があり、クリックするとアイテムが表示されます。 iOSAlertです。<Picker>ダイアログを使用していますが、プログラム的に(最悪の場合トリガー)

Androidの場合、iOSのAlert APIと同様に、dialogのモード機能で<Picker>を使用し、要素を作成する必要はありません。これは可能ですか?

<Picker>の「プレス」を起動してダイアログをモーダルにするにはどうしたらいいですか?

+1

私が知る限り、AlertとPickerは2つの異なる機能を提供しています。私は、 "要素を作成せずに"あなたがコンポーネントクラスを作成せずに意味すると仮定します。あなたが必要とするものをもう少し説明できますか? – sfratini

+0

@sfratiniコメントありがとうございます。アンドロイドの 'Alert'のようなAPIが必要です。 Androidでは、 'Alert' APIは無制限のボタンを提供していません。 Android上で ''が開くダイアログは無制限のボタンを提供しますが、GUIの代わりにプログラミック/メソッドでダイアログを開くだけです。 – Noitidart

+1

Gotcha。まもなく私の答えを見てください。 – sfratini

答えて

1

これは、あなたがしたいことをする方法です。ピッカーを別のコンポーネントにラップして表示/非表示にすることができます。これは私が一度使った古い例です:

const MyPicker = React.createClass({ 
    getInitialState() { 
    return { displayed: true }; 
    }, 
    show() { 
    this.setState({ displayed: true }); 
    }, 
    hide() { 
    this.setState({ displayed: false }); 
    }, 
    render() { 
    if (this.state.displayed) { 
     return <Picker {...this.props}>{this.props.children}</Picker>; 
    } else { 
     return null; 
    } 
    }, 
}); 
+0

ありがとう@sfratini!私は ''でこれを試しましたが、 ' 'のサイズを大きくして、ビューを覆い、"ドロップダウン矢印 "が外に出ているので見えません。 'onPress'を持つものであれば動作しません。だから私は普通の ''を入れなければならなかったが、不透明度を失うことはなかった。ありがとう、私はちょうど理想ではないと私はGUIを使用して避けたいと思っていたにもかかわらず、今はこれを行うでしょう。ありがとうございます! – Noitidart

+0

あなたは何を意味するのかよく分かりません。より多くの情報/コードを質問に投稿してください。回避策がある場合は教えてください。 – sfratini

関連する問題