ตัวบ่งชี้การโหลดจะใช้เมื่อเราต้องการบอกผู้ใช้ว่าคำขอที่พวกเขาทำบน UI นั้นต้องใช้เวลา ในกรณีที่ผู้ใช้คลิกปุ่มส่งหลังจากกรอกแบบฟอร์มหรือคลิกปุ่มค้นหาเพื่อรับข้อมูลบางส่วน
ReactNative นำเสนอองค์ประกอบ ActivityIndicator ที่มีวิธีต่างๆ ในการแสดงตัวบ่งชี้การโหลดบน UI
องค์ประกอบ ActivityIndicator พื้นฐานมีดังนี้ -
<ActivityIndicator animating = {animating} color = '#bc2b78' size = "large"
style = {yourstyle}/> ในการทำงานกับ ActivityIndicator คุณต้องนำเข้าดังต่อไปนี้ -
import { ActivityIndicator} from 'react-native'; นี่คือคุณสมบัติที่สำคัญบางส่วนที่มีอยู่ใน ActivityIndicator
| ซีเนียร์ | อุปกรณ์ประกอบฉาก &คำอธิบาย |
|---|---|
| 1 | แอนิเมชั่น สำหรับการแสดงภาพเคลื่อนไหวของตัวบ่งชี้การโหลด ต้องใช้ค่าบูลีนจริงเพื่อแสดงตัวบ่งชี้ และเป็นเท็จเพื่อซ่อน |
| 2 | สี สีที่จะแสดงสำหรับตัวบ่งชี้การโหลด |
| 3 | ซ่อนเมื่อหยุด เพื่อหยุดตัวบ่งชี้เมื่อไม่เคลื่อนไหว ค่า istrue/false |
| 4 | ขนาด ขนาดของตัวบ่งชี้ ค่าที่มีขนาดเล็กและขนาดใหญ่ |
ตัวอย่าง:การแสดงตัวบ่งชี้การโหลด
ตัวบ่งชี้การโหลดทำได้โดยใช้ ActivityIndicator ดังนั้นให้นำเข้าก่อน -
import { ActivityIndicator, View, StyleSheet } from 'react-native'; นี่คือส่วนประกอบ ActivityIndicator ที่ใช้ -
<ActivityIndicator
animating = {animating}
color = '#bc2b78'
size = "large"
style = {styles.activityIndicator}/> แอนิเมชั่นถูกตั้งค่าเป็นตัวแปรแอนิเมชั่นซึ่งโดยดีฟอลต์จะถูกตั้งค่าเป็นจริง เมธอด closeActivityIndicator ถูกเรียกภายในฟังก์ชัน componentDidMount() ที่จะตั้งค่าสถานะการเคลื่อนไหวเป็นเท็จหลังจาก 1 นาที
state = { animating: true }
closeActivityIndicator = () => setTimeout(() => this.setState({
animating: false }), 60000)
componentDidMount = () => this.closeActivityIndicator() นี่คือรหัสเต็มเพื่อแสดงตัวบ่งชี้การโหลด -
import React, { Component } from 'react';
import { ActivityIndicator, View, StyleSheet } from 'react-native';
class ActivityIndicatorExample extends Component {
state = { animating: true }
closeActivityIndicator = () => setTimeout(() => this.setState({
animating: false }), 60000)
componentDidMount = () => this.closeActivityIndicator()
render() {
const animating = this.state.animating
return (
<View style = {styles.container}>
<ActivityIndicator
animating = {animating}
color = '#bc2b78'
size = "large"
style = {styles.activityIndicator}/>
</View>
)
}
}
export default ActivityIndicatorExample
const styles = StyleSheet.create ({
container: {
flex: 1,
justifyContent: 'center',
alignItems: 'center',
marginTop: 70
},
activityIndicator: {
flex: 1,
justifyContent: 'center',
alignItems: 'center',
height: 80
}
}) ผลลัพธ์
