From 1eebc6509e0e0adb754a72a7b0ba47e6c40e8b4c Mon Sep 17 00:00:00 2001
From: ongbo <1308161085@qq.com>
Date: Mon, 6 Jan 2020 20:52:16 +0800
Subject: [PATCH] UPDATE 1
---
app/app.iml | 11 ++
app/build.gradle | 4 +
.../PersonalCenter/MyPersonCenter.java | 123 ++++++++++++++++
.../PersonalCenter/RecyclerViewFragment.java | 80 +++++++++++
.../RecyclerViewPagerAdapter.java | 132 ++++++++++++++++++
.../cmknowledgegraph/MainActivity.java | 5 +-
app/src/main/res/drawable/van.png | Bin 0 -> 1814 bytes
app/src/main/res/layout/chat_content.xml | 45 ++++++
app/src/main/res/layout/content_cardview.xml | 27 ++++
.../main/res/layout/fragment_recyclerview.xml | 6 +
app/src/main/res/layout/header_logo.xml | 12 ++
.../main/res/layout/internetforumfragment.xml | 81 +++++++++++
12 files changed, 525 insertions(+), 1 deletion(-)
create mode 100644 app/src/main/java/com/example/PersonalCenter/MyPersonCenter.java
create mode 100644 app/src/main/java/com/example/PersonalCenter/RecyclerViewFragment.java
create mode 100644 app/src/main/java/com/example/PersonalCenter/RecyclerViewPagerAdapter.java
create mode 100644 app/src/main/res/drawable/van.png
create mode 100644 app/src/main/res/layout/chat_content.xml
create mode 100644 app/src/main/res/layout/content_cardview.xml
create mode 100644 app/src/main/res/layout/fragment_recyclerview.xml
create mode 100644 app/src/main/res/layout/header_logo.xml
create mode 100644 app/src/main/res/layout/internetforumfragment.xml
diff --git a/app/app.iml b/app/app.iml
index 5903ae2..f061dc3 100644
--- a/app/app.iml
+++ b/app/app.iml
@@ -105,19 +105,28 @@
+
+
+
+
+
+
+
+
+
@@ -133,6 +142,7 @@
+
@@ -149,5 +159,6 @@
+
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index 5b9be13..7a4feab 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -51,4 +51,8 @@ dependencies {
implementation 'liji.library.dev:citypickerview:5.1.0'
implementation 'cn.aigestudio.wheelpicker:WheelPicker:1.1.3'
implementation 'com.github.open-android:WheelPicker:v1.0.0'
+// 个人中心页面
+ implementation 'com.github.florent37:materialviewpager:1.2.3'
+ implementation 'com.ramotion.foldingcell:folding-cell:1.2.3'
+ implementation 'de.hdodenhof:circleimageview:2.2.0'
}
diff --git a/app/src/main/java/com/example/PersonalCenter/MyPersonCenter.java b/app/src/main/java/com/example/PersonalCenter/MyPersonCenter.java
new file mode 100644
index 0000000..a46e3d1
--- /dev/null
+++ b/app/src/main/java/com/example/PersonalCenter/MyPersonCenter.java
@@ -0,0 +1,123 @@
+package com.example.PersonalCenter;
+
+import android.content.Context;
+import android.os.Bundle;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.appcompat.app.ActionBar;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.appcompat.widget.Toolbar;
+import androidx.fragment.app.Fragment;
+import androidx.fragment.app.FragmentStatePagerAdapter;
+import androidx.viewpager.widget.ViewPager;
+
+import com.example.cmknowledgegraph.MainActivity;
+import com.example.cmknowledgegraph.R;
+import com.github.florent37.materialviewpager.MaterialViewPager;
+import com.github.florent37.materialviewpager.header.HeaderDesign;
+
+public class MyPersonCenter extends Fragment {
+ MainActivity mainActivity;
+ @Override
+ public void onAttach(Context context) {
+ super.onAttach(context);
+ this.mainActivity = (MainActivity) context;
+ }
+
+ @Nullable
+ @Override
+ public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
+ return inflater.inflate(R.layout.chat_content, container, false);
+ }
+
+ @Override
+ public void onActivityCreated(@Nullable Bundle savedInstanceState) {
+ super.onActivityCreated(savedInstanceState);
+ //包装处理逻辑
+ //得到MaterViewPager实例
+ MaterialViewPager materialViewPager = (MaterialViewPager) getActivity().findViewById(R.id.materialViewPager);
+ //为MaterialViewPager添加监听
+ materialViewPager.setMaterialViewPagerListener(new MaterialViewPager.Listener() {
+ @Override
+ //设置转换动画和图片,颜色
+ public HeaderDesign getHeaderDesign(int page) {
+ switch (page){
+ case 0:
+ return HeaderDesign.fromColorResAndDrawable(
+ R.color.blue,
+ getResources().getDrawable(R.drawable.home_back)
+ );
+ case 1:
+ return HeaderDesign.fromColorResAndDrawable(
+ R.color.green,
+ getResources().getDrawable(R.drawable.home_back)
+ );
+ case 2:
+ return HeaderDesign.fromColorResAndDrawable(
+ R.color.cyan,
+ getResources().getDrawable(R.drawable.home_back)
+ );
+ }
+
+ return null;
+ }
+ });
+ //设置Toolbar
+ Toolbar toolbar = materialViewPager.getToolbar();
+ if(toolbar!=null){
+ mainActivity.setSupportActionBar(toolbar);
+ ActionBar actionBar = mainActivity.getSupportActionBar();
+ actionBar.setDisplayHomeAsUpEnabled(true);
+ actionBar.setDisplayShowHomeEnabled(true);
+ actionBar.setDisplayShowTitleEnabled(true);
+ actionBar.setDisplayUseLogoEnabled(false);
+ actionBar.setHomeButtonEnabled(true);
+ }
+ //为Viewpager设置适配器
+ ViewPager viewPager = materialViewPager.getViewPager();
+ viewPager.setAdapter(new FragmentStatePagerAdapter(getChildFragmentManager()) {
+ @NonNull
+ @Override
+ public Fragment getItem(int position) {
+ switch (position % 3){
+ case 0:
+ return RecyclerViewFragment.newInstance(0,mainActivity);
+ case 1:
+ return RecyclerViewFragment.newInstance(1,mainActivity);
+ case 2:
+ return RecyclerViewFragment.newInstance(1,mainActivity);
+ default:
+ return RecyclerViewFragment.newInstance(1,mainActivity);
+
+ }
+ }
+
+ @Override
+ public int getCount() {
+ return 3;
+ }
+
+ @Nullable
+ @Override
+ public CharSequence getPageTitle(int position) {
+ switch (position % 3){
+ case 0:
+ return "jil";
+ case 1:
+ return "drug";
+ case 2:
+ return "药友";
+ default:
+ return "TAPN";
+ }
+ }
+ });
+ materialViewPager.getViewPager().setOffscreenPageLimit(materialViewPager
+ .getViewPager().getAdapter().getCount());
+ materialViewPager.getPagerTitleStrip().setViewPager(materialViewPager.getViewPager());
+ }
+}
diff --git a/app/src/main/java/com/example/PersonalCenter/RecyclerViewFragment.java b/app/src/main/java/com/example/PersonalCenter/RecyclerViewFragment.java
new file mode 100644
index 0000000..af24a7b
--- /dev/null
+++ b/app/src/main/java/com/example/PersonalCenter/RecyclerViewFragment.java
@@ -0,0 +1,80 @@
+package com.example.PersonalCenter;
+
+import android.os.Bundle;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+
+import androidx.annotation.Nullable;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.cardview.widget.CardView;
+import androidx.fragment.app.Fragment;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+
+import com.example.cmknowledgegraph.R;
+import com.github.florent37.materialviewpager.header.MaterialViewPagerHeaderDecorator;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class RecyclerViewFragment extends Fragment {
+ int flag;
+ AppCompatActivity appCompatActivity;
+
+ public void setAppCompatActivity(AppCompatActivity appCompatActivity) {
+ this.appCompatActivity = appCompatActivity;
+ }
+
+ public void setFlag(int flag) {
+ this.flag = flag;
+ }
+
+ public static Fragment newInstance(int flag, AppCompatActivity appCompatActivity){
+ RecyclerViewFragment recyclerViewFragment = new RecyclerViewFragment();
+ recyclerViewFragment.setFlag(flag);
+ recyclerViewFragment.setAppCompatActivity(appCompatActivity);
+ return recyclerViewFragment;
+ }
+ final List