This commit is contained in:
2023-10-25 14:07:27 +08:00
parent 06a2621e0f
commit d34e30c291
21 changed files with 658 additions and 3 deletions

View File

@@ -191,6 +191,7 @@ public class MainActivity extends AbsOTOActivity {
protected void onResume() {
super.onResume();
checkUserInfoIsSet();
initFirstLoginTips();
}
/**

View File

@@ -0,0 +1,114 @@
package com.shayu.onetoone.activity;
import android.os.Bundle;
import androidx.annotation.NonNull;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.shayu.onetoone.R;
import com.shayu.onetoone.adapter.MyFriendListAdapter;
import com.shayu.onetoone.bean.HomeItemBean;
import com.shayu.onetoone.manager.OTONetManager;
import com.shayu.onetoone.manager.RouteManager;
import com.yanzhenjie.recyclerview.SwipeRecyclerView;
import com.yunbao.common.http.base.HttpCallback;
import com.yunbao.common.utils.WordUtil;
import java.util.List;
import io.rong.imkit.widget.refresh.SmartRefreshLayout;
import io.rong.imkit.widget.refresh.api.RefreshLayout;
import io.rong.imkit.widget.refresh.listener.OnLoadMoreListener;
import io.rong.imkit.widget.refresh.listener.OnRefreshListener;
import io.rong.imkit.widget.refresh.wrapper.RongRefreshHeader;
@Route(path = RouteManager.ACTIVITY_MY_FRIEND_LIST)
public class MyFriendListActivity extends AbsOTOActivity {
public static final int TYPE_FRIEND = 0;
public static final int TYPE_FANS = 1;
public static final int TYPE_FOLLOW = 2;
private int type;
int page = 1;
MyFriendListAdapter adapter;
SmartRefreshLayout mRefreshLayout;
SwipeRecyclerView recyclerView;
@Override
protected int getLayoutId() {
return R.layout.activity_my_follow;
}
@Override
protected void main(Bundle savedInstanceState) {
Bundle extras = getIntent().getExtras();
type = extras.getInt("type", TYPE_FRIEND);
mRefreshLayout = findViewById(R.id.swipeRefreshLayout);
recyclerView = findViewById(R.id.recyclerView);
adapter = new MyFriendListAdapter(mContext);
recyclerView.setAdapter(adapter);
mRefreshLayout.setNestedScrollingEnabled(false);
mRefreshLayout.setRefreshHeader(new RongRefreshHeader(mContext));
mRefreshLayout.setRefreshFooter(new RongRefreshHeader(mContext));
mRefreshLayout.setOnRefreshListener(new OnRefreshListener() {
public void onRefresh(@NonNull RefreshLayout refreshLayout) {
page = 1;
initData();
}
});
mRefreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() {
public void onLoadMore(@NonNull RefreshLayout refreshLayout) {
initData();
}
});
initData();
}
private void initData() {
if (type == TYPE_FANS) {
OTONetManager.getInstance(mContext).getFans(page, new MyNetData());
} else if (type == TYPE_FOLLOW) {
OTONetManager.getInstance(mContext).getFollows(page, new MyNetData());
} else if (type == TYPE_FRIEND) {
OTONetManager.getInstance(mContext).getFriends(page, new MyNetData());
}
}
private class MyNetData implements HttpCallback<List<HomeItemBean>> {
@Override
public void onSuccess(List<HomeItemBean> data) {
String title = "";
mRefreshLayout.finishRefresh();
mRefreshLayout.finishLoadMore();
switch (type) {
case TYPE_FANS:
title = WordUtil.getNewString(R.string.activity_my_friend_list_fans);
break;
case TYPE_FOLLOW:
title = WordUtil.getNewString(R.string.activity_my_friend_list_follow);
break;
case TYPE_FRIEND:
title = WordUtil.getNewString(R.string.activity_my_friend_list_friend);
break;
}
if (data.isEmpty()) {
setTitle(title + "(" + adapter.getItemCount() + WordUtil.getNewString(R.string.activity_my_friend_list_people)+")");
recyclerView.loadMoreFinish(true, false);
return;
}
recyclerView.loadMoreFinish(false, true);
if (page == 1) {
adapter.setList(data);
} else {
adapter.addList(data);
}
page++;
setTitle(title + "(" + adapter.getItemCount() + WordUtil.getNewString(R.string.activity_my_friend_list_people)+")");
}
@Override
public void onError(String error) {
}
}
}

View File

@@ -30,9 +30,12 @@ import com.opensource.svgaplayer.SVGAImageView;
import com.opensource.svgaplayer.SVGAParser;
import com.opensource.svgaplayer.SVGAVideoEntity;
import com.shayu.onetoone.R;
import com.shayu.onetoone.activity.MyFriendListActivity;
import com.shayu.onetoone.activity.setting.SettingActivity;
import com.shayu.onetoone.adapter.MainMeAdapter;
import com.shayu.onetoone.bean.PeopleNum;
import com.shayu.onetoone.bean.SlideBean;
import com.shayu.onetoone.manager.OTONetManager;
import com.shayu.onetoone.manager.RouteManager;
import com.shayu.onetoone.utils.MainHttpConsts;
import com.shayu.onetoone.utils.MainHttpUtil;
@@ -94,6 +97,10 @@ public class MyFragment extends BaseFragment implements OnItemClickListener<User
private LinearLayout lt_advertisement;
private View redPoint;
private TextView followNum, fansNum, friendNum;
private View followLayout, fansLayout, friendLayout;
private ImageView sex;
@Override
public View createView(LayoutInflater inflater, ViewGroup container, Bundle
savedInstanceState) {
@@ -123,6 +130,31 @@ public class MyFragment extends BaseFragment implements OnItemClickListener<User
RouteManager.forwardEditProfileActivity();
}
});
fansNum = itemView.findViewById(R.id.fans);
fansLayout = itemView.findViewById(R.id.fans_layout);
followNum = itemView.findViewById(R.id.follow);
followLayout = itemView.findViewById(R.id.follow_layout);
friendNum = itemView.findViewById(R.id.friend);
friendLayout = itemView.findViewById(R.id.friend_layout);
sex = itemView.findViewById(R.id.sex);
fansLayout.setOnClickListener(v -> {
Bundle bundle = new Bundle();
bundle.putInt("type", MyFriendListActivity.TYPE_FANS);
RouteManager.forwardActivity(RouteManager.ACTIVITY_MY_FRIEND_LIST, bundle);
});
followLayout.setOnClickListener(v -> {
Bundle bundle = new Bundle();
bundle.putInt("type", MyFriendListActivity.TYPE_FOLLOW);
RouteManager.forwardActivity(RouteManager.ACTIVITY_MY_FRIEND_LIST, bundle);
});
friendLayout.setOnClickListener(v -> {
Bundle bundle = new Bundle();
bundle.putInt("type", MyFriendListActivity.TYPE_FRIEND);
RouteManager.forwardActivity(RouteManager.ACTIVITY_MY_FRIEND_LIST, bundle);
});
user_noble_ico = (ImageView) itemView.findViewById(R.id.user_noble_ico);
mLevelAnchor = (ImageView) itemView.findViewById(R.id.level_anchor);
mLevel = (ImageView) itemView.findViewById(R.id.level);
@@ -178,6 +210,7 @@ public class MyFragment extends BaseFragment implements OnItemClickListener<User
}
});
loadData();
initPeopleNum();
}
@Override
@@ -278,6 +311,11 @@ public class MyFragment extends BaseFragment implements OnItemClickListener<User
}
}
}
if (u.getSex() == 1) {
sex.setImageResource(R.mipmap.ic_message_tab_man);
} else {
sex.setImageResource(R.mipmap.ic_message_tab_woman);
}
showBanner();
ImgLoader.displayAvatar(mContext, u.getAvatar(), mAvatar);
mName.setText(u.getUserNiceName());
@@ -615,5 +653,21 @@ public class MyFragment extends BaseFragment implements OnItemClickListener<User
}
}
void initPeopleNum() {
OTONetManager.getInstance(mContext)
.getPeopleNum(new com.yunbao.common.http.base.HttpCallback<PeopleNum>() {
@Override
public void onSuccess(PeopleNum data) {
fansNum.setText(data.getFans() + "");
followNum.setText(data.getFollow() + "");
friendNum.setText(data.getFriend() + "");
}
@Override
public void onError(String error) {
}
});
}
}