React-Native, wie man ein Bild hinzufügt und in Touchable drückt

Lesezeit: 2 Minuten

Benutzeravatar von Mr.moayed
Herr moayed

Ich habe berührbar in Reaktion native, innen berührbar habe ich Bild und auf der Presse so

 <TouchableHighlight >
  <Image style={styles.imagestyle}
  source={require('./ic_action_name.png')} />
  onPress={() => this.moveToAddNewCustomer()}>
 </TouchableHighlight>

Als ich versuchte, die App auszuführen, bekam ich diesen Fehler

Es wird erwartet, dass React.Childeren.only ein einzelnes untergeordnetes Element des React-Elements erhält

Wie kann man das beheben?

Benutzeravatar von Venkatesh Somu
Venkatesh Somu

Du musst es so machen:

<TouchableHighlight onPress={() => this.moveToAddNewCustomer()}>
    <Image style={styles.imagestyle} source={require('./ic_action_name.png')} />
</TouchableHighlight>

oder

<TouchableOpacity onPress={()=>this.moveToAddNewCustomer()}>
    <Image style={styles.imagestyle} source={require('./ic_action_name.png')} />
</TouchableOpacity>

  • Diese Lösung funktioniert nicht unter iOS. Ich verwende 0,63. Was könnte das Problem sein?

    – ThinkAndCode

    27. Juli 2021 um 15:25 Uhr

  • @Mighty Ich schlage vor, dass Sie React-Native-Material-Ripple oder TouchableWithoutFeedback verwenden.

    – Esel

    2. März 2022 um 6:54 Uhr

Standardmäßig gibt es keine Klicks oder Ereignisse, die mit einer der Ansichten in React Native wie React.js verbunden sind. Es gibt hauptsächlich zwei Ansichten, die speziell für die Handhabung von Berührungsereignissen entwickelt wurden. Sie sind TouchableOpacity Und TouchableHighlight. Sie können Ihr Problem lösen, indem Sie Ihre Image Komponente mit TouchableOpacity oder TouchableHighlight.

<TouchableHighlight onPress={() => this.moveToAddNewCustomer()}>
    <Image style={styles.imagestyle} source={require('./ic_action_name.png')} />
</TouchableHighlight>

https://reactnative.dev/docs/touchablehighlight

https://reactnative.dev/docs/touchableopacity

Wenn

TouchableHighlight onPress={() => this.moveToAddNewCustomer()}>
    <Image style={styles.imagestyle} source={require('./ic_action_name.png')} />
</TouchableHighlight>

hat nicht funktioniert, Sie sollten Ihr Bild in a einfügen <view>

Benutzeravatar von Narayan Shrestha
Narayan Shrestha

Ich habe mein Problem mit “TouchableWithoutFeedback” gelöst.

<TouchableWithoutFeedback
    onPress={() => {
       this.moveToAddNewCustomer()}
    }}
>
    <Image
      style={styles.newImage}
      // resizeMode="contain"
      source={require("~/assets/images/test123.png")}
    />
</TouchableWithoutFeedback>

Benutzeravatar von noob tv
Noob-Fernseher

Wenn

TouchableHighlight onPress={() => this.moveToAddNewCustomer()}>
<Image style={styles.imagestyle} source={require('./ic_action_name.png')} />
</TouchableHighlight>

hat nicht funktioniert oder sogar das Bild mit der Ansicht umbrochen, dann empfehle ich Ihnen, in Ihrem nachzuschlagen

style={styles.imagestyle}

versuchen zu benutzen zIndex: 10
Es besteht eine geringe Chance, dass Ihr Bild von etwas überlagert wurde, aber das Bild geht nicht verloren.

  • So wie es derzeit geschrieben steht, ist Ihre Antwort unklar. Bitte bearbeiten Sie, um zusätzliche Details hinzuzufügen, die anderen helfen zu verstehen, wie dies die gestellte Frage beantwortet. Weitere Informationen zum Verfassen guter Antworten finden Sie in der Hilfe.

    – Gemeinschaft
    bot

    1. März um 12:34 Uhr

  • So wie es derzeit geschrieben steht, ist Ihre Antwort unklar. Bitte bearbeiten Sie, um zusätzliche Details hinzuzufügen, die anderen helfen zu verstehen, wie dies die gestellte Frage beantwortet. Weitere Informationen zum Verfassen guter Antworten finden Sie in der Hilfe.

    – Gemeinschaft
    bot

    1. März um 12:34 Uhr

1448300cookie-checkReact-Native, wie man ein Bild hinzufügt und in Touchable drückt

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy