Я хочу установить индикатор активности при вызове api, чтобы пользователь ничего не мог сделать, проблема в том, что когда я вызываю api, индикатор активности не включает заголовок (с использованием реакции-навигации), поэтому, пока вызывая api, пользователь может go вернуться к предыдущему экрану, в соответствии с этим возникает непредвиденная ошибка.
Вот код:
import React, { useEffect, useState } from 'react';
import { View, ActivityIndicator } from 'react-native';
const Screen1 = () => {
const [isLoading, setLoading] = useState(false);
useEffect(() => {
const fn = async () => {
setLoading(true);
const apiRes = await fetch(...);
setLoading(false);
};
fn();
}, []);
const renderIndicator = () => {
return (
<View style={{ position: 'absolute', top: 0, right: 0, bottom: 0, left: 0, alignItems: 'center', justifyContent: 'center' }}>
<ActivityIndicator />
</View>
);
}
return (
<>
<View style={{ flex: 1, backgroundColor: 'orange' }}>
{...}
</View>
{isLoading && renderIndicator()}
</>
);
}
export default Screen1;
Здесь основная проблема is <View style={{ position: 'absolute', top: 0, right: 0, bottom: 0, left: 0, alignItems: 'center', justifyContent: 'center' }}>
не содержит контейнера заголовка (реакции-навигации). Я хочу, чтобы индикатор активности содержал строку заголовка.
Я могу скрыть стандартный контейнер заголовка и использовать настраиваемый заголовок. но требуется использовать стандартный заголовок, а не настраиваемый.