在React Native上更改按钮字体大小

时间:2018-04-27 15:42:25

标签: reactjs react-native button react-navigation

我试图在我的本机应用上更改Button字体大小,但是我收到了错误消息。有谁知道如何正确地做到这一点? 谢谢。

6 个答案:

答案 0 :(得分:2)

我感觉您没有在Text内使用Touchable元素:

import React from 'react';
import { TouchableWithoutFeedback, Text } from 'react-native';

export default function ComponentName() {
  return (
    <TouchableWithoutFeedback>
      <Text style={{ fontSize: 24 }}>Button Text</Text>
    </TouchableWithoutFeedback>
  );
}

答案 1 :(得分:2)

很遗憾,根据文档(https://facebook.github.io/react-native/docs/button.html),您无法更改按钮的字体大小。您唯一可以更改的样式道具是“颜色”。

<Button
  onPress={onPressLearnMore}
  title="Learn More"
  olor="#841584"
  accessibilityLabel="Learn more about this purple button"
/>

答案 2 :(得分:1)

这是我的解决方案,可以轻松地将TouchableOpacityText一起使用来设置按钮样式:

import React, { Component } from 'react';
import { View, StyleSheet, TouchableOpacity, Text } from "react-native";

export default class CustomButton extends Component {
  render(){
    return (
      <View style={styles.container}>

        /* Custom Button */
        <TouchableOpacity
          style={styles.customBtnBG}
          onPress={() => {}} 
        >
          <Text style={styles.customBtnText}>Button</Text>
        </TouchableOpacity>

      </View>
    )
  }
}


const styles = StyleSheet.create({
  container: {
    flex: 1,
        justifyContent: "center",
    alignItems: "center"
  },

  /* Here style the text of your button */
    customBtnText: {
        fontSize: 40,
        fontWeight: '400',
        color: "#fff",
    },

  /* Here style the background of your button */
    customBtnBG: {
    backgroundColor: "#007aff",
    paddingHorizontal: 30,
    paddingVertical: 5,
    borderRadius: 30
    }
});

答案 3 :(得分:1)

您可以将react-native-elements与titleStyle道具一起使用。

import {Input, Button} from 'react-native-elements';

<Button
   onPress={this.addPicture}
   titleStyle={{
       color: "white",
       fontSize: 16,
   }}
   buttonStyle={{
       backgroundColor: "white",
       borderRadius: 60,
       flex: 1,
       height: 30,
       width: 30,  
   }}

   title="+"
/>

答案 4 :(得分:0)

您可以使用<Chart>TouchableHighlightTouchableOpacity创建自定义按钮。

TouchableNativeFeedback

When to use TouchableNativeFeedback, TouchableHighlight or TouchableOpacity?

答案 5 :(得分:0)

使用此库https://github.com/APSL/react-native-button代替React native中的Button组件。

<View>
  <Button
    style={{
      backgroundColor: "#FE434C",
      borderColor: "transparent",
      borderRadius: 20,
      width: 250
    }}
    textStyle={{ color: "#FFFFFF", fontSize: 20 }}
  >
    Hello
  </Button>
</View>