/**
* Sample React Native App
* https://github.com/facebook/react-native
*
* @format
* @flow
*/
import React, { Component } from "react";
import {
Platform,
StyleSheet,
Text,
View,
Image,
FlatList,
TouchableOpacity,
ImageBackground,
TextInput,
Button,
ViewPagerAndroid,
DeviceEventEmitter,
SectionList,
Animated,
TouchableHighlight
} from "react-native";
import Swiper from "react-native-swiper";
import AndroidUtil from "../../util/AndroidUtil";
import BasePage from "../BasePage";
import Header from "./Header";
import MySwiper from "./Swiper";
import Dimensions from '../utils/dimensions';
import TopicTitle from './TopicTitle';
import ScrollRow from "./ScrollRow";
// import console from 'console';
export default class MainPage extends BasePage {
constructor(props) {
super(props);
}
state = {
grade: '大学',
text: '小伙子',
ifGradeMenuShow: false,
fadeAnim: new Animated.Value(0),
}
render() {
return (
{/* 尝试切换为sectionList 分组显示 */}
{
return this.loadFlatItem(item);
}}
keyExtractor={(item, index) => item.key.toString()}
ListHeaderComponent={() => this.headerorfooterComponent()}
renderSectionHeader={this.sectionTitle}
onScroll={this.hideGradeMenu}
/>
{
this.state.ifGradeMenuShow ? (
小学
学前
中学
) : (
null
)
}
);
}
// 头部组件
headerorfooterComponent() {
return (
this.toNextPage("userCenter")}
/>
{/* 搜索区域 */}
this.setState({ text })}
value={this.state.text}
/>
{this.state.grade}
);
}
// 渲染轮播图
getSwiperElement() {
console.log('进入swiper')
return (
);
}
// 渲染课程表
getScheduleElement(data) {
let arr = [];
let index = 0;
for (let item of data.item.icon_item) {
arr.push(
{
alert(Dimensions.width.toString());
}}
key={index}
activeOpacity={1}
>
);
if (index < data.item.icon_item.length - 1) {
arr.push(
);
}
index++;
}
return (
{arr}
);
}
// 渲染每一个块儿
loadFlatItem(data) {
console.log(data)
console.log(data.typea)
switch (data.typea) {
// 轮播图
case 1:
console.log(1)
return this.getSwiperElement();
break;
// 课程表
case 2:
console.log(2)
return this.getScheduleElement(data);
break;
// 大图主题
case 3:
console.log(3)
return (
);
break;
// 热门课程
case 4:
return (
)
break;
case 5:
return (
)
break;
default:
break;
}
}
// 渲染每一个section的title
sectionTitle = (info) => {
console.log(info)
switch (info.section.title) {
case 'operation':
console.log('进入运营区头部', info.section.title)
return (
);
break;
case 'courses':
return
break;
default:
break;
}
}
// 点击呼出学龄菜单
tabCallOutHandler = () => {
this.setState({
ifGradeMenuShow: !this.state.ifGradeMenuShow
}, () => {
Animated.timing(
this.state.fadeAnim,
{
toValue: this.state.ifGradeMenuShow ? 1 : 0,
duration: 300,
}
).start();
})
}
// 如果切换学龄在显示状态,那么在它失去焦点时将它隐藏
hideGradeMenu = () => {
if (this.state.ifGradeMenuShow) {
this.setState({
ifGradeMenuShow: false
})
}
}
}
const styles = StyleSheet.create({
title_text: {
justifyContent: "center",
alignItems: "center",
color: "red",
fontSize: 30,
textAlign: "center",
marginTop: 30,
marginBottom: 50
},
/* 搜索区域 */
searchSection: {
flex: 1,
width: Dimensions.width,
height: 60,
flexDirection: 'row',
alignItems: 'center',
backgroundColor: '#f0f1f5',
justifyContent: 'space-around',
position: 'relative',
},
searchBox: {
width: 232,
height: 40,
backgroundColor: '#fff',
borderRadius: 20
},
rightBtn: {
width: 113,
height: 40,
backgroundColor: '#fff',
borderRadius: 20,
alignItems: 'center',
justifyContent: 'center',
justifyContent: 'space-around',
flexDirection: 'row',
paddingLeft: 20,
paddingRight: 10,
},
rightBtnIcon: {
width: 14,
height: 14
},
rightBtnText: {
color: '#151515',
fontSize: 18,
},
callUpGrade: {
width: 113,
height: 120,
borderRadius: 20,
position: 'absolute',
right: 9,
top: 125,
zIndex: 999,
elevation: 999,
backgroundColor: '#fff',
flexDirection: 'column'
},
gradeItem: {
zIndex: 999,
flex: 1,
alignItems: 'center',
justifyContent: 'center',
},
gradeItemMid: {
zIndex: 999,
flex: 1,
alignItems: 'center',
justifyContent: 'center',
borderTopWidth: 1,
borderBottomWidth: 1,
borderColor: '#f0f1f5'
},
gradeText: {
color: '#151515',
fontSize: 18,
}
});
const sectionData = [
{
title: 'swiper',
data: [{
//轮播
key: 111,
typea: 1,
text: "第一种类型"
},
{
//只有一个标题下面两个图片
key: 222,
typea: 2,
item: {
item_type: 1,
title: "课程表:第一周",
icon_item: [
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第一张图片文字"
},
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第二张图片文字"
}
]
}
},]
},
{
title: 'operation',
data: [{
//一个标题,大长图
key: 444,
typea: 3,
title: "五月主题:五一启程,去看看不同世界",
text: "每天30分钟,玩学两不误",
icon_item: [
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第一张图片文字"
},
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第二张图片文字"
},
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第三张图片文字"
},
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第四张图片文字"
},
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第五张图片文字"
}
]
},
{
key: 555,
typea: 4,
title: "热门课程",
text: "text",
mask: false,
icon_item: [
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第一张图片文字"
},
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第二张图片文字"
},
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第三张图片文字"
},
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第四张图片文字"
},
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第五张图片文字"
}
]
},]
},
{
title: 'courses',
data: [{
//一个标题,大长图
key: 444,
typea: 5,
title: "五月主题:五一启程,去看看不同世界",
text: "每天30分钟,玩学两不误",
icon_item: [
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第一张图片文字"
},
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第二张图片文字"
},
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第三张图片文字"
},
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第四张图片文字"
},
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第五张图片文字"
}
]
},
{
key: 555,
typea: 5,
title: "热门课程",
text: "text",
mask: false,
icon_item: [
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第一张图片文字"
},
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第二张图片文字"
},
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第三张图片文字"
},
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第四张图片文字"
},
{
icon:
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1556277324856&di=dc1548a0c5ba10481af922e174912937&imgtype=0&src=http%3A%2F%2Fwww.51pptmoban.com%2Fd%2Ffile%2F2012%2F05%2F12%2F82c4568a90055adcf8fbb896f0841c69.jpg",
name: "第五张图片文字"
}
]
},]
}
]