React Native图片显示以及点击

本文介绍了在React Native中如何正确地显示图片,并详细讲解了图片的点击事件处理,包括导入图片资源、使用Image组件、设置图片样式以及实现点击回调等功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

/**
 * Sample React Native App
 * https://github.com/facebook/react-native
 *
 * @format
 * @flow
 * @lint-ignore-every XPLATJSCOPYRIGHT1
 */

import React, {Component} from 'react';
import {
    Platform,
    StyleSheet,
    Text,
    View,
    TextInput,
    Button,
    Image,
    TouchableOpacity,
    Alert
} from 'react-native';


const instructions = Platform.select({
    ios: 'Press Cmd+R to reload,\n' + 'Cmd+D or shake for dev menu',
    android:
        'Double tap R on your keyboard to reload,\n' +
        'Shake or press menu button for dev menu',
});

const imgae_url = 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1553526121837&di=bad1e61c7c7c590a1c758c6a2a68bc6e&imgtype=0&src=http%3A%2F%2Fzkres1.myzaker.com%2F201812%2F5c026780622768eda6008803_640.jpg';

type Props = {};
export default class App extends Component<Props> {

    state = {
        likes: 0
    };

    onPress = () => {
        const {likes} = this.state;
        this.setState({likes: likes + 1});
    };


    render() {
        return (
            <View style={styles.container}>
                <Text style={styles.welcome}
                      onPress={() => {
                          // Alert.alert("点击了我");
                          Alert.alert("标题不能为空")

                      }}>
                    Welcome to React Native!

                </Text>

                <TouchableOpacity onPress={this.onPress}>
                    <Image source={{uri:imgae_url}} style={{width:200,height:200,margin:5}}/>

                </TouchableOpacity >
                <Text>
                    {this.state.likes}
                </Text>

                <TextInput
                    style={styles.editContain}
                    {...this.props} // 将父组件传递来的所有props传递给TextInput;比如下面的multiline和numberOfLines
                    editable={true}
                    maxLength={40}
                />


            </View>
        );
    }
}

const styles = StyleSheet.create({
    container: {
        flex: 1,
        justifyContent: 'center',
        alignItems: 'center',
        backgroundColor: '#F5FCFF',
    },
    welcome: {
        fontSize: 20,
        textAlign: 'center',
        margin: 10,
    },
    instructions: {
        textAlign: 'center',
        color: '#333333',
        marginBottom: 5,
    },

    editContain: {
        height: 40, borderColor: 'gray', borderWidth: 1, color: '#0000ff', backgroundColor: '#FF0000', minWidth: 100
    },
    thisButton: {
        marginTop: 50
    }

});

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值