2017-11-02 1 views
-3

Zum Beispiel habe ich 3 Tasten mit umrandeten Linie, wenn ich 2 von ihnen drücken, wird 2 dieser Schaltfläche seinen Stil zu einer Farbe gefüllt Schaltfläche ändern.Button ändern Stil nach onPress mit React Native

Sollte ich <Button> oder <TouchableHighlight> oder <TouchableOpacity> oder andere verwenden?

Ich brauche einen Beispielcode dafür in React Native.

+0

was meinst du damit, zwei von ihnen zu drücken? Möchten Sie den Stil von zwei Schaltflächen gleichzeitig ändern? –

+0

ja du hast Recht – wein

Antwort

1

Es spielt keine Rolle, Sie alle von ihnen kann ich in der Regel diesen Ansatz verwenden, wenn ich auf die Schaltfläche klicken i den Zustand der getriggerten Komponente ändern, wie die

Standardzustand: this.state = { styleIndex: 0 }

<Button 
    onPress={this.press} 
    style={this.state.styleIndex === 0 ? styles.buttonStyle : styles.buttonStyleClicked}/> 
+0

also, wenn die Schaltfläche ausgelöst wird, ich möchte es einen Wert zu einem Array concat, und wenn ich das zweite Mal drücken, ich möchte den Wert aus dem Array entfernen. Weißt du wie? – wein

+0

Sie müssen den Zustandswert ändern, wenn Sie die Taste drücken. Drücken Sie die Funktion sollte wie folgt aussehen: Drücken Sie() { if (this.state.styleIndex === 0) { this.setState ({styleIndex: 1}) } else { this.setState ({styleIndex: 0}) }} ' –

Verwandte Themen