diff --git a/android/app/build.gradle.kts b/android/app/build.gradle.kts
index 344defd..ccc26cb 100644
--- a/android/app/build.gradle.kts
+++ b/android/app/build.gradle.kts
@@ -8,7 +8,7 @@ plugins {
android {
namespace = "com.example.communityapp"
compileSdk = flutter.compileSdkVersion
- ndkVersion = flutter.ndkVersion
+ ndkVersion = "27.0.12077973"
compileOptions {
sourceCompatibility = JavaVersion.VERSION_11
diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml
index 4f6d5f0..8da8b35 100644
--- a/android/app/src/main/AndroidManifest.xml
+++ b/android/app/src/main/AndroidManifest.xml
@@ -42,4 +42,7 @@
+
+
+
diff --git a/lib/home_content_page.dart b/lib/home_content_page.dart
index f178be3..a979564 100644
--- a/lib/home_content_page.dart
+++ b/lib/home_content_page.dart
@@ -1,4 +1,5 @@
import 'package:flutter/material.dart';
+import 'reapair.dart';
class HomeContentPage extends StatelessWidget {
const HomeContentPage({super.key});
@@ -79,7 +80,14 @@ class HomeContentPage extends StatelessWidget {
) {
return GestureDetector(
onTap: () {
- // TODO: 各個按鈕的跳轉功能可以寫在這裡
+ switch (title) {
+ case "報修":
+ Navigator.push(
+ context,
+ MaterialPageRoute(builder: (context) => const RepairPage()),
+ );
+ default:
+ }
},
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
diff --git a/lib/personal_page.dart b/lib/personal_page.dart
index f1faa4b..de42d2f 100644
--- a/lib/personal_page.dart
+++ b/lib/personal_page.dart
@@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
import 'login_page.dart';
import 'edit_profile.dart';
import 'feedback.dart';
+import 'reapair.dart';
class PersonalPage extends StatelessWidget {
const PersonalPage({super.key});
@@ -196,6 +197,10 @@ class PersonalPage extends StatelessWidget {
}),
_buildMenuItem('報修申請', 'repair.png', () {
// TODO: 報修申請點擊
+ Navigator.push(
+ context,
+ MaterialPageRoute(builder: (context) => const RepairPage()),
+ );
}),
_buildMenuItem('包裹通知', 'package.png', () {
// TODO: 包裹通知點擊
diff --git a/lib/reapair.dart b/lib/reapair.dart
new file mode 100644
index 0000000..494d307
--- /dev/null
+++ b/lib/reapair.dart
@@ -0,0 +1,187 @@
+import 'package:flutter/material.dart';
+import 'package:image_picker/image_picker.dart';
+
+class RepairPage extends StatefulWidget {
+ const RepairPage({super.key});
+
+ @override
+ State createState() => _RepairPageState();
+}
+
+class _RepairPageState extends State {
+ final _formKey = GlobalKey();
+ String? _repairType;
+ final _locationController = TextEditingController();
+ final _descriptionController = TextEditingController();
+ XFile? _photo;
+
+ final List