diff --git a/CloudKey/app/build.gradle b/CloudKey/app/build.gradle
index 79c5de7..f9f5dab 100644
--- a/CloudKey/app/build.gradle
+++ b/CloudKey/app/build.gradle
@@ -33,6 +33,8 @@ dependencies {
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'com.google.android.material:material:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
+ implementation 'androidx.navigation:navigation-fragment:2.2.2'
+ implementation 'androidx.navigation:navigation-ui:2.2.2'
testImplementation 'junit:junit:4.+'
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
diff --git a/CloudKey/app/src/main/AndroidManifest.xml b/CloudKey/app/src/main/AndroidManifest.xml
index 9eb9029..364e8f1 100644
--- a/CloudKey/app/src/main/AndroidManifest.xml
+++ b/CloudKey/app/src/main/AndroidManifest.xml
@@ -4,9 +4,9 @@
diff --git a/CloudKey/app/src/main/java/com/thankvinci/CloudKey/Fragment/AboutFragment.java b/CloudKey/app/src/main/java/com/thankvinci/CloudKey/Fragment/AboutFragment.java
new file mode 100644
index 0000000..419f010
--- /dev/null
+++ b/CloudKey/app/src/main/java/com/thankvinci/CloudKey/Fragment/AboutFragment.java
@@ -0,0 +1,11 @@
+package com.thankvinci.CloudKey.Fragment;
+
+import androidx.fragment.app.Fragment;
+
+import com.thankvinci.CloudKey.R;
+
+public class AboutFragment extends Fragment {
+ public AboutFragment(){
+ super(R.layout.about_fragment);
+ }
+}
diff --git a/CloudKey/app/src/main/java/com/thankvinci/CloudKey/Fragment/FileManageFragment.java b/CloudKey/app/src/main/java/com/thankvinci/CloudKey/Fragment/FileManageFragment.java
new file mode 100644
index 0000000..9f194b6
--- /dev/null
+++ b/CloudKey/app/src/main/java/com/thankvinci/CloudKey/Fragment/FileManageFragment.java
@@ -0,0 +1,18 @@
+package com.thankvinci.CloudKey.Fragment;
+
+import android.os.Bundle;
+import android.view.View;
+
+import androidx.fragment.app.Fragment;
+
+import com.thankvinci.CloudKey.R;
+
+public class FileManageFragment extends Fragment {
+ public FileManageFragment(){
+ super(R.layout.filemanage_fragment);
+ }
+ @Override
+ public void onViewCreated(View view,Bundle savedInstanceState) {
+ super.onViewCreated(view, savedInstanceState);
+ }
+}
diff --git a/CloudKey/app/src/main/java/com/thankvinci/CloudKey/MainActivity.java b/CloudKey/app/src/main/java/com/thankvinci/CloudKey/MainActivity.java
index 7b36e41..d71d299 100644
--- a/CloudKey/app/src/main/java/com/thankvinci/CloudKey/MainActivity.java
+++ b/CloudKey/app/src/main/java/com/thankvinci/CloudKey/MainActivity.java
@@ -1,29 +1,43 @@
package com.thankvinci.CloudKey;
import androidx.appcompat.app.AppCompatActivity;
+import androidx.drawerlayout.widget.DrawerLayout;
+import androidx.navigation.NavController;
+import androidx.navigation.fragment.NavHostFragment;
+import androidx.navigation.ui.AppBarConfiguration;
+import androidx.navigation.ui.NavigationUI;
import android.os.Bundle;
import android.os.Handler;
import android.view.View;
import android.widget.TextView;
+import com.google.android.material.navigation.NavigationView;
import com.thankvinci.CloudKey.NetUtils.NetHandler;
import com.thankvinci.CloudKey.NetUtils.NetThread;
public class MainActivity extends AppCompatActivity {
-
+ private NavHostFragment navHostFragment;
+ private NavController navController;
+ private AppBarConfiguration appBarConfiguration;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
+ //声明一个Handler
Handler handler = new NetHandler(this);
- TextView textView = findViewById(R.id.text);
- textView.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- Thread t = new Thread(new NetThread(handler));
- t.start();
- }
- });
+ //加载NavGraph
+ navHostFragment = (NavHostFragment)getSupportFragmentManager().findFragmentById(R.id.nav_host_fragment);
+ navController = navHostFragment.getNavController();
+ DrawerLayout drawerLayout = findViewById(R.id.drawLayout);
+ appBarConfiguration = new AppBarConfiguration.Builder(R.id.fileManageFragment).setDrawerLayout(drawerLayout).build();
+ NavigationUI.setupActionBarWithNavController(this,navController,appBarConfiguration);
+ NavigationView navigationView = findViewById(R.id.nav_view);
+ NavigationUI.setupWithNavController(navigationView,navController);
+ }
+
+ @Override
+ public boolean onSupportNavigateUp() {
+ return NavigationUI.navigateUp(navController,appBarConfiguration)||super.onSupportNavigateUp();
}
}
\ No newline at end of file
diff --git a/CloudKey/app/src/main/res/drawable/directory.png b/CloudKey/app/src/main/res/drawable/directory.png
new file mode 100644
index 0000000..dc6f853
Binary files /dev/null and b/CloudKey/app/src/main/res/drawable/directory.png differ
diff --git a/CloudKey/app/src/main/res/drawable/file.png b/CloudKey/app/src/main/res/drawable/file.png
new file mode 100644
index 0000000..cbbfc53
Binary files /dev/null and b/CloudKey/app/src/main/res/drawable/file.png differ
diff --git a/CloudKey/app/src/main/res/drawable/zip.png b/CloudKey/app/src/main/res/drawable/zip.png
new file mode 100644
index 0000000..89a37b6
Binary files /dev/null and b/CloudKey/app/src/main/res/drawable/zip.png differ
diff --git a/CloudKey/app/src/main/res/layout/about_fragment.xml b/CloudKey/app/src/main/res/layout/about_fragment.xml
new file mode 100644
index 0000000..3dac408
--- /dev/null
+++ b/CloudKey/app/src/main/res/layout/about_fragment.xml
@@ -0,0 +1,8 @@
+
+
+
+
\ No newline at end of file
diff --git a/CloudKey/app/src/main/res/layout/activity_main.xml b/CloudKey/app/src/main/res/layout/activity_main.xml
index b1f29a6..01ca0c6 100644
--- a/CloudKey/app/src/main/res/layout/activity_main.xml
+++ b/CloudKey/app/src/main/res/layout/activity_main.xml
@@ -1,19 +1,23 @@
-
-
-
+
-
-
\ No newline at end of file
+ android:layout_height="match_parent"
+ android:layout_gravity="start"
+ android:fitsSystemWindows="true"
+ app:menu="@menu/nav_menu"/>
+
\ No newline at end of file
diff --git a/CloudKey/app/src/main/res/layout/filemanage_fragment.xml b/CloudKey/app/src/main/res/layout/filemanage_fragment.xml
new file mode 100644
index 0000000..2e7c27a
--- /dev/null
+++ b/CloudKey/app/src/main/res/layout/filemanage_fragment.xml
@@ -0,0 +1,8 @@
+
+
+
+
\ No newline at end of file
diff --git a/CloudKey/app/src/main/res/menu/nav_menu.xml b/CloudKey/app/src/main/res/menu/nav_menu.xml
new file mode 100644
index 0000000..48acfb4
--- /dev/null
+++ b/CloudKey/app/src/main/res/menu/nav_menu.xml
@@ -0,0 +1,5 @@
+
+
\ No newline at end of file
diff --git a/CloudKey/app/src/main/res/mipmap-xxxhdpi/icon.png b/CloudKey/app/src/main/res/mipmap-xxxhdpi/icon.png
new file mode 100644
index 0000000..a760fa3
Binary files /dev/null and b/CloudKey/app/src/main/res/mipmap-xxxhdpi/icon.png differ
diff --git a/CloudKey/app/src/main/res/navigation/nav_graph.xml b/CloudKey/app/src/main/res/navigation/nav_graph.xml
new file mode 100644
index 0000000..dec4b02
--- /dev/null
+++ b/CloudKey/app/src/main/res/navigation/nav_graph.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/开发历程.md b/开发历程.md
index b226def..e81ad1d 100644
--- a/开发历程.md
+++ b/开发历程.md
@@ -122,4 +122,13 @@ private String queryPassword(PrintWriter writer, Connection conn, String filemd5
在这里,Web端print的是一个json型的字符串,所以Android端接受到这个字符串要进行解析,这里使用的是alibaba的fastjson库:implementation group: 'com.alibaba', name: 'fastjson', version: '1.2.75'
-经过测试,成功Toast出数据库中对应md5码的pwd
\ No newline at end of file
+经过测试,成功Toast出数据库中对应md5码的pwd
+
+**2021/6/8**
+
+为APP添加navgraph,侧边栏的菜单,图标等
+
+使用到的库
+
+implementation 'androidx.navigation:navigation-fragment:2.2.2'
+implementation 'androidx.navigation:navigation-ui:2.2.2'
\ No newline at end of file