You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
204 lines
5.8 KiB
204 lines
5.8 KiB
import 'package:flutter/material.dart';
|
|
import 'package:travelguide/travelguideapp/ui/boundary/MuseumInfoPage.dart';
|
|
import 'package:travelguide/travelguideapp/ui/boundary/CommunityPostPage.dart';
|
|
import 'package:travelguide/travelguideapp/ui/boundary/ServicePage.dart';
|
|
import 'package:travelguide/travelguideapp/ui/boundary/MapPage.dart';
|
|
import 'package:travelguide/travelguideapp/ui/boundary/collection0.dart';
|
|
import 'package:travelguide/travelguideapp/ui/boundary/collection1.dart';
|
|
import 'package:travelguide/travelguideapp/ui/boundary/collection2.dart';
|
|
import 'package:travelguide/travelguideapp/ui/boundary/collection3.dart';
|
|
import 'package:travelguide/travelguideapp/ui/boundary/collection4.dart';
|
|
import 'package:travelguide/travelguideapp/data/MyDatabase.dart';
|
|
import 'package:path/path.dart';
|
|
import 'dart:async';
|
|
import 'package:sqflite/sqflite.dart';
|
|
|
|
void main() async{
|
|
WidgetsFlutterBinding.ensureInitialized();
|
|
|
|
// 初始化数据库
|
|
final database = await MyDatabase.initDatabase();
|
|
|
|
Future<void> insertMuseumInfoData() async {
|
|
final databasePath = await getDatabasesPath();
|
|
final path = join(databasePath, 'travelguide.db');
|
|
final database = await openDatabase(path);
|
|
|
|
await database.insert('MuseumInfo', {
|
|
'MuseumName': '',
|
|
'MuseumDetail': '',
|
|
'ImagePath': ''
|
|
});
|
|
|
|
await database.close();
|
|
}
|
|
insertMuseumInfoData();
|
|
|
|
Future<void> deleteMuseumInfoData() async {
|
|
final databasePath = await getDatabasesPath();
|
|
final path = join(databasePath, 'travelguide.db');
|
|
final database = await openDatabase(path);
|
|
|
|
await database.rawDelete(
|
|
'DELETE FROM MuseumInfo WHERE MuseumName = **'
|
|
);
|
|
|
|
await database.close();
|
|
}
|
|
deleteMuseumInfoData();
|
|
|
|
Future<void> insertCollectionInfoData() async {
|
|
final databasePath = await getDatabasesPath();
|
|
final path = join(databasePath, 'travelguide.db');
|
|
final database = await openDatabase(path);
|
|
|
|
await database.insert('CollectionInfo', {
|
|
'CollectionID': 1,
|
|
'MuseumName': '天津市博物馆',
|
|
'CollectionName': '',
|
|
'CollectionDetail':
|
|
' ',
|
|
'ImagePath':''
|
|
});
|
|
|
|
await database.close();
|
|
}
|
|
insertCollectionInfoData();
|
|
|
|
Future<void> deleteCollectionInfoData() async {
|
|
final databasePath = await getDatabasesPath();
|
|
final path = join(databasePath, 'travelguide.db');
|
|
final database = await openDatabase(path);
|
|
|
|
await database.rawDelete(
|
|
'DELETE FROM CollectionInfo WHERE CollectionID = **'
|
|
);
|
|
|
|
await database.close();
|
|
}
|
|
deleteCollectionInfoData();
|
|
|
|
// Future<void> insertCommunityInfoData() async {
|
|
// final databasePath = await getDatabasesPath();
|
|
// final path = join(databasePath, 'travelguide.db');
|
|
// final database = await openDatabase(path);
|
|
//
|
|
// await database.insert('CommunityInfo', {
|
|
// 'CommunityID': '',
|
|
// 'MuseumName': '',
|
|
// 'Author': '',
|
|
// 'PostTime':'',
|
|
// 'Comment':''
|
|
// });
|
|
//
|
|
// await database.close();
|
|
// }
|
|
// insertCommunityInfoData();
|
|
|
|
Future<void> deleteCommunityInfoData() async {
|
|
final databasePath = await getDatabasesPath();
|
|
final path = join(databasePath, 'travelguide.db');
|
|
final database = await openDatabase(path);
|
|
|
|
await database.rawDelete(
|
|
'DELETE FROM CommunityInfo WHERE CommunityID = 1'
|
|
);
|
|
|
|
await database.close();
|
|
}
|
|
deleteCommunityInfoData();
|
|
|
|
// Future<void> insertServiceInfoData() async {
|
|
// final databasePath = await getDatabasesPath();
|
|
// final path = join(databasePath, 'travelguide.db');
|
|
// final database = await openDatabase(path);
|
|
//
|
|
// await database.insert('ServiceInfo', {
|
|
// 'ServiceID': '',
|
|
// 'MuseumName': '',
|
|
// 'Service': ''
|
|
// });
|
|
//
|
|
// await database.close();
|
|
// }
|
|
// insertServiceInfoData();
|
|
|
|
Future<void> deleteServiceInfoData() async {
|
|
final databasePath = await getDatabasesPath();
|
|
final path = join(databasePath, 'travelguide.db');
|
|
final database = await openDatabase(path);
|
|
|
|
await database.rawDelete(
|
|
'DELETE FROM ServiceInfo WHERE ServiceID = 1'
|
|
);
|
|
|
|
await database.close();
|
|
}
|
|
deleteServiceInfoData();
|
|
|
|
|
|
|
|
runApp(MaterialApp(
|
|
initialRoute: '/', // 设置初始路由
|
|
routes: {
|
|
'/': (context) => MyHomePage(),
|
|
'/targetPage0': (context) => collection0(),
|
|
'/targetPage1': (context) => collection1(),
|
|
'/targetPage2': (context) => collection2(),
|
|
'/targetPage3': (context) => collection3(),
|
|
'/targetPage4': (context) => collection4(),
|
|
},
|
|
));
|
|
}
|
|
|
|
class MyHomePage extends StatefulWidget {
|
|
@override
|
|
_MyHomePageState createState() => _MyHomePageState();
|
|
}
|
|
|
|
class _MyHomePageState extends State<MyHomePage> {
|
|
int _currentIndex = 0;
|
|
|
|
void _onTabTapped(int index) {
|
|
setState(() {
|
|
_currentIndex = index;
|
|
});
|
|
}
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return Scaffold(
|
|
body: _currentIndex == 0
|
|
? MuseumInfoPage()
|
|
: _currentIndex == 1
|
|
? CommunityPostPage()
|
|
: _currentIndex == 2
|
|
? ServicePage()
|
|
: MapPage(),
|
|
bottomNavigationBar: BottomNavigationBar(
|
|
currentIndex: _currentIndex,
|
|
unselectedItemColor: Colors.black38, // 未选中的项颜色
|
|
selectedItemColor: Colors.green, // 选中的项颜色
|
|
items: [
|
|
BottomNavigationBarItem(
|
|
icon: Icon(Icons.account_balance),
|
|
label: '信息展示',
|
|
),
|
|
BottomNavigationBarItem(
|
|
icon: Icon(Icons.camera),
|
|
label: '用户社群',
|
|
),
|
|
BottomNavigationBarItem(
|
|
icon: Icon(Icons.dashboard),
|
|
label: '服务信息',
|
|
),
|
|
BottomNavigationBarItem(
|
|
icon: Icon(Icons.map),
|
|
label: '地图显示',
|
|
),
|
|
],
|
|
onTap: _onTabTapped,
|
|
),
|
|
);
|
|
}
|
|
} |