diff --git a/app/build.gradle b/app/build.gradle index 1e28045..928622d 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -79,7 +79,15 @@ dependencies { implementation 'jp.wasabeef:glide-transformations:4.1.0' compileOnly "jp.co.cyberagent.android:gpuimage:2.0.3" //头像 + //头像的涟漪效果 + implementation 'com.skyfishjy.ripplebackground:library:1.0.1' -// implementation 'com.squareup.picasso:picasso:2.71828' + implementation 'com.github.Q42:AndroidScrollingImageView:1.3.3' + + implementation 'jp.wasabeef:recyclerview-animators:3.0.0' + implementation 'com.jcodecraeer:xrecyclerview:1.6.0' + + implementation 'com.loopeer.library:cardstack:1.0.2' + implementation 'com.ramotion.foldingcell:folding-cell:1.2.3' } diff --git a/app/src/main/java/com/example/ChatContentPkg/ChatContent.java b/app/src/main/java/com/example/ChatContentPkg/ChatContent.java index ca9b2cd..389a440 100644 --- a/app/src/main/java/com/example/ChatContentPkg/ChatContent.java +++ b/app/src/main/java/com/example/ChatContentPkg/ChatContent.java @@ -98,9 +98,13 @@ public class ChatContent extends Fragment{ public Fragment getItem(int position) { switch (position % 3){ case 0: - return RecyclerViewFragment.newInstance(); + return RecyclerViewFragment.newInstance(0,appCompatActivity); + case 1: + return RecyclerViewFragment.newInstance(1,appCompatActivity); + case 2: + return DrugFriendsFragment.newInstance(appCompatActivity); default: - return RecyclerViewFragment.newInstance(); + return RecyclerViewFragment.newInstance(1,appCompatActivity); } } diff --git a/app/src/main/java/com/example/ChatContentPkg/DrugFriendsCardAdapter.java b/app/src/main/java/com/example/ChatContentPkg/DrugFriendsCardAdapter.java new file mode 100644 index 0000000..491606d --- /dev/null +++ b/app/src/main/java/com/example/ChatContentPkg/DrugFriendsCardAdapter.java @@ -0,0 +1,166 @@ +package com.example.ChatContentPkg; + +import android.content.Context; +import android.graphics.PorterDuff; +import android.util.Log; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.appcompat.app.AppCompatActivity; +import androidx.core.content.ContextCompat; +import androidx.fragment.app.FragmentManager; +import androidx.recyclerview.widget.RecyclerView; + +import com.example.cmknowledgegraph.R; +import com.loopeer.cardstack.CardStackView; +import com.loopeer.cardstack.StackAdapter; + +public class DrugFriendsCardAdapter extends StackAdapter { + AppCompatActivity appCompatActivity; + + public void setAppCompatActivity(AppCompatActivity appCompatActivity) { + this.appCompatActivity = appCompatActivity; + } + + public DrugFriendsCardAdapter(Context context) { + super(context); + } + + @Override + public void bindView(Integer data, int position, CardStackView.ViewHolder holder) { + if (holder instanceof ColorItemLargeHeaderViewHolder) { + ColorItemLargeHeaderViewHolder h = (ColorItemLargeHeaderViewHolder) holder; + h.onBind(data, position); + } + if (holder instanceof ColorItemWithNoHeaderViewHolder) { + ColorItemWithNoHeaderViewHolder h = (ColorItemWithNoHeaderViewHolder) holder; + h.onBind(data, position); + } + if (holder instanceof ColorItemViewHolder) { + ColorItemViewHolder h = (ColorItemViewHolder) holder; + h.onBind(data, position); + } + } + + @Override + protected CardStackView.ViewHolder onCreateView(ViewGroup parent, int viewType) { + View view; + switch (viewType) { + case R.layout.list_card_item_larger_header: + view = LayoutInflater.from(parent.getContext()).inflate(R.layout.list_card_item_larger_header, parent, false); +// view = getLayoutInflater().inflate(R.layout.list_card_item_larger_header, parent, false); + return new ColorItemLargeHeaderViewHolder(view); + case R.layout.list_card_item_with_no_header: + view = LayoutInflater.from(parent.getContext()).inflate(R.layout.list_card_item_with_no_header, parent, false); +// view = getLayoutInflater().inflate(R.layout.list_card_item_with_no_header, parent, false); + return new ColorItemWithNoHeaderViewHolder(view); + default: + view = LayoutInflater.from(parent.getContext()).inflate(R.layout.list_card_item, parent, false); +// view = getLayoutInflater().inflate(R.layout.list_card_item, parent, false); + return new ColorItemViewHolder(view); + } + } + + @Override + public int getItemViewType(int position) { +// if (position == 6) {//TODO TEST LARGER ITEM +// return R.layout.list_card_item_larger_header; +// } else if (position == 10) { +// return R.layout.list_card_item_with_no_header; +// }else { + return R.layout.list_card_item; +// } + } + + //三种ViewHolder + public class ColorItemViewHolder extends CardStackView.ViewHolder { + View mLayout; + View mContainerContent; + TextView mTextTitle; + + public ColorItemViewHolder(View view) { + super(view); + mLayout = view.findViewById(R.id.frame_list_card_item); + mContainerContent = view.findViewById(R.id.container_list_content); + mTextTitle = (TextView) view.findViewById(R.id.text_list_card_title); + } + + @Override + public void onItemExpand(boolean b) { + mContainerContent.setVisibility(b ? View.VISIBLE : View.GONE); + } + + public void onBind(Integer data, int position) { + + mLayout.getBackground().setColorFilter(ContextCompat.getColor(appCompatActivity, data), PorterDuff.Mode.SRC_IN); + mTextTitle.setText("这是分组"); + } + + } + + public class ColorItemWithNoHeaderViewHolder extends CardStackView.ViewHolder { + View mLayout; + TextView mTextTitle; + + public ColorItemWithNoHeaderViewHolder(View view) { + super(view); + mLayout = view.findViewById(R.id.frame_list_card_item); + mTextTitle = (TextView) view.findViewById(R.id.text_list_card_title); + } + + @Override + public void onItemExpand(boolean b) { + } + + public void onBind(Integer data, int position) { + mLayout.getBackground().setColorFilter(ContextCompat.getColor(getContext(), data), PorterDuff.Mode.SRC_IN); + mTextTitle.setText(String.valueOf(position)); + } + + } + + + public class ColorItemLargeHeaderViewHolder extends CardStackView.ViewHolder { + View mLayout; + View mContainerContent; + TextView mTextTitle; + + public ColorItemLargeHeaderViewHolder(View view) { + super(view); + mLayout = view.findViewById(R.id.frame_list_card_item); + mContainerContent = view.findViewById(R.id.container_list_content); + mTextTitle = (TextView) view.findViewById(R.id.text_list_card_title); + } + + @Override + public void onItemExpand(boolean b) { + mContainerContent.setVisibility(b ? View.VISIBLE : View.GONE); + } + + @Override + protected void onAnimationStateChange(int state, boolean willBeSelect) { + super.onAnimationStateChange(state, willBeSelect); + if (state == CardStackView.ANIMATION_STATE_START && willBeSelect) { + onItemExpand(true); + } + if (state == CardStackView.ANIMATION_STATE_END && !willBeSelect) { + onItemExpand(false); + } + } + + public void onBind(Integer data, int position) { + mLayout.getBackground().setColorFilter(ContextCompat.getColor(getContext(), data), PorterDuff.Mode.SRC_IN); + mTextTitle.setText(String.valueOf(position)); + + itemView.findViewById(R.id.text_view).setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + ((CardStackView) itemView.getParent()).performItemClick(ColorItemLargeHeaderViewHolder.this); + } + }); + } + } +} \ No newline at end of file diff --git a/app/src/main/java/com/example/ChatContentPkg/DrugFriendsFragment.java b/app/src/main/java/com/example/ChatContentPkg/DrugFriendsFragment.java new file mode 100644 index 0000000..9ee2870 --- /dev/null +++ b/app/src/main/java/com/example/ChatContentPkg/DrugFriendsFragment.java @@ -0,0 +1,137 @@ +package com.example.ChatContentPkg; + +import android.graphics.Color; +import android.os.Bundle; +import android.os.Handler; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.appcompat.app.AppCompatActivity; +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 com.loopeer.cardstack.AllMoveDownAnimatorAdapter; +import com.loopeer.cardstack.CardStackView; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +public class DrugFriendsFragment extends Fragment implements CardStackView.ItemExpendListener { + public void setAppCompatActivity(AppCompatActivity appCompatActivity) { + this.appCompatActivity = appCompatActivity; + } + + AppCompatActivity appCompatActivity; + RecyclerView mRecyclerView; + + public static Fragment newInstance(AppCompatActivity appCompatActivity){ + DrugFriendsFragment drugFriendsFragment = new DrugFriendsFragment(); + drugFriendsFragment.setAppCompatActivity(appCompatActivity); + return drugFriendsFragment; + } + private CardStackView cardStackView; + private RecyclerView recyclerView; + private DrugFriendsCardAdapter drugFriendsCardAdapter; +// + private static Integer[] item = new Integer[]{R.color.color_1, + R.color.color_2, + R.color.color_3, + R.color.color_4, + R.color.color_5, + R.color.color_6, + R.color.color_7, + R.color.color_8, + R.color.color_9, + R.color.color_10, + R.color.color_11, + R.color.color_12, + R.color.color_13, + R.color.color_14, + R.color.color_15, + R.color.color_16, + R.color.color_17, + R.color.color_18, + R.color.color_19, + R.color.color_20, + R.color.color_21, + R.color.color_22, + R.color.color_23, + R.color.color_24, + R.color.color_25, + R.color.color_26}; + + public int ITEMS = 1; + + public List items = new ArrayList(); + @Nullable + @Override + public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { + +// View view = inflater.inflate(R.layout.drug_friends,container,false); + View view = inflater.inflate(R.layout.fragment_recyclerview,container,false); + + return view; + } + + @Override + public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { + super.onViewCreated(view, savedInstanceState); + mRecyclerView=view.findViewById(R.id.recyclerView); +// mCardView = view.findViewById(); + //需要根据网路请求发送数据,来请求一个页可以有多少文章条目,而且针对每一个tab,都要有不同的显示方式 + for (int i=0;i items = new ArrayList<>(); - static final int ITEMS = 3; + static final int ITEMS = 7; RecyclerView mRecyclerView; CardView mCardView; @@ -47,7 +64,12 @@ public class RecyclerViewFragment extends Fragment { //设置分割线 mRecyclerView.addItemDecoration(new MaterialViewPagerHeaderDecorator()); //设置适配器 - mRecyclerView.setAdapter(new RecyclerViewPagerAdapter(items)); + RecyclerViewPagerAdapter recyclerViewPagerAdapter = new RecyclerViewPagerAdapter(items,flag); + recyclerViewPagerAdapter.setAppCompatActivity(appCompatActivity); + mRecyclerView.setAdapter(recyclerViewPagerAdapter); + + + } public void initdata(){ diff --git a/app/src/main/java/com/example/ChatContentPkg/RecyclerViewPagerAdapter.java b/app/src/main/java/com/example/ChatContentPkg/RecyclerViewPagerAdapter.java index 97dd8be..86abb88 100644 --- a/app/src/main/java/com/example/ChatContentPkg/RecyclerViewPagerAdapter.java +++ b/app/src/main/java/com/example/ChatContentPkg/RecyclerViewPagerAdapter.java @@ -1,19 +1,33 @@ package com.example.ChatContentPkg; +import android.os.Handler; +import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import androidx.appcompat.app.AppCompatActivity; import androidx.recyclerview.widget.RecyclerView; import com.example.cmknowledgegraph.R; +import com.loopeer.cardstack.CardStackView; +import com.ramotion.foldingcell.FoldingCell; +import java.util.Arrays; import java.util.List; public class RecyclerViewPagerAdapter extends RecyclerView.Adapter { List contents; - public RecyclerViewPagerAdapter(List contents) + int flag; + AppCompatActivity appCompatActivity; + + public void setAppCompatActivity(AppCompatActivity appCompatActivity) { + this.appCompatActivity = appCompatActivity; + } + + public RecyclerViewPagerAdapter(List contents, int flag) { + this.flag = flag; this.contents = contents; } public int getItemCount() { @@ -22,12 +36,89 @@ public class RecyclerViewPagerAdapter extends RecyclerView.Adapter mList = new ArrayList<>(); private int mLikeCount = 50; private int mDislikeCount = 50; + private XRecyclerView xRecyclerView_home; + private ArrayList listData; + private int refreshtime = 0; AppCompatActivity appCompatActivity;//保存最初的主Activity public AppCompatActivity getAppCompatActivity(){ @@ -63,24 +77,78 @@ public class SlideFragment extends Fragment { } private void initView(View rootView) { - mRecyclerView = rootView.findViewById(R.id.recycler_view);//加载RecyclerView - mSmileView = rootView.findViewById(R.id.smile_view);//加载表情图片 - - mSmileView.setLike(mLikeCount);//设置表情喜欢 - mSmileView.setDisLike(mDislikeCount);//设置表情不喜欢 - - mAdapter = new MyAdapter();//增添适配器 - mRecyclerView.setAdapter(mAdapter);//设置适配器 - addData();//添加数据,向集合中添加数据,也就是说,要从服务器抽取推文数据加载过来 - + listData = new ArrayList(); + //最上面的滚动动画 + //初始化header + ScrollingImageView scrollingImageView = (ScrollingImageView) rootView.findViewById(R.id.scrolling_background); + scrollingImageView.start(); + //表情那一块最热门推送top6 + + xRecyclerView_home = (XRecyclerView) rootView.findViewById(R.id.home_XRecyclerView); + LinearLayoutManager linearLayoutManager = new LinearLayoutManager(appCompatActivity); + //设置垂直布局 + linearLayoutManager.setOrientation(LinearLayoutManager.VERTICAL); + //给mRecyclerView设置布局 + xRecyclerView_home.setLayoutManager(linearLayoutManager); + xRecyclerView_home.setRefreshProgressStyle(ProgressStyle.BallSpinFadeLoader); + xRecyclerView_home.setLoadingMoreProgressStyle(ProgressStyle.Pacman); + xRecyclerView_home.setArrowImageView(R.drawable._planet); + + //建立header的view + View header = (RelativeLayout)LayoutInflater.from(appCompatActivity).inflate(R.layout.recycleview_header_home,appCompatActivity.findViewById(android.R.id.content),false); + mRecyclerView = header.findViewById(R.id.recycler_view); + mSmileView = header.findViewById(R.id.smile_view); + mSmileView.setLike(mLikeCount); + mSmileView.setDisLike(mDislikeCount); + mAdapter = new MyAdapter(); + mRecyclerView.setAdapter(mAdapter); + addData(2); mItemTouchHelperCallback = new ItemTouchHelperCallback(mRecyclerView.getAdapter(), mList); mItemTouchHelper = new ItemTouchHelper(mItemTouchHelperCallback); - mSlideLayoutManager = new SlideLayoutManager(mRecyclerView, mItemTouchHelper); mItemTouchHelper.attachToRecyclerView(mRecyclerView); - mRecyclerView.setLayoutManager(mSlideLayoutManager); + //为外层RecycleView增加嵌套RecycleView,嵌套在header + xRecyclerView_home.addHeaderView(header); + + + myAdapterItem = new MyAdapterItem(listData); +// for(int i=0;i<15;i++) { +// listData.add("item"+i); +// } + xRecyclerView_home.setAdapter(myAdapterItem); + xRecyclerView_home.setLoadingListener(new XRecyclerView.LoadingListener() { + @Override + public void onRefresh() { + refreshtime++; + new Handler().postDelayed(new Runnable() { + @Override + public void run() { + listData.clear(); + addData(0); + myAdapterItem.notifyDataSetChanged(); + xRecyclerView_home.refreshComplete(); + } + },3000 + ); + } + + @Override + public void onLoadMore() { + new Handler().postDelayed(new Runnable() { + @Override + public void run() { + addData(0); + myAdapterItem.notifyDataSetChanged(); + xRecyclerView_home.loadMoreComplete(); + } + },3000); + + } + }); + + } private void initListener() { @@ -114,7 +182,7 @@ public class SlideFragment extends Fragment { public void onClear() { // 一旦几个页面的数据加载完了,就在这里重新加载数据 - addData(); + addData(1); } }); } @@ -122,8 +190,9 @@ public class SlideFragment extends Fragment { /** * 向集合中添加数据 * 这个要从服务器拿数据 + * 0代表更新item 1代表更新header 2代表都更新 */ - private void addData(){ + private void addData(int flag){ int[] icons = {R.mipmap.header_icon_1, R.mipmap.header_icon_2, R.mipmap.header_icon_3, R.mipmap.header_icon_4, R.mipmap.header_icon_1, R.mipmap.header_icon_2}; String[] titles = {"Acknowledging", "Belief", "Confidence", "Dreaming", "Happiness", "Confidence"}; @@ -144,16 +213,63 @@ public class SlideFragment extends Fragment { R.mipmap.img_slide_5, R.mipmap.img_slide_6 }; - + if(flag==1||flag==2) for (int i = 0; i < 6; i++) { mList.add(new SlideBean(bgs[i],titles[i],icons[i],says[i])); } + if(flag==0||flag==2) + for(int i=0;i<10;i++){ + listData.add(new TweetsBean(bgs[i%6],titles[i%6],icons[i%6],says[i%6])); + } } /** * 适配器 */ + class MyAdapterItem extends RecyclerView.Adapter{ + public ArrayList datas = null; + public MyAdapterItem(ArrayList datas){ + this.datas = datas; + } + @NonNull + @Override + public MyAdapterItem.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { + View view = LayoutInflater.from(appCompatActivity).inflate(R.layout.item_haha,parent,false); + ViewHolder vh = new ViewHolder(view); + return vh; + } + + @Override + public void onBindViewHolder(@NonNull MyAdapterItem.ViewHolder holder, int position) { + Log.i("hah","j"+holder.mTextView); + TweetsBean tweetsBean = datas.get(position); + holder.mTextView.setText(tweetsBean.getUserSay()); + holder.tvTitle.setText(tweetsBean.getTitle()); + holder.imgBg.setImageResource(tweetsBean.getItemBg()); + holder.userIcon.setImageResource(tweetsBean.getUserIcon()); + } + + @Override + public int getItemCount() { + return datas.size(); + } + public class ViewHolder extends RecyclerView.ViewHolder{ + public TextView mTextView;//文字部分 + ImageView imgBg;//背景图片 + ImageView userIcon;//读者头像 + TextView tvTitle;//推文标题 + + public ViewHolder(View view){ + super(view); + mTextView = (TextView) view.findViewById(R.id.text_item_view); + imgBg = (ImageView) view.findViewById(R.id.img_bg); + userIcon = (ImageView) view.findViewById(R.id.img_user); + tvTitle = (TextView) view.findViewById(R.id.text_item_view); + } + + } + } class MyAdapter extends RecyclerView.Adapter { @Override diff --git a/app/src/main/java/com/example/HomeContent/TweetsBean.java b/app/src/main/java/com/example/HomeContent/TweetsBean.java new file mode 100644 index 0000000..e747c7b --- /dev/null +++ b/app/src/main/java/com/example/HomeContent/TweetsBean.java @@ -0,0 +1,45 @@ +package com.example.HomeContent; + +public class TweetsBean { + private int mItemBg; + private String mTitle; + private int mUserIcon; + private String mUserSay; + public TweetsBean(int mItemBg, String mTitle, int mUserIcon, String mUserSay){ + this.mItemBg = mItemBg;//截取图片 + this.mTitle = mTitle;//标题 + this.mUserIcon = mUserIcon; + this.mUserSay = mUserSay;//摘要 + } + public int getItemBg() { + return mItemBg; + } + + public void setItemBg(int mItemBg) { + this.mItemBg = mItemBg; + } + + public String getTitle() { + return mTitle; + } + + public void setTitle(String mTitle) { + this.mTitle = mTitle; + } + + public int getUserIcon() { + return mUserIcon; + } + + public void setUserIcon(int mUserIcon) { + this.mUserIcon = mUserIcon; + } + + public String getUserSay() { + return mUserSay; + } + + public void setUserSay(String mUserSay) { + this.mUserSay = mUserSay; + } +} diff --git a/app/src/main/java/com/example/PersonalCenter/MenuListFragment.java b/app/src/main/java/com/example/PersonalCenter/MenuListFragment.java index cc9e90f..ba7ee89 100644 --- a/app/src/main/java/com/example/PersonalCenter/MenuListFragment.java +++ b/app/src/main/java/com/example/PersonalCenter/MenuListFragment.java @@ -15,6 +15,7 @@ import android.view.ViewGroup; import android.widget.FrameLayout; import android.widget.ImageView; import android.widget.LinearLayout; +import android.widget.TextView; import android.widget.Toast; import androidx.annotation.Nullable; @@ -32,6 +33,7 @@ public class MenuListFragment extends Fragment { private ImageView ivMenuUserProfilePhoto; public AppCompatActivity appCompatActivity; + public TextView textView; public void setAppCompatActivity(AppCompatActivity appCompatActivity) { this.appCompatActivity = appCompatActivity; @@ -51,8 +53,6 @@ public class MenuListFragment extends Fragment { public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_menu, container,false); - Log.i("view==","=="+view.toString()+"=="); - //获取基本的菜单xml NavigationView linearLayout = (NavigationView) view.findViewById(R.id.vNavigation); View headview = linearLayout.getHeaderView(0); @@ -63,7 +63,8 @@ public class MenuListFragment extends Fragment { //获取用户的头像 ivMenuUserProfilePhoto = (ImageView) headview.findViewById(R.id.ivMenuUserProfilePhoto); - Log.i("ismenu---===","====)"+ivMenuUserProfilePhoto.toString()); + //获取xml中的用户名id + textView = (TextView) headview.findViewById(R.id.user_name_menu); NavigationView vNavigation = (NavigationView) view.findViewById(R.id.vNavigation); //设置某个菜单呗选中 vNavigation.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() { @@ -83,11 +84,17 @@ public class MenuListFragment extends Fragment { * 在这里加载用户图片 * */ Picasso.with(getAppCompatActivity()) - .load(R.drawable.draw1) + .load(R.drawable.tiantiansifangmao_09) // .placeholder(R.drawable.img_circle_placeholder) .into(ivMenuUserProfilePhoto); + avatarOnclickListener headerListener = new avatarOnclickListener(getAppCompatActivity(),this); + ivMenuUserProfilePhoto.setOnClickListener(headerListener); + //设置用户名 + if(User.isLogin()){ + textView.setText(User.getUser().getUsername()); + } } diff --git a/app/src/main/java/com/example/PersonalCenter/PersonContent.java b/app/src/main/java/com/example/PersonalCenter/PersonContent.java index 237cbbc..e6e7b4b 100644 --- a/app/src/main/java/com/example/PersonalCenter/PersonContent.java +++ b/app/src/main/java/com/example/PersonalCenter/PersonContent.java @@ -7,9 +7,13 @@ import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.Color; import android.os.Bundle; +import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import android.view.animation.Animation; +import android.view.animation.AnimationUtils; +import android.view.animation.Interpolator; import android.widget.Button; import android.widget.ImageButton; import android.widget.ImageView; @@ -35,18 +39,8 @@ import com.example.cmknowledgegraph.R; import com.hanks.htextview.rainbow.RainbowTextView; import com.mxn.soul.flowingdrawer_core.ElasticDrawer; import com.mxn.soul.flowingdrawer_core.FlowingDrawer; -import com.squareup.picasso.Picasso; -import com.squareup.picasso.Request; +import com.skyfishjy.library.RippleBackground; -import org.w3c.dom.Text; - -import java.util.ArrayList; - -import devlight.io.library.ntb.NavigationTabBar; -import jp.wasabeef.glide.transformations.BlurTransformation; -import yalantis.com.sidemenu.interfaces.Resourceble; -import yalantis.com.sidemenu.interfaces.ScreenShotable; -import yalantis.com.sidemenu.util.ViewAnimator; public class PersonContent extends Fragment { @@ -73,7 +67,7 @@ public class PersonContent extends Fragment { - public View onCreateView(LayoutInflater inflater, ViewGroup container, + public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Inflate the layout for this fragment return inflater.inflate( R.layout.activity_personality_center, container, false ); //要加载的layout文件 @@ -82,33 +76,35 @@ public class PersonContent extends Fragment { @Override public void onActivityCreated(@Nullable Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); -// rvFeed = (RecyclerView) appCompatActivity.findViewById(R.id.rvFeed); -// 原来的viewpager -// viewPager = (ViewPager) appCompatActivity.findViewById(R.id.vp_vertical_ntb); mDrawer = (FlowingDrawer) appCompatActivity.findViewById(R.id.drawerlayout); mDrawer.setTouchMode(ElasticDrawer.TOUCH_MODE_BEZEL); //设置工具栏 -// setupToolbar(); + setuptoolbar(); - //设置直接页面 -// setupFeed(); -// setupViewpager(); + //设置侧滑菜单 setupMenu(); } protected void setuptoolbar(){ //分别设置背景和头像 //背景 - ImageView blurimageView = (ImageView) appCompatActivity.findViewById(R.id.iv_blur); +// ImageView blurimageView = (ImageView) appCompatActivity.findViewById(R.id.iv_blur); + + RippleBackground linearimageView = (RippleBackground) appCompatActivity.findViewById(R.id.linearcontent); + linearimageView.startRippleAnimation(); + //头像 ImageView avatarImageView = (ImageView) appCompatActivity.findViewById(R.id.iv_avatar); - int width = blurimageView.getWidth(); - - Glide.with(appCompatActivity).load(R.drawable.draw7) - .apply(RequestOptions.bitmapTransform(new BlurTransformation(18,3))).into(blurimageView); -// Glide.with(appCompatActivity).load(R.drawable.draw7).override(width,450) -// .into(blurimageView); + Animation anim = AnimationUtils.loadAnimation(appCompatActivity,R.anim.anim_rotate); + anim.setDuration(14000); + avatarImageView.startAnimation(anim); + ImageView drugImageView = (ImageView) appCompatActivity.findViewById(R.id.drug_essays); + //drugessays(像动态一样) + Animation animessays = AnimationUtils.loadAnimation(appCompatActivity,R.anim.anim_drugessays); + animessays.setDuration(12000); + drugImageView.startAnimation(animessays); Glide.with(appCompatActivity).load(R.drawable.draw6).into(avatarImageView); + //用户名 final TextView rainbowTextView = (TextView) appCompatActivity.findViewById(R.id.user_name_person); rainbowTextView.setOnClickListener(new View.OnClickListener() { @@ -121,154 +117,6 @@ public class PersonContent extends Fragment { avatarOnclickListener.setFlowingDrawerl(mDrawer); avatarImageView.setOnClickListener(avatarOnclickListener); } -// - //设置没有侧滑之前的状态页面 - //在这里将东西其改成几个按钮 -// private void setupViewpager(){ -// /* -// * 先设置适配器 -// * */ -// viewPager.setAdapter(new PagerAdapter() { -// //设置菜单栏个数 -// @Override -// public int getCount() { -// return 5; -// } -// -// @Override -// public boolean isViewFromObject(final View view, final Object object) { -// return view.equals(object); -// } -// //移除某一个 -// @Override -// public void destroyItem(final View container, final int position, final Object object) { -// ((ViewPager) container).removeView((View) object); -// } -// /* -// *这里用来加载视图区,也就是每个菜单的对应的内容 -// *但是这里应该针对不同的菜单填选对应不同的内容 -// * */ -// @Override -// public Object instantiateItem(final ViewGroup container, final int position) { -// //每个position代表一个菜单,根据position来设置不同视图 -//// -// switch (position){ -// case 0: -// //饮食爱好 -// case 1: -// //日历 -// View view = setCanlendar(); -// container.addView(view); -// return view; -// case 2: -// //消息通知 -// case 3: -// //我的文章 -// case 4: -// //养生推荐 -// -// -// } -// //这是默认的,不要管,因为上面必须有个返回值 -// final View view = LayoutInflater.from( -// appCompatActivity.getBaseContext()).inflate(R.layout.item_vp, null, false); -// final TextView txtPage = (TextView) view.findViewById(R.id.txt_vp_item_page); -// txtPage.setText(String.format("Page #%d", position)); -// container.addView(view); -// -// return view; -// -// } -// //设置日历 -// public View setCanlendar(){ -// final View view = LayoutInflater.from( -// appCompatActivity.getBaseContext() -// ).inflate(R.layout.canlendar_layout, null, false); -// return view; -// } -// //设置饮食爱好 -// public View setfoodhobby(){ -// return null; -// } -// }); -// /* -// * 这里开始设置菜单栏 -// * */ -// //每个菜单选取了不同的颜色 -// final String[] colors = getResources().getStringArray(R.array.vertical_ntb); -// //这里菜单栏选取的是NavigationTabBar -// final NavigationTabBar navigationTabBar = (NavigationTabBar) appCompatActivity.findViewById(R.id.ntb_vertical); -// //这里用来加载每个model,可以设置几个菜单 -// final ArrayList models = new ArrayList<>(); -// models.add( -// new NavigationTabBar.Model.Builder( -// getResources().getDrawable(R.drawable.ic_first), -// Color.parseColor(colors[0])) -// .title("ic_first") -// .selectedIcon(getResources().getDrawable(R.drawable.ic_eighth)) -// .build() -// ); -// models.add( -// new NavigationTabBar.Model.Builder( -// getResources().getDrawable(R.drawable.ic_second), -// Color.parseColor(colors[1])) -// .selectedIcon(getResources().getDrawable(R.drawable.ic_eighth)) -// .title("ic_second") -// .build() -// ); -// models.add( -// new NavigationTabBar.Model.Builder( -// getResources().getDrawable(R.drawable.ic_third), -// Color.parseColor(colors[2])) -// .selectedIcon(getResources().getDrawable(R.drawable.ic_eighth)) -// .title("ic_third") -// .build() -// ); -// models.add( -// new NavigationTabBar.Model.Builder( -// getResources().getDrawable(R.drawable.ic_fourth), -// Color.parseColor(colors[3])) -// .selectedIcon(getResources().getDrawable(R.drawable.ic_eighth)) -// .title("ic_fourth") -// .build() -// ); -// models.add( -// new NavigationTabBar.Model.Builder( -// getResources().getDrawable(R.drawable.ic_fifth), -// Color.parseColor(colors[4])) -// .selectedIcon(getResources().getDrawable(R.drawable.ic_eighth)) -// .title("ic_fifth") -// .build() -// ); -//// models.add( -//// new NavigationTabBar.Model.Builder( -//// getResources().getDrawable(R.drawable.ic_sixth), -//// Color.parseColor(colors[5])) -//// .selectedIcon(getResources().getDrawable(R.drawable.ic_eighth)) -//// .title("ic_sixth") -//// .build() -//// ); -//// models.add( -//// new NavigationTabBar.Model.Builder( -//// getResources().getDrawable(R.drawable.ic_seventh), -//// Color.parseColor(colors[6])) -//// .selectedIcon(getResources().getDrawable(R.drawable.ic_eighth)) -//// .title("ic_seventh") -//// .build() -//// ); -//// models.add( -//// new NavigationTabBar.Model.Builder( -//// getResources().getDrawable(R.drawable.ic_eighth), -//// Color.parseColor(colors[7])) -//// .selectedIcon(getResources().getDrawable(R.drawable.ic_eighth)) -//// .title("ic_eighth") -//// .build() -//// ); -// //设置菜单 -// navigationTabBar.setModels(models); -// //设置每个子菜单对一个的viewpager -// navigationTabBar.setViewPager(viewPager, 0); -// } //设置菜单 @@ -283,19 +131,7 @@ public class PersonContent extends Fragment { //向activity添加一个布局 } -// mDrawer.setOnDrawerStateChangeListener(new ElasticDrawer.OnDrawerStateChangeListener() { -// @Override -// public void onDrawerStateChange(int oldState, int newState) { -// if (newState == ElasticDrawer.STATE_CLOSED) { -// Log.i("MainActivity", "Drawer STATE_CLOSED"); -// } -// } -// -// @Override -// public void onDrawerSlide(float openRatio, int offsetPixels) { -// Log.i("MainActivity", "openRatio=" + openRatio + " ,offsetPixels=" + offsetPixels); -// } -// }); + } // diff --git a/app/src/main/java/com/example/cmknowledgegraph/MainActivity.java b/app/src/main/java/com/example/cmknowledgegraph/MainActivity.java index 4b44435..37290ea 100644 --- a/app/src/main/java/com/example/cmknowledgegraph/MainActivity.java +++ b/app/src/main/java/com/example/cmknowledgegraph/MainActivity.java @@ -1,5 +1,6 @@ package com.example.cmknowledgegraph; +import android.graphics.Color; import android.os.Bundle; @@ -24,7 +25,7 @@ public class MainActivity extends AppCompatActivity { private TextView mTextMessage; private FragmentTransaction transaction; private FragmentManager fragmentManager; - + BottomNavigationView navView; public final AppCompatActivity getAppCompatActivity(){ return this; @@ -46,7 +47,7 @@ public class MainActivity extends AppCompatActivity { * */ switch (item.getItemId()) { case R.id.home: - SlideFragment slideFragment = new SlideFragment(); + SlideFragment slideFragment = new SlideFragment(); slideFragment.setAppCompatActivity(getAppCompatActivity()); transaction.replace(R.id.content,slideFragment); //对应的java class transaction.commit(); //提交事务 @@ -59,6 +60,7 @@ public class MainActivity extends AppCompatActivity { transaction.commit(); //提交事务 return true; case R.id.chat: + ChatContent chatContent = new ChatContent(); chatContent.setAppCompatActivity(getAppCompatActivity()); transaction.replace(R.id.content,chatContent); @@ -66,6 +68,7 @@ public class MainActivity extends AppCompatActivity { transaction.commit();//提交事务 return true; case R.id.person: + PersonContent personContent = new PersonContent(); personContent.setAppCompatActivity(getAppCompatActivity()); transaction.replace(R.id.content, personContent); //对应的java class @@ -92,7 +95,7 @@ protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); setDefaultFragment(); //上面写的那个函数 - BottomNavigationView navView = findViewById(R.id.nav_view); + navView = findViewById(R.id.nav_view); mTextMessage = findViewById(R.id.message); navView.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener); diff --git a/app/src/main/java/com/example/cmknowledgegraph/tt.java b/app/src/main/java/com/example/cmknowledgegraph/tt.java deleted file mode 100644 index 674c35e..0000000 --- a/app/src/main/java/com/example/cmknowledgegraph/tt.java +++ /dev/null @@ -1,178 +0,0 @@ -package com.example.cmknowledgegraph; - -import android.os.Bundle; -import android.view.Menu; -import android.view.MenuItem; - -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.ChatContentPkg.RecyclerViewFragment; -import com.github.florent37.materialviewpager.MaterialViewPager; -import com.github.florent37.materialviewpager.header.HeaderDesign; - -public class tt extends AppCompatActivity { - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.activity_chat); -// Toolbar toolbar = findViewById(R.id.toolbar); -// setSupportActionBar(toolbar); -// -// FloatingActionButton fab = findViewById(R.id.fab); -// fab.setOnClickListener(new View.OnClickListener() { -// @Override -// public void onClick(View view) { -// Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) -// .setAction("Action", null).show(); -// } -// }); -// BoomMenuButton bmb = findViewById(R.id.bmb); -// for (int i=0;i models = new ArrayList<>(); -// models.add( -// new NavigationTabBar.Model.Builder( -// getResources().getDrawable(R.drawable.draw3), -// Color.parseColor("red") -// ).title("论坛").badgeTitle("NTB").build()); -// models.add( -// new NavigationTabBar.Model.Builder( -// getResources().getDrawable(R.drawable.draw1), -// Color.parseColor("blue") -// ).title("drug").badgeTitle("drug").build() -// ); -// navigationTabBar.setModels(models); -// ViewPager viewPager = (ViewPager) findViewById(R.id.viewpager); -// viewPager.setAdapter(new PagerAdapter() { -// @Override -// public int getCount() { -// return 0; -// } -// -// @Override -// public boolean isViewFromObject(@NonNull View view, @NonNull Object object) { -// return false; -// } -// }); -// navigationTabBar.setViewPager(viewPager,2); -// navigationTabBar.setTitleMode(NavigationTabBar.TitleMode.ACTIVE); -// navigationTabBar.setBadgeGravity(NavigationTabBar.BadgeGravity.BOTTOM); -// navigationTabBar.setBadgePosition(NavigationTabBar.BadgePosition.CENTER); -// -// navigationTabBar.setIsBadged(true); -// navigationTabBar.setIsTitled(true); -// navigationTabBar.setIsTinted(true); -// navigationTabBar.setIsBadgeUseTypeface(true); -// navigationTabBar.setBadgeBgColor(Color.RED); -// navigationTabBar.setBadgeTitleColor(Color.WHITE); -// navigationTabBar.setIsSwiped(true); -// navigationTabBar.setBgColor(Color.BLACK); -// navigationTabBar.setBadgeSize(10); -// navigationTabBar.setTitleSize(10); -// navigationTabBar.setIconSizeFraction((float) 0.5); - //得到MaterviewPager实例 - MaterialViewPager materialViewPager = (MaterialViewPager) findViewById(R.id.materialViewPager); - //为MaterialViewPager添加监听 - materialViewPager.setMaterialViewPagerListener(new MaterialViewPager.Listener() { - @Override - public HeaderDesign getHeaderDesign(int page) { - switch (page){ - case 0: - return HeaderDesign.fromColorResAndUrl( - R.color.blue, - getResources().getDrawable(R.drawable.draw1).toString() - ); - case 1: - return HeaderDesign.fromColorResAndUrl( - R.color.green, - getResources().getDrawable(R.drawable.draw2).toString() - ); - case 2: - return HeaderDesign.fromColorResAndUrl( - R.color.cyan, - getResources().getDrawable(R.drawable.draw3).toString() - ); - - } - return null; - } - }); - //设置Toolbar - Toolbar toolbar = materialViewPager.getToolbar(); - if(toolbar!=null){ - setSupportActionBar(toolbar); - ActionBar actionBar = 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(getSupportFragmentManager()) { - @NonNull - @Override - public Fragment getItem(int position) { - switch (position % 3){ - case 0: - return RecyclerViewFragment.newInstance(); - default: - return RecyclerViewFragment.newInstance(); - - } - } - - @Override - public int getCount() { - return 3; - } - - @Nullable - @Override - public CharSequence getPageTitle(int position) { - switch (position % 3){ - case 0: - return "TAP1"; - default: - return "TAPN"; - } - } - }); - materialViewPager.getViewPager().setOffscreenPageLimit(materialViewPager - .getViewPager().getAdapter().getCount()); - materialViewPager.getPagerTitleStrip().setViewPager(materialViewPager.getViewPager()); - } - - - - -} diff --git a/app/src/main/res/anim/anim_drugessays.xml b/app/src/main/res/anim/anim_drugessays.xml new file mode 100644 index 0000000..fb5e2af --- /dev/null +++ b/app/src/main/res/anim/anim_drugessays.xml @@ -0,0 +1,15 @@ + + + + + + + diff --git a/app/src/main/res/anim/anim_rotate.xml b/app/src/main/res/anim/anim_rotate.xml new file mode 100644 index 0000000..404c5d3 --- /dev/null +++ b/app/src/main/res/anim/anim_rotate.xml @@ -0,0 +1,15 @@ + + + + + + + diff --git a/app/src/main/res/drawable/_planet.png b/app/src/main/res/drawable/_planet.png new file mode 100644 index 0000000..ae6cc0f Binary files /dev/null and b/app/src/main/res/drawable/_planet.png differ diff --git a/app/src/main/res/drawable/anonymous.png b/app/src/main/res/drawable/anonymous.png new file mode 100644 index 0000000..5779c66 Binary files /dev/null and b/app/src/main/res/drawable/anonymous.png differ diff --git a/app/src/main/res/drawable/boy.png b/app/src/main/res/drawable/boy.png new file mode 100644 index 0000000..4c2679b Binary files /dev/null and b/app/src/main/res/drawable/boy.png differ diff --git a/app/src/main/res/drawable/calendarperson.png b/app/src/main/res/drawable/calendarperson.png new file mode 100644 index 0000000..8ba6d55 Binary files /dev/null and b/app/src/main/res/drawable/calendarperson.png differ diff --git a/app/src/main/res/drawable/child.png b/app/src/main/res/drawable/child.png new file mode 100644 index 0000000..ca00503 Binary files /dev/null and b/app/src/main/res/drawable/child.png differ diff --git a/app/src/main/res/drawable/crayoncute_driver.png b/app/src/main/res/drawable/crayoncute_driver.png new file mode 100755 index 0000000..f723bd9 Binary files /dev/null and b/app/src/main/res/drawable/crayoncute_driver.png differ diff --git a/app/src/main/res/drawable/crayoncute_movies.png b/app/src/main/res/drawable/crayoncute_movies.png new file mode 100755 index 0000000..6bff728 Binary files /dev/null and b/app/src/main/res/drawable/crayoncute_movies.png differ diff --git a/app/src/main/res/drawable/draw10.jpg b/app/src/main/res/drawable/draw10.jpg new file mode 100644 index 0000000..e8e1a40 Binary files /dev/null and b/app/src/main/res/drawable/draw10.jpg differ diff --git a/app/src/main/res/drawable/draw11.jpg b/app/src/main/res/drawable/draw11.jpg new file mode 100644 index 0000000..0e4a648 Binary files /dev/null and b/app/src/main/res/drawable/draw11.jpg differ diff --git a/app/src/main/res/drawable/draw12.jpg b/app/src/main/res/drawable/draw12.jpg new file mode 100644 index 0000000..4961b37 Binary files /dev/null and b/app/src/main/res/drawable/draw12.jpg differ diff --git a/app/src/main/res/drawable/draw13.png b/app/src/main/res/drawable/draw13.png new file mode 100644 index 0000000..591298f Binary files /dev/null and b/app/src/main/res/drawable/draw13.png differ diff --git a/app/src/main/res/drawable/draw14.jpg b/app/src/main/res/drawable/draw14.jpg new file mode 100644 index 0000000..5f23a90 Binary files /dev/null and b/app/src/main/res/drawable/draw14.jpg differ diff --git a/app/src/main/res/drawable/draw15.png b/app/src/main/res/drawable/draw15.png new file mode 100644 index 0000000..fa5b969 Binary files /dev/null and b/app/src/main/res/drawable/draw15.png differ diff --git a/app/src/main/res/drawable/draw8.jpg b/app/src/main/res/drawable/draw8.jpg new file mode 100644 index 0000000..c48aac3 Binary files /dev/null and b/app/src/main/res/drawable/draw8.jpg differ diff --git a/app/src/main/res/drawable/draw9.jpg b/app/src/main/res/drawable/draw9.jpg new file mode 100644 index 0000000..7d6873f Binary files /dev/null and b/app/src/main/res/drawable/draw9.jpg differ diff --git a/app/src/main/res/drawable/girl.png b/app/src/main/res/drawable/girl.png new file mode 100644 index 0000000..3551c91 Binary files /dev/null and b/app/src/main/res/drawable/girl.png differ diff --git a/app/src/main/res/drawable/handy_icon_06.png b/app/src/main/res/drawable/handy_icon_06.png new file mode 100755 index 0000000..445e344 Binary files /dev/null and b/app/src/main/res/drawable/handy_icon_06.png differ diff --git a/app/src/main/res/drawable/handy_icon_08.png b/app/src/main/res/drawable/handy_icon_08.png new file mode 100755 index 0000000..721e94e Binary files /dev/null and b/app/src/main/res/drawable/handy_icon_08.png differ diff --git a/app/src/main/res/drawable/handy_icon_13.png b/app/src/main/res/drawable/handy_icon_13.png new file mode 100755 index 0000000..708c1cb Binary files /dev/null and b/app/src/main/res/drawable/handy_icon_13.png differ diff --git a/app/src/main/res/drawable/loveperson.png b/app/src/main/res/drawable/loveperson.png new file mode 100644 index 0000000..d3bf5d0 Binary files /dev/null and b/app/src/main/res/drawable/loveperson.png differ diff --git a/app/src/main/res/drawable/mushroom.png b/app/src/main/res/drawable/mushroom.png new file mode 100755 index 0000000..2368492 Binary files /dev/null and b/app/src/main/res/drawable/mushroom.png differ diff --git a/app/src/main/res/drawable/nice_person.png b/app/src/main/res/drawable/nice_person.png new file mode 100644 index 0000000..a2b52d8 Binary files /dev/null and b/app/src/main/res/drawable/nice_person.png differ diff --git a/app/src/main/res/drawable/notebook.png b/app/src/main/res/drawable/notebook.png new file mode 100644 index 0000000..65a599b Binary files /dev/null and b/app/src/main/res/drawable/notebook.png differ diff --git a/app/src/main/res/drawable/notification.png b/app/src/main/res/drawable/notification.png new file mode 100644 index 0000000..77b1da5 Binary files /dev/null and b/app/src/main/res/drawable/notification.png differ diff --git a/app/src/main/res/drawable/origami_colored_pencil_30.png b/app/src/main/res/drawable/origami_colored_pencil_30.png new file mode 100755 index 0000000..48b347b Binary files /dev/null and b/app/src/main/res/drawable/origami_colored_pencil_30.png differ diff --git a/app/src/main/res/drawable/origamicoloredpencil02.png b/app/src/main/res/drawable/origamicoloredpencil02.png new file mode 100755 index 0000000..6b4e504 Binary files /dev/null and b/app/src/main/res/drawable/origamicoloredpencil02.png differ diff --git a/app/src/main/res/drawable/origamicoloredpencil06.png b/app/src/main/res/drawable/origamicoloredpencil06.png new file mode 100755 index 0000000..3d01180 Binary files /dev/null and b/app/src/main/res/drawable/origamicoloredpencil06.png differ diff --git a/app/src/main/res/drawable/origamicoloredpencil37.png b/app/src/main/res/drawable/origamicoloredpencil37.png new file mode 100755 index 0000000..52b6ed4 Binary files /dev/null and b/app/src/main/res/drawable/origamicoloredpencil37.png differ diff --git a/app/src/main/res/drawable/red_hearts_01.png b/app/src/main/res/drawable/red_hearts_01.png new file mode 100755 index 0000000..5c55ca7 Binary files /dev/null and b/app/src/main/res/drawable/red_hearts_01.png differ diff --git a/app/src/main/res/drawable/region.png b/app/src/main/res/drawable/region.png new file mode 100644 index 0000000..60ac933 Binary files /dev/null and b/app/src/main/res/drawable/region.png differ diff --git a/app/src/main/res/drawable/relationship.png b/app/src/main/res/drawable/relationship.png new file mode 100644 index 0000000..9434563 Binary files /dev/null and b/app/src/main/res/drawable/relationship.png differ diff --git a/app/src/main/res/drawable/sank.png b/app/src/main/res/drawable/sank.png new file mode 100644 index 0000000..f1bdb44 Binary files /dev/null and b/app/src/main/res/drawable/sank.png differ diff --git a/app/src/main/res/drawable/scrolling_background.png b/app/src/main/res/drawable/scrolling_background.png new file mode 100644 index 0000000..68a9869 Binary files /dev/null and b/app/src/main/res/drawable/scrolling_background.png differ diff --git a/app/src/main/res/drawable/scrolling_foreground.png b/app/src/main/res/drawable/scrolling_foreground.png new file mode 100644 index 0000000..68eb4be Binary files /dev/null and b/app/src/main/res/drawable/scrolling_foreground.png differ diff --git a/app/src/main/res/drawable/sex.png b/app/src/main/res/drawable/sex.png new file mode 100644 index 0000000..55e2e0e Binary files /dev/null and b/app/src/main/res/drawable/sex.png differ diff --git a/app/src/main/res/drawable/shape_rectangle_with_radius.xml b/app/src/main/res/drawable/shape_rectangle_with_radius.xml new file mode 100644 index 0000000..3aba14a --- /dev/null +++ b/app/src/main/res/drawable/shape_rectangle_with_radius.xml @@ -0,0 +1,9 @@ + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/tiantiansifangmao_04.png b/app/src/main/res/drawable/tiantiansifangmao_04.png new file mode 100755 index 0000000..885a35a Binary files /dev/null and b/app/src/main/res/drawable/tiantiansifangmao_04.png differ diff --git a/app/src/main/res/drawable/tiantiansifangmao_09.png b/app/src/main/res/drawable/tiantiansifangmao_09.png new file mode 100755 index 0000000..d6b692f Binary files /dev/null and b/app/src/main/res/drawable/tiantiansifangmao_09.png differ diff --git a/app/src/main/res/drawable/tuya_pc_icon_09.png b/app/src/main/res/drawable/tuya_pc_icon_09.png new file mode 100755 index 0000000..e7d7d9e Binary files /dev/null and b/app/src/main/res/drawable/tuya_pc_icon_09.png differ diff --git a/app/src/main/res/drawable/tuya_pc_icon_12.png b/app/src/main/res/drawable/tuya_pc_icon_12.png new file mode 100755 index 0000000..ad78605 Binary files /dev/null and b/app/src/main/res/drawable/tuya_pc_icon_12.png differ diff --git a/app/src/main/res/drawable/tuya_pc_icon_17.png b/app/src/main/res/drawable/tuya_pc_icon_17.png new file mode 100755 index 0000000..1856323 Binary files /dev/null and b/app/src/main/res/drawable/tuya_pc_icon_17.png differ diff --git a/app/src/main/res/drawable/tuya_pc_icon_19.png b/app/src/main/res/drawable/tuya_pc_icon_19.png new file mode 100755 index 0000000..5e3021d Binary files /dev/null and b/app/src/main/res/drawable/tuya_pc_icon_19.png differ diff --git a/app/src/main/res/drawable/tuya_pc_icon_20.png b/app/src/main/res/drawable/tuya_pc_icon_20.png new file mode 100755 index 0000000..1eecd57 Binary files /dev/null and b/app/src/main/res/drawable/tuya_pc_icon_20.png differ diff --git a/app/src/main/res/drawable/tuya_pc_icon_21.png b/app/src/main/res/drawable/tuya_pc_icon_21.png new file mode 100755 index 0000000..99ceccc Binary files /dev/null and b/app/src/main/res/drawable/tuya_pc_icon_21.png differ diff --git a/app/src/main/res/drawable/van.png b/app/src/main/res/drawable/van.png new file mode 100644 index 0000000..d8de83e Binary files /dev/null and b/app/src/main/res/drawable/van.png differ diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 9a78545..e709b3c 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -1,7 +1,7 @@ + app:edMenuBackground="#808069"> - - //上面的背景 + android:background="@color/white"> + + + + + + + + + //头像 + - //背景 - + app:civ_border_width="2dp" /> + //用户名 - + - //头像 - - //用户名 + android:layout_alignTop="@+id/user_name_person" + android:layout_marginTop="90dp" + android:layout_marginLeft="20dp" + android:background="@color/colorTransparent"> + + + + android:text="16岁" + android:layout_alignLeft="@+id/age_personimg" + android:layout_marginLeft="40dp" + android:layout_alignTop="@+id/sex_persontext" + android:layout_marginTop="44dp" + android:textSize="18dp" + android:id="@+id/age_persontext"/> + + + + + /> - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - @@ -112,7 +311,7 @@ + android:layout_height="match_parent" /> diff --git a/app/src/main/res/layout/drug_friends.xml b/app/src/main/res/layout/drug_friends.xml new file mode 100644 index 0000000..53d9856 --- /dev/null +++ b/app/src/main/res/layout/drug_friends.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/drug_friends_card.xml b/app/src/main/res/layout/drug_friends_card.xml new file mode 100644 index 0000000..3553be1 --- /dev/null +++ b/app/src/main/res/layout/drug_friends_card.xml @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_menu.xml b/app/src/main/res/layout/fragment_menu.xml index d6bc16e..8c16825 100644 --- a/app/src/main/res/layout/fragment_menu.xml +++ b/app/src/main/res/layout/fragment_menu.xml @@ -8,10 +8,10 @@ \ No newline at end of file +android:id="@+id/recyclerView" +android:layout_width="match_parent" +android:layout_height="match_parent" + /> \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_slide.xml b/app/src/main/res/layout/fragment_slide.xml index 0d5c7c2..d971e19 100644 --- a/app/src/main/res/layout/fragment_slide.xml +++ b/app/src/main/res/layout/fragment_slide.xml @@ -3,20 +3,63 @@ - + + + + + + + + + - - + android:layout_height="wrap_content" + android:layout_below="@id/scrolling_background_home" + android:layout_marginTop="10dp" + > + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/internetforumfragment.xml b/app/src/main/res/layout/internetforumfragment.xml new file mode 100644 index 0000000..ce8d852 --- /dev/null +++ b/app/src/main/res/layout/internetforumfragment.xml @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/item_haha.xml b/app/src/main/res/layout/item_haha.xml new file mode 100644 index 0000000..76c456c --- /dev/null +++ b/app/src/main/res/layout/item_haha.xml @@ -0,0 +1,96 @@ + + + + //文章截取图片 + + + + + //文字部分 + + + //底部头像部分,还有个性签名吧 + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/item_slide.xml b/app/src/main/res/layout/item_slide.xml index c5a4192..fb97344 100644 --- a/app/src/main/res/layout/item_slide.xml +++ b/app/src/main/res/layout/item_slide.xml @@ -1,10 +1,12 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/list_card_item_larger_header.xml b/app/src/main/res/layout/list_card_item_larger_header.xml new file mode 100644 index 0000000..386baf8 --- /dev/null +++ b/app/src/main/res/layout/list_card_item_larger_header.xml @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/list_card_item_with_no_header.xml b/app/src/main/res/layout/list_card_item_with_no_header.xml new file mode 100644 index 0000000..50849e8 --- /dev/null +++ b/app/src/main/res/layout/list_card_item_with_no_header.xml @@ -0,0 +1,27 @@ + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/recycleview_header_home.xml b/app/src/main/res/layout/recycleview_header_home.xml new file mode 100644 index 0000000..4ef5fcf --- /dev/null +++ b/app/src/main/res/layout/recycleview_header_home.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/view_global_menu_header.xml b/app/src/main/res/layout/view_global_menu_header.xml index 3976f69..bef3ab0 100755 --- a/app/src/main/res/layout/view_global_menu_header.xml +++ b/app/src/main/res/layout/view_global_menu_header.xml @@ -3,23 +3,20 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@android:color/transparent" - android:clickable="true"> + android:clickable="true" + android:layout_marginTop="40dp"> - - - - - + @@ -30,7 +27,7 @@ android:layout_height="wrap_content" android:layout_gravity="center" android:layout_weight="1" - android:text="mxn" + android:text="未登录" android:textColor="#2d5d82" android:textSize="16sp" android:textStyle="bold" /> @@ -42,5 +39,5 @@ android:layout_width="match_parent" android:layout_height="1dp" android:layout_gravity="bottom" - android:background="#dddddd" /> + android:background="#808073" /> \ No newline at end of file diff --git a/app/src/main/res/menu/bottom_nav_menu.xml b/app/src/main/res/menu/bottom_nav_menu.xml index a35d70f..cf279ab 100644 --- a/app/src/main/res/menu/bottom_nav_menu.xml +++ b/app/src/main/res/menu/bottom_nav_menu.xml @@ -3,22 +3,22 @@ diff --git a/app/src/main/res/menu/drawer_menu.xml b/app/src/main/res/menu/drawer_menu.xml index ea3f770..838c1c3 100755 --- a/app/src/main/res/menu/drawer_menu.xml +++ b/app/src/main/res/menu/drawer_menu.xml @@ -2,35 +2,37 @@ \ No newline at end of file diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index b78a012..998eeb8 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -15,6 +15,33 @@ #2b5a83 #dddddd + #EF9A9A + #E53935 + #F8BBD0 + #D81B60 + #880E4F + #CE93D8 + #8E24AA + #4A148C + #B39DDB + #673AB7 + #311B92 + #3D5AFE + #29B6F6 + #26C6DA + #26A69A + #4CAF50 + #8BC34A + #CDDC39 + #FFEB3B + #FFC107 + #FF9800 + #FF5722 + #795548 + #9E9E9E + #607D8B + #000000 + #FFFF33