|
|
@@ -4,11 +4,10 @@
|
|
|
*/
|
|
|
import React, { Component } from 'react';
|
|
|
import {createMaterialTopTabNavigator} from '@react-navigation/material-top-tabs';
|
|
|
-import { BackHandler, Pressable, RefreshControl, ScrollView, StyleSheet } from 'react-native';
|
|
|
+import { BackHandler, Pressable, StyleSheet } from 'react-native';
|
|
|
import Charge from './TabCharge';
|
|
|
import Reserve from './TabReserve';
|
|
|
import TabInfos from './TabInfos';
|
|
|
-import { MyRefreshProps } from '../../components/ThemesConfig';
|
|
|
import { QRResult } from '../charge/QRScan';
|
|
|
import apiStation from '../../api/apiStation';
|
|
|
import PagerUtil from './PagerUtil';
|
|
|
@@ -25,21 +24,6 @@ export const PagerList = {
|
|
|
"tabExplore": "Explore"
|
|
|
}
|
|
|
|
|
|
-const TabLayout = (refreshing, onPullRefresh, children) => (
|
|
|
- <ScrollView
|
|
|
- style={styles.container}
|
|
|
- keyboardShouldPersistTaps={'handled'}
|
|
|
- refreshControl={
|
|
|
- <RefreshControl
|
|
|
- {...MyRefreshProps()}
|
|
|
- refreshing={refreshing}
|
|
|
- onRefresh={onPullRefresh}
|
|
|
- />
|
|
|
- }>
|
|
|
- {children}
|
|
|
- </ScrollView>
|
|
|
-)
|
|
|
-
|
|
|
export default class ChargeAdapter extends Component {
|
|
|
constructor(props) {
|
|
|
super(props);
|
|
|
@@ -53,11 +37,11 @@ export default class ChargeAdapter extends Component {
|
|
|
this.pageAdapter = [{
|
|
|
title: $t('charging.tabInfo'),
|
|
|
name: "Info",
|
|
|
- component: TabLayout(this.state.refreshing, () => this.onPullRefresh(), TabInfos)
|
|
|
+ component: TabInfos
|
|
|
}, {
|
|
|
title: $t('charging.tabCharge'),
|
|
|
name: "Charge",
|
|
|
- component: TabLayout(this.state.refreshing, () => this.onPullRefresh(), Charge)
|
|
|
+ component: Charge
|
|
|
}/*, {
|
|
|
title: $t('charging.tabReserve'),
|
|
|
name: "Reserve",
|
|
|
@@ -106,7 +90,7 @@ export default class ChargeAdapter extends Component {
|
|
|
this.canShowLoginDialog();
|
|
|
});
|
|
|
}
|
|
|
- BackHandler.addEventListener('hardwareBackPress', this.backPage)
|
|
|
+ //BackHandler.addEventListener('hardwareBackPress', this.backPage)
|
|
|
PagerUtil.addOnRefresh(this);
|
|
|
// setTimeout(() => {
|
|
|
// this.changeTab(1)
|
|
|
@@ -130,7 +114,7 @@ export default class ChargeAdapter extends Component {
|
|
|
componentWillUnmount() {
|
|
|
QRResult.clearResult();
|
|
|
PagerUtil.onDestory();
|
|
|
- BackHandler.removeEventListener("hardwareBackPress", this.backPage)
|
|
|
+ //BackHandler.removeEventListener("hardwareBackPress", this.backPage)
|
|
|
}
|
|
|
|
|
|
backPage = () => {
|
|
|
@@ -264,37 +248,27 @@ export default class ChargeAdapter extends Component {
|
|
|
render() {
|
|
|
const Tab = createMaterialTopTabNavigator();
|
|
|
return (
|
|
|
- <ScrollView
|
|
|
+ <Tab.Navigator
|
|
|
style={styles.container}
|
|
|
- keyboardShouldPersistTaps={'handled'}
|
|
|
- refreshControl={
|
|
|
- <RefreshControl
|
|
|
- {...MyRefreshProps()}
|
|
|
- refreshing={this.state.refreshing}
|
|
|
- onRefresh={() => this.onPullRefresh()}
|
|
|
+ screenOptions={{
|
|
|
+ lazy: false,
|
|
|
+ lazyPreloadDistance: 1,
|
|
|
+ ...this.tabBarStyle
|
|
|
+ }}
|
|
|
+ backBehavior={() => this.backPage()}
|
|
|
+ initialRouteName={PagerList.tabCharge}>
|
|
|
+ { this.pageAdapter.map((item, index) =>
|
|
|
+ <Tab.Screen
|
|
|
+ key={index}
|
|
|
+ name={item.name}
|
|
|
+ component={item.component}
|
|
|
+ options={{
|
|
|
+ title: item.title,
|
|
|
+ tabBarAllowFontScaling: false
|
|
|
+ }}
|
|
|
/>
|
|
|
- }>
|
|
|
- <Tab.Navigator
|
|
|
- style={{minHeight: $vht(100)}}
|
|
|
- screenOptions={{
|
|
|
- lazy: false,
|
|
|
- lazyPreloadDistance: 1,
|
|
|
- ...this.tabBarStyle
|
|
|
- }}
|
|
|
- initialRouteName={PagerList.tabCharge}>
|
|
|
- { this.pageAdapter.map((item, index) =>
|
|
|
- <Tab.Screen
|
|
|
- key={index}
|
|
|
- name={item.name}
|
|
|
- component={item.component}
|
|
|
- options={{
|
|
|
- title: item.title,
|
|
|
- tabBarAllowFontScaling: false
|
|
|
- }}
|
|
|
- />
|
|
|
- )}
|
|
|
- </Tab.Navigator>
|
|
|
- </ScrollView>
|
|
|
+ )}
|
|
|
+ </Tab.Navigator>
|
|
|
);
|
|
|
}
|
|
|
}
|