React native 如何显示";“复制文本”;复制文本后,是否向用户发送?

React native 如何显示";“复制文本”;复制文本后,是否向用户发送?,react-native,native-base,touchableopacity,React Native,Native Base,Touchableopacity,复制文本后,如何向用户显示“文本已复制” const dataArray = [ { title: "Invoice Reference Number", content:QRCODE_SAMPLE.Irn } ]; <TouchableOpacity activeOpacity={1} onPress={() => Clipboard.setString(QRCODE_SAMPLE.Irn)}> <Accordion style={{paddin

复制文本后,如何向用户显示“文本已复制”

const dataArray = [ { title: "Invoice Reference Number", content:QRCODE_SAMPLE.Irn } ];

<TouchableOpacity activeOpacity={1}
    onPress={() => Clipboard.setString(QRCODE_SAMPLE.Irn)}>   
    <Accordion style={{paddingTop:10,paddingBottom:50,backgroundColor:'#E0DDDD'}}dataArray={dataArray} expanded={1}>
    </Accordion>
</TouchableOpacity> 
constdataarray=[{title:“发票参考号”,内容:QRCODE_SAMPLE.Irn}];
剪贴板.setString(QRCODE_SAMPLE.Irn)}>

我以前从未使用过剪贴板,但我假设您的代码正常工作,然后:

const [clipboardString, setClipboardString] = useState('');

handleClipboardAction = (str) => () => {
    Clipboard.setString(str);
    setClipboardString(setClipboardString)
}

<TouchableOpacity activeOpacity={1}
    onPress={handleClipboardAction(str)}>   
    <Accordion style={{paddingTop:10,paddingBottom:50,backgroundColor:'#E0DDDD'}}dataArray={dataArray} expanded={1}>
    </Accordion>
</TouchableOpacity> 
const[clipboardString,setClipboardString]=useState(“”);
handleClipboardAction=(str)=>()=>{
剪贴板.setString(str);
setClipboardString(setClipboardString)
}
然后,您可以观察状态,查看是否有任何内容被复制,并有条件呈现“文本已复制”消息:

{clipboardString.length>0&&Text被复制}

您可以这样做:

    import {ToastAndroid} from 'react-native';
创建此函数:

    onCopyPressed(){

    Clipboard.setString(QRCODE_SAMPLE.Irn);
    ToastAndroid.show('A pikachu appeared nearby !', ToastAndroid.SHORT);
    }
然后像这样调用该函数:

const dataArray = [ { title: "Invoice Reference Number", content:QRCODE_SAMPLE.Irn } ];
<TouchableOpacity activeOpacity={1}
        onPress={this.onCopyPressed.bind(this)}>   
        <Accordion style={{paddingTop:10,paddingBottom:50,backgroundColor:'#E0DDDD'}}dataArray={dataArray} expanded={1}>
        </Accordion>
    </TouchableOpacity> 
constdataarray=[{title:“发票参考号”,内容:QRCODE_SAMPLE.Irn}];

最简单的方法是使用一个在它们之间混合的包:

使用动画toast消息组件响应本机剪贴板API

支持Android和iOS |使用本地剪贴板| Toast by 调用api


你可以用吐司来做so@KaranMehta您能详细说明一下吗?当字符串存储在剪贴板中时,您应该向用户显示toast以确认他们的相同。如果您不明白,请告诉我我将向您展示如何执行该操作是的,toast对我有效,但我如何包括这两个剪贴板。setString(QRCODE\u SAMPLE.Irn)}还有吐司,在一次新闻发布会上表演?
const dataArray = [ { title: "Invoice Reference Number", content:QRCODE_SAMPLE.Irn } ];
<TouchableOpacity activeOpacity={1}
        onPress={this.onCopyPressed.bind(this)}>   
        <Accordion style={{paddingTop:10,paddingBottom:50,backgroundColor:'#E0DDDD'}}dataArray={dataArray} expanded={1}>
        </Accordion>
    </TouchableOpacity>