ฉันกำลังพัฒนาแอปพลิเคชันแบบรีแอคทีฟ หน้าจอแอปใดหน้าจอหนึ่งมีรายการอัลบั้ม ฉันได้แบ่งแต่ละคอนเทนเนอร์อัลบั้มออกเป็นส่วนประกอบต่างๆ ได้แก่ Card และ CardSection
การ์ดสามารถประกอบด้วย CardSections ได้หลายส่วน CardSection จะมีรูปภาพและ 2 ชื่อข้อความ ปัญหาที่ฉันกำลังเผชิญคือการวางตำแหน่งเนื้อหาใน CardSection เนื่องจาก flexDirection:'row'
ไม่ทำงาน
นี่คือ CardSection.js
import React from 'react';
import {View, Text, Image} from 'react-native';
import Card from './Card';
import CardSection from "./CardSection";
const AlbumDetail = ({album}) => {
// destructing the props
const {title, artist, thumbnail_image} = album;
return (
<Card>
<CardSection>
<View style={styles.thumbnailContainerStyle}>
<Image style={styles.thumbnailStyle} source={{uri: thumbnail_image}} />
</View>
<View style={styles.headerContentStyle} >
<Text style={styles.headerTextStyle}>{title}</Text>
<Text>{artist}</Text>
</View>
</CardSection>
</Card>
);
};
const styles = {
headerContentStyle: {
flexDirection: 'column',
justifyContent: 'space-around'
},
headerTextStyle:{
fontSize:18
},
thumbnailStyle: {
height: 50,
width: 50
},
thumbnailContainerStyle: {
justifyContent: 'center',
alignItems: 'center',
margin: 10,
marginRight: 10
}
};
export default AlbumDetail;
นี่คือ CardSection.js
import React from 'react';
import {View} from 'react-native';
const CardSection = (props) => {
return (
<View styles={styles.containerStyle}>
{props.children}
</View>
);
};
const styles = {
containerStyle: {
borderBottomWidth: 1,
padding: 5,
backgroundColor: '#fff',
justifyContent: 'flex-start',
flexDirection: "row",
borderColor: '#ddd',
position: 'relative'
}
};
export default CardSection;
ผลลัพธ์ควรที่รูปภาพวางไว้ทางด้านซ้ายและทางด้านขวาของรูปภาพจะมีชื่อข้อความ 2 ชื่อและ flexDirection จะเป็น column