为了账号安全,请及时绑定邮箱和手机立即绑定

如何将FlatList文本项复制到Clipboard onPress

如何将FlatList文本项复制到Clipboard onPress

明月笑刀无情 2021-05-08 11:09:00
由于我是React Native的新手,因此我将尽可能详细地说明这一点,也许这也会对其他人有所帮助✨。我正在使用React Native超级网格库,该库内部使用FlatList和SectionList来呈现网格布局。网格通过来自单独const的props填充文本我正在尝试做的是:当用户点击FlatList中的任何项目时,被点击的项目将被复制到剪贴板,并显示一条警报,确认已被复制。现在发生的事情:每个项目都是可轻敲的,并且正确的警报显示在onPress上,确认您已复制到剪贴板,但实际上没有任何内容写入剪贴板。为了确保writeToClipboard正常工作,我在其中有一条静态消息,上面写着“至少可以使剪贴板工作正常”,因此,如果您轻按任何一项,则该静态消息将被成功复制到剪贴板。我只是不确定如何将被点击的特定项目复制到剪贴板。这是网格组件的代码:import React, { Component } from "react";import {  StyleSheet,  Alert,  View,  Text,  TouchableOpacity,  Clipboard,  Button,  onPress} from "react-native";import { FlatGrid } from "react-native-super-grid";class Emojigrid extends Component {  constructor(props) {    super(props);    this.state = {      text: "WELL AT LEAST THE CLIPBOARD WORKS",      clipboardContent: null    };  }  writeToClipboard = async () => {    await Clipboard.setString(this.state.text);    alert("Boom, Copied");  };  render() {    return (      <FlatGrid        itemDimension={130}        items={items}        style={styles.gridView}        // staticDimension={300}        // fixed        spacing={2}        renderItem={({ item, index }) => (          <View style={[styles.itemContainer, { backgroundColor: "#F7F7F7" }]}>            <TouchableOpacity onPress={this.writeToClipboard}>              <Text style={styles.itemName}>{item.name}</Text>            </TouchableOpacity>          </View>        )}      />    );  }}export default Emojigrid;const items = [  { name: "¯_(ツ)_/¯" },  { name: "ʕ·͡ᴥ·ʔ" },  { name: "•`_´•" },];const styles = StyleSheet.create({  gridView: {    marginTop: 0,    marginBottom: 400,    flex: 1  },  itemContainer: {    justifyContent: "center",    alignItems: "center",    borderRadius: 0,    height: 125  },  itemName: {    fontSize: 18,    color: "black",    fontWeight: "400"  }});认为答案可能很明显,但是任何帮助都将不胜感激!
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 207 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号