如何使 Expo.takeSnapshotAsync 在 Android 上工作

Chr*_*ong 3 reactjs react-native expo

我试图弄清楚如何在https://docs.expo.io/versions/latest/sdk/take-snapshot-async.html 中定义视图参数

功能:

  screenShot = async () => {
      let result = await takeSnapshotAsync(this.pageView, {format: 'jpg', result: 'file', quality: 1.0});
          const file = {
            uri: result,
            name: this.state.shiftIDclean+"-clockIn.jpg",
            type: "image/jpeg"
          }
      }
Run Code Online (Sandbox Code Playgroud)

看法:

  render() {
    return (
      <View ref={view => { this.pageView = view; }}>
        <Text>TEST CONTENT GOES HERE</Tex>
        </View>
    );
  }
Run Code Online (Sandbox Code Playgroud)

这在 iOS 模拟器上运行良好,但在 Andriod 上,我收到一个红屏错误:尝试使用不存在的标签 488 解析视图。

我试图找到一个有效的例子,但不能。我认为问题在于我没有定义要正确截屏的视图,但我似乎无法弄清楚。

Chr*_*ong 5

我不知道为什么,但将视图更改为此有效:

  <View
    collapsable={false}
    ref={view => {
      this.pageView = view;
    }}>
Run Code Online (Sandbox Code Playgroud)