react-native: 在屏幕中央显示微调器

Cha*_*har 3 javascript reactjs react-native react-native-android

我想在屏幕中央显示微调器。我使用了 alignItems、justifyContent 和 flex,但位置没有变化,然后我使用 margintop 进行正确定位。为什么 alignItems、justifyContent 和 flex 的使用没有变化?

我在这里使用微调器。

 return (
  <View style={style.spinnerStyle}>
  <Spinner size ="large" />
  </View>
 );
 const style = {
spinnerStyle: {
  flex: 1,
  marginTop:240
}
};
Run Code Online (Sandbox Code Playgroud)

Spinner.js

  import React from 'react';
  import {View,ActivityIndicator} from 'react-native';

  const Spinner = ({size}) => {
  return (
  <View style = {styles.spinnerStyle}>
  <ActivityIndicator size={size || 'large'} />
  </View>
  );
 };

const styles = {
spinnerStyle: {
flex: 1,
justifyContent: 'center',
alignItems:'center'
 }
 };

export { Spinner };
Run Code Online (Sandbox Code Playgroud)

Jig*_*hah 6

您可以尝试以下操作:

你在哪里使用 Spinner

spinnerStyle: {
    flex: 1,
    marginTop:240,
    justifyContent: 'center',
    alignItems:'center'
}
Run Code Online (Sandbox Code Playgroud)

在微调器中

spinnerStyle: {
    flex: 1
    alignSelf:'center'
}
Run Code Online (Sandbox Code Playgroud)

  • 这个答案是错误的。使用 marginTop 是一种黑客行为,它没有考虑所有不同的设备屏幕尺寸。请参阅我的答案,了解垂直居中 ActivityIndi​​cator 组件的正确方法。 (2认同)

归档时间:

查看次数:

9559 次

最近记录:

4 年,9 月 前