0
私は、ドロップキャップ付きの段落を出力するReact Nativeアプリで機能を作ろうとしていました。ここで私が使用しているコードです:ネイティブIOS/Androidスタイルの違いに反応する
export function returnFirstParagraph(contentRef) {
return (
<View>
<View style={{ flex: 1, flexDirection: 'row', marginTop: 40, marginBottom: 10 }}>
<Text style={{ fontSize: 16, lineHeight: 28, alignSelf: 'flex-start' }}>
<Text style={{ fontSize: 40, lineHeight: 28, }}>
{contentRef.charAt(0)}
</Text>
{contentRef.slice(1)}
</Text>
</View>
</View>
);
}
contentRef
は、単に別のファイルから渡された文字列で、関連するテキストが含まれています。ここで
そして、ここでAndroidのバージョンです:あなたが見ることができるように
は、iOSのバージョンは、最初の行の先頭をカット、下パディング/マージンを追加最初の行は正しく見えません。一方、アンドロイド版は期待通りに出力されています。
これはなぜ起こっているのでしょうか?
編集: コードからlineHeightを削除することをお勧めしました。これは、物事を変更しましたが、問題を解決していない:
これは違いがありますが、iOSでは残りのスペースよりも最初の行の方が大きなスペースが残っています。また、UIには行間隔が必要です。段落行間隔は、その間に適切な量の垂直の空白を持つことを意味します。 Androidのバージョンでは1トンのスペースが追加されました。私は元の質問を更新しました。これは –
が最上部にパディングを設定していることを示しています。 – arjun
悲しいことに、そうでなければ、パディングはテキスト要素の周りにブロックとして現れ、何らかの方法で行間隔に影響を与えません。 –