Все работает нормально на iOS, но на Android при рендеринге WebView мой экран мигает (черный, затем белый, затем отобразите веб-страницу).
В соответствии с этим ответом я попытался добавить android:hardwareAccelerated="false" в тег моего AndroidManifest.xml, но это не решает мою проблему. (Кроме того, он скрывает все эффекты тени, созданные с помощью свойства стиля возвышения)
Код: Выделить всё
}
startInLoadingState={true}
scrollEnabled={false}
/>
Код: Выделить всё
Код: Выделить всё
export class DelayedComponent extends React.PureComponent<
{ delay?: number; renderLoading?: any } & ViewProps,
{ show: boolean }
> {
constructor(props) {
super(props);
this.state = { show: false };
}
public render() {
console.log("RENDER DELAYED", this.state);
const loadingComp = this.props.renderLoading || (
Just wait a second...
);
const { delay, renderLoading, ...forwardProps } = this.props;
return (
{this.state.show ? this.props.children : loadingComp}
);
}
public async componentDidMount() {
const delay = this.props.delay || 1000;
await (() => new Promise(resolve => setTimeout(resolve, delay)))();
this.setState({ show: true });
}
}
Вот ссылка на видео, показывающее, что происходит: https://drive.google.com/open?id=1dX7of ... _0DcsOD12B
Я ожидаю, что экран не будет мигать при отрисовке WebView, как это происходит на устройствах iOS.
Спасибо за помощь! п>
Подробнее здесь: https://stackoverflow.com/questions/541 ... on-android
Мобильная версия