androidのPixel3 XLで予定が保存できないというフィードバックあったので対応してみた
どんな状況だったか?
確認したら、こんな感じになってました

ステータスバーに被っていました。
「SafeAreaView」使っていたはずなのに。。。と思いドキュメントを読んだらiOSのみ対応でした。
対応策
調べたら、単純にandoridの時は「paddingTop」すれば良いよとのことだったので、上記に記載のとおりに修正
■GlobalStyles.js:
import { StyleSheet, Platform } from 'react-native';
export default StyleSheet.create({
droidSafeArea: {
flex: 1,
backgroundColor: npLBlue,
paddingTop: Platform.OS === 'android' ? 25 : 0
},
});
import GlobalStyles from "../../../GlobalStyles";
render() {
return (
<SafeAreaView style={GlobalStyles.droidSafeArea}>
// 略)
</SafeAreaView>
);
}
}
こんな感じになりました。

もうちょっと修正
ステータスバーの色が白いのでヘッダーに合わせました。
やり方は、こちらの通り
■GlobalStyles.js:
import { StyleSheet, Platform } from "react-native";
export default StyleSheet.create({
droidSafeArea: {
paddingTop: Platform.OS === "android" ? 30 : 0
}
});
import GlobalStyles from "../../../GlobalStyles";
render() {
const kind = this.state.kind || KIND_DEFAULT;
const config = KINDS[kind];
const ss = s.schedule;
const bc = Color(config.backgroundColor)
.alpha(ss.borderColorAlpha)
.toString();
return (
<>
<SafeAreaView
style={[GlobalStyles.droidSafeArea, { flex: 0, backgroundColor: bc }]}
/>
<SafeAreaView style={{ flex: 1 }}>
// 略)
</SafeAreaView>
);
}
}
SafeAreaViewを2つにして、flex:0を指定している方にヘッダーと同じカラーを指定します。
そうしたら、こんな感じになりました。
