diff --git a/Zip/FullList.js b/Zip/FullList.js new file mode 100644 index 0000000..3f6f636 --- /dev/null +++ b/Zip/FullList.js @@ -0,0 +1,114 @@ +import React, {Component} from 'react'; +import { + Image, + View, + StyleSheet, + TouchableOpacity, + ScrollView, + Text, + FlatList +} from 'react-native'; +import {Directory} from '../../public/plugin/api'; + +const back_image = require("./back.png"); + +export class FullList extends Component { + + render(){ + + const data = this._getData(); + const content = data.map((item, index) => ( + this.getItem(item, index) + )).slice(4); + + return ( + + + + + + 全部 + {content} + + + ) + + } + _getData() { + return this.props.pprops.currentNode.getChildNodes(); + } + getItem(item, index) { + //debugger; + + return ( + + {item.title} + + + + ) + } +} + +class Sub extends Component{ + render(){ + //debugger; + const data = this.props.item.getChildNodes(); + const content = data.map((item, index) => ( + this.getItem(item, index) + )); + return ( + {content} + + ) + } + getItem(item, index) { + //debugger; + return ( + + this.props.navigateNode(item)}> + {Directory.createIconGrid(item, {iconStyle: styles.gridIcon})} + + + ) + } + +} + +const styles = StyleSheet.create({ + box:{ + width : "20%", + flexWrap : "nowrap", + }, + title:{ + height : 56, + fontSize : "20px", + marginTop: 10 + }, + gridWrapper: { + width: "100%", + + //height: "17.5%", + marginTop: 10 + }, + gridIcon: { + width: 36, + height: 36, + borderRadius: 8, + + }, + list: { + flex: 1, + flexDirection: "row", + overflow: "hidden auto", + //alignContent:"flex-start", + flexWrap: "wrap", + width: "100%", + transform: "translateZ(0px)" + + } +}); \ No newline at end of file diff --git a/Zip/MainList.js b/Zip/MainList.js new file mode 100644 index 0000000..7814182 --- /dev/null +++ b/Zip/MainList.js @@ -0,0 +1,119 @@ +import React, {Component} from 'react'; +import { + Image, + View, + StyleSheet, + TouchableOpacity, + ScrollView +} from 'react-native'; +import {Directory} from '../../public/plugin/api'; +import {FullList} from './FullList'; +import { from } from 'core-js/fn/array'; + +const DirectoryScrollView = Directory.DirectoryScrollView; +var image = require('./fold.png'); + +class MainList extends Component { + constructor(props) { + super(props); + this.state = { + hidden : true + } + } + Change = () => { + + this.setState({ + hidden : this.state.hidden ? false : true + }) + } + render() { + + const data = this._getData(); + const content = data.map((item, index) => ( + this.getItem(item, index) + )); + + if(content.length < 5){ + return + + {content} + + + } + + + if (!this.state.hidden){ + + return( + + + ) + } + + fullIcon = ( + +

全部

+
+
); + return ( + + + {content} + + + )} + + getItem(item, index) { + return ( + + this.props.navigateNode(item)}> + {Directory.createIconGrid(item, {iconStyle: styles.gridIcon})} + + + ) + } + + _getData() { + return this.props.currentNode.getChildNodes(); + } +} + +class Static extends Component{ + render() { + + const content = this.props.content; + var foldList = content.slice(0, 4); + return foldList; + } + +} + +export default MainList; + +const styles = StyleSheet.create({ + gridWrapper: { + width: "20%", + //height: "17.5%", + marginTop: 10 + }, + gridIcon: { + width: 36, + height: 36, + borderRadius: 8, + + }, + list: { + flex: 1, + flexDirection: "row", + overflow: "hidden auto", + //alignContent:"flex-start", + flexWrap: "wrap", + width: "100%", + transform: "translateZ(0px)" + + } +}); \ No newline at end of file diff --git a/Zip/SubList.js b/Zip/SubList.js new file mode 100644 index 0000000..6788061 --- /dev/null +++ b/Zip/SubList.js @@ -0,0 +1,78 @@ +import React, {Component} from 'react'; +import { + StyleSheet, + TouchableOpacity, + View +} from 'react-native'; +import {Directory} from '../../public/plugin/api'; + +const DirectoryFlatList = Directory.DirectoryFlatList; + +class SubList extends Component { + constructor(props) { + super(props); + this._renderItem = this._renderItem.bind(this); + } + + render() { + return item.id} + renderItem={this._renderItem} + style={styles.list} + /> + } + + getData() { + return this.props.currentNode.getChildNodes(); + } + + _renderItem({item}) { + + return ( + + { + this.props.navigateNode(item); + }} + > + { + Directory.createIconCell(item, + { + + containerStyle: {}, + textStyle: styles.text, + iconStyle: styles.cellIcon, + hideTopBorder: true, + hideBottomBorder: true + } + ) + } + + ) + } +} + +const styles = StyleSheet.create({ + list: { + width: '100%' + }, + item: { + paddingTop: '4%', + paddingBottom: '4%' + }, + itemWrapper: { + borderBottomWidth: 1, + borderColor: '#F5F5F5' + }, + text: { + color: '#666' + }, + cellIcon: { + height: 34, + width: 34, + borderRadius: 17 + } +}); +export default SubList; \ No newline at end of file diff --git a/Zip/back.png b/Zip/back.png new file mode 100644 index 0000000..d85c2a5 Binary files /dev/null and b/Zip/back.png differ diff --git a/Zip/fold.png b/Zip/fold.png new file mode 100644 index 0000000..6be8b77 Binary files /dev/null and b/Zip/fold.png differ