как программно сделать снимок экрана в react-native

Как я могу сделать снимок экрана в ReactNative. Мне нужен скриншот и поместите его в Image компонент. Как я мог это сделать?

2 ответов


для этого есть библиотека: Реагировать Родной Вид Выстрел

import RNViewShot from "react-native-view-shot";

RNViewShot.takeSnapshot(viewRef, {
  format: "jpeg",
  quality: 0.8
})
.then(
  uri => console.log("Image saved to", uri),
  error => console.error("Oops, snapshot failed", error)
);

для захвата в настоящее время отображается экран использовать captureScreen():

import { captureScreen } from "react-native-view-shot";

captureScreen({
  format: "jpg",
  quality: 0.8
})
.then(
  uri => console.log("Image saved to", uri),
  error => console.error("Oops, snapshot failed", error)
);

этот метод будет захватывать содержимое текущего отображаемого экран как скриншот собственного оборудования. Он не требует ref вход, так как он не работает на уровне представления. Это означает, что ScrollViews не будут захвачены полностью - только части в настоящее время виден пользователю.

вы можете найти больше о the react-native-view-shot библиотека здесь