2016-07-08 13 views
2

ich ein Problem mit dem Listview habe und TouchableHighlight ich dieses Tutorial gefolgt https://rnplay.org/apps/M4tiAQ Alles perfekt. Mein Problem ist, wenn ich versuche, Zeilendaten der Listenansicht auszuwählen. Es gibt mir nichts. Ich möchte die Szene ändern, während Zeilendaten ausgewählt werden. Hier ist Probe von dem, was ich tat in renderAdress FunktionReagieren indiaListenAnsicht TouchableHighlight

 renderAdress = (adress) => { 
    return (
<TouchableHighlight onPress = { this._onPressAddressList(rowData)} underlayColor = 'white' > 
     <View> 
     <Text>{adress.street}, {adress.city}, {adress.country}</Text> 
     </View> 
</TouchableHighlight> 
    ); 
    }; 

Was ich will, ist, wenn Benutzer eine der Zeilendaten aus der Liste auswählt, wird sich die Szene ändert und Zeilenwert an andere Szene übergeben. Ich schätze die Hilfe sehr. Danke

+1

Es scheint das Problem mit 'onPress' Funktion. Versuchen Sie es in 'onPress = {this._onPressAddressList.bind (this, rowData)}}' –

+0

@SafeerHussain, yeah es hat funktioniert. Danke. – DeJavu

+0

Ich habe es als Antwort hinzugefügt. –

Antwort

2

Es scheint das Problem mit onPress-Funktion. Versuchen Sie es zu onPress = { this._onPressAddressList.bind(this, rowData)}

 renderAdress = (adress) => { 
    return (
<TouchableHighlight onPress = { this._onPressAddressList.bind(this, rowData)} underlayColor = 'white' > 
     <View> 
     <Text>{adress.street}, {adress.city}, {adress.country}</Text> 
     </View> 
</TouchableHighlight> 
    ); 
    }; 
+0

Danke Ich habe noch ein Problem, wenn ich Zeilendaten aus der Liste auswählen. Beim ersten Klick wählt es nicht, wenn ich zum zweiten Mal klicke, dann tut es nur die Aktion. Irgendeine Idee, was ein Problem sein könnte? – DeJavu

+0

Ich kann nicht genau darüber nachdenken, was das Problem mit diesem Code verursacht. Möglicherweise stimmt etwas mit der '_onPressAddressList'-Funktion nicht oder Sie erhalten das' address'-Objekt beim Rendern möglicherweise nicht, wenn es von einem Remote-Server kommt (aufgrund der Verzögerung). Versuchen Sie, den Code zu debuggen. :) –

+0

Alles sieht gut aus. Ich kann Adressobjekt auch erhalten. Das einzige Problem ist, ich muss doppelt klicken, um das zu bekommen. – DeJavu