0

我正在尝试在具有一些默认样式的 react native 中创建一个自定义按钮,但我希​​望该按钮允许我根据情况更改它的新样式的默认样式。

代码是这样的:

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

export default function custom_button({txt, onPress}){
    return(
        <TouchableOpacity style={styles.container} onPress={onPress} >
            <Text style={styles.text}>{txt}</Text>
        </TouchableOpacity>
    )
}
const styles = StyleSheet.create({
    container:{
        backgroundColor:'#3F51B5',
        padding:10,
        margin:20,
        width:'80%',
        borderRadius:15,
        alignItems:'center'
    },
    text:{
        fontWeight:'bold', 
        color:'white', 
        fontSize:16
    }
});

我需要一个英雄

4

3 回答 3

0

你可以做一个全局样式来做类似的用途,当你需要修改样式时可以这样做 style={[styles.container,{add what you want to modify here}]} 希望对你解决有帮助你的问题

于 2021-05-08T03:44:01.993 回答
0

它是一个非常简单的实现:

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

export default function custom_button({txt, onPress, txtStyle, buttonStyle}){
    return(
         <TouchableOpacity style={[styles.container1,buttonStyle && buttonStyle]} onPress={onPress} >
            <Text style={[styles.text1,txtStyle && txtStyle]}>{txt}</Text>
        </TouchableOpacity>
    )
}
const styles = StyleSheet.create({
    container:{
        backgroundColor:'#3F51B5',
        padding:10,
        margin:20,
        width:'80%',
        borderRadius:15,
        alignItems:'center'
    },
    text:{
        fontWeight:'bold', 
        color:'white', 
        fontSize:16
    }
});

还为您制作了小吃。你可以在这里试验和玩耍。

于 2021-05-08T05:55:00.420 回答
-1

您应该从本机反应中查看“按钮”。确保从 'react-native' 导入 { Button };

这是一个例子:

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

我也同意 Faris 的回答,你可以创建全局样式。只需将样式从容器/文本更改为其他样式

查看更多信息https://reactnative.dev/docs/button

于 2021-05-08T04:04:20.047 回答