diff --git a/common/src/main/java/com/yunbao/common/adapter/LiveDataHistoryAdapter.java b/common/src/main/java/com/yunbao/common/adapter/LiveDataHistoryAdapter.java index 637d1655b..be91ac72a 100644 --- a/common/src/main/java/com/yunbao/common/adapter/LiveDataHistoryAdapter.java +++ b/common/src/main/java/com/yunbao/common/adapter/LiveDataHistoryAdapter.java @@ -14,11 +14,6 @@ import androidx.recyclerview.widget.RecyclerView; import com.yunbao.common.R; import com.yunbao.common.bean.LiveDataHistoryBean; -import com.yunbao.common.bean.LiveDataHistoryBean; -import com.yunbao.common.glide.ImgLoader; -import com.yunbao.common.utils.StringUtil; -import com.yunbao.common.utils.WordUtil; -import com.yunbao.common.views.weight.ClipPathCircleImage; import java.util.ArrayList; import java.util.List; @@ -30,12 +25,12 @@ import java.util.List; public class LiveDataHistoryAdapter extends RecyclerView.Adapter { private Context mContext; - private List mList; + private List mList= new ArrayList<>(); private LayoutInflater mInflater; public LiveDataHistoryAdapter(Context context, List list) { mContext = context; - mInflater = LayoutInflater.from(context); + mInflater = LayoutInflater.from(mContext); mList = list; } @@ -59,7 +54,7 @@ public class LiveDataHistoryAdapter extends RecyclerView.Adapter list = new ArrayList<>(); - int mPageCount = 1;//页数 +public class LiveDataHistoryFragment extends Fragment { + protected SmartRefreshLayout mRefreshLayout; + protected RecyclerView mList; + private LiveDataHistoryAdapter mAdapter; + List list = new ArrayList<>(); + private View emptyView; + private Context mContext; + private String mStream; + private int mPageCount = 1;//页数 + + public LiveDataHistoryFragment(Context context,String stream) { + this.mContext =context; + this.mStream = stream; + } + + @Nullable @Override - public View createView(LayoutInflater inflater, ViewGroup container) { + public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { + emptyView = inflater.inflate(R.layout.view_layout_msg,container, false); + ViewUtils.findViewById(emptyView,R.id.imageView, ImageView.class).setImageResource(R.mipmap.ic_addressbook_not_search); + ViewUtils.findViewById(emptyView,R.id.textView, TextView.class).setText(R.string.not_data_message_address_book_list); return inflater.inflate(R.layout.live_data_history_list_fragment, container, false); } @Override - protected void initVariables(Bundle bundle) { - - } - - @Override - protected void initViews(Bundle savedInstanceState, View contentView) { - initView(contentView); + public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { + super.onViewCreated(view, savedInstanceState); + mAdapter = new LiveDataHistoryAdapter(mContext,list); + this.mList = (RecyclerView) view.findViewById(R.id.rc_conversation_list); + this.mRefreshLayout = (SmartRefreshLayout) view.findViewById(R.id.rc_refresh); + LinearLayoutManager layoutManager = new LinearLayoutManager(this.getActivity()); + this.mList.setLayoutManager(layoutManager); + mList.setAdapter(mAdapter); initRefreshView(); - } - - @Override - protected void loadData() { initData(); } - public LiveDataHistoryFragment(Context context) { - this.mContext = context; - } - - private void initView(View view) { - mRefreshLayout = view.findViewById(R.id.rc_refresh); - mList = view.findViewById(R.id.rc_conversation_list); - LinearLayoutManager layoutManager = new LinearLayoutManager(this.getActivity()); - mList.setLayoutManager(layoutManager); - mList.setItemViewCacheSize(0); - } - protected void initRefreshView() { - mRefreshLayout.setNestedScrollingEnabled(false); - mRefreshLayout.setRefreshHeader(new RongRefreshHeader(getContext())); - mRefreshLayout.setRefreshFooter(new RongRefreshHeader(getContext())); - mRefreshLayout.setEnableLoadMore(false); - mRefreshLayout.setOnRefreshListener(new OnRefreshListener() { + this.mRefreshLayout.setNestedScrollingEnabled(false); + this.mRefreshLayout.setRefreshHeader(new RongRefreshHeader(this.getContext())); + this.mRefreshLayout.setRefreshFooter(new RongRefreshHeader(this.getContext())); + this.mRefreshLayout.setOnRefreshListener(new OnRefreshListener() { public void onRefresh(@NonNull RefreshLayout refreshLayout) { mPageCount = 1; initData(); } }); - mRefreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { + this.mRefreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { public void onLoadMore(@NonNull RefreshLayout refreshLayout) { mPageCount++; initData(); } }); - adapter = new LiveDataHistoryAdapter(mContext,list); - mList.setAdapter(adapter); } private void initData() { - CommonHttpUtil.getLiveDataHistoryList("","",new HttpCallback() { + CommonHttpUtil.getLiveDataHistoryList(mStream, String.valueOf(mPageCount),new HttpCallback() { @Override public void onSuccess(int code, String msg, String[] info) { if (code == 0 && info != null) { JSONObject obj = JSON.parseObject(info[0]); - if(){ - + List tempList = JSON.parseArray(obj.getString("data"), LiveDataHistoryBean.class); + if(mPageCount==1){ + list = tempList; + mAdapter.setDataCollection(list); + mRefreshLayout.finishRefresh(true); + }else{ + list.addAll(tempList); + mAdapter.setDataCollection(list); + mRefreshLayout.finishLoadMore(true); } - list = JSON.parseArray(obj.getString("data"), LiveDataHistoryBean.class); - adapter.setDataCollection(list); - mRefreshLayout.finishRefresh(true); } else { ToastUtil.show(msg); } diff --git a/common/src/main/res/layout/live_data_history_item.xml b/common/src/main/res/layout/live_data_history_item.xml index 57a501085..938d9fea7 100644 --- a/common/src/main/res/layout/live_data_history_item.xml +++ b/common/src/main/res/layout/live_data_history_item.xml @@ -4,7 +4,7 @@ xmlns:tools="http://schemas.android.com/tools" android:id="@+id/rc_conversation_item" android:layout_width="match_parent" - android:layout_height="50dp" + android:layout_height="40dp" android:gravity="center_vertical" android:orientation="horizontal"> diff --git a/common/src/main/res/layout/live_data_history_list_fragment.xml b/common/src/main/res/layout/live_data_history_list_fragment.xml index 3f8c0771b..4a7a40765 100644 --- a/common/src/main/res/layout/live_data_history_list_fragment.xml +++ b/common/src/main/res/layout/live_data_history_list_fragment.xml @@ -7,63 +7,64 @@ - + - + - + - + diff --git a/common/src/main/res/values-en-rUS/strings.xml b/common/src/main/res/values-en-rUS/strings.xml index 0d41255bd..1156e0526 100644 --- a/common/src/main/res/values-en-rUS/strings.xml +++ b/common/src/main/res/values-en-rUS/strings.xml @@ -1479,6 +1479,10 @@ Limited ride And limited avatar frame Interaction Broadcaster Rights Live streaming tools - 本場數據 - 禮物記錄 + This data + Gift Record + time + type + name + gain diff --git a/common/src/main/res/values-zh/strings.xml b/common/src/main/res/values-zh/strings.xml index 44796e2e8..aaf3c96c1 100644 --- a/common/src/main/res/values-zh/strings.xml +++ b/common/src/main/res/values-zh/strings.xml @@ -1611,5 +1611,9 @@ 直播工具 本場數據 禮物記錄 + 時間 + 分類 + 名稱 + 收益 diff --git a/common/src/main/res/values/strings.xml b/common/src/main/res/values/strings.xml index 753e45b32..84d1e4fab 100644 --- a/common/src/main/res/values/strings.xml +++ b/common/src/main/res/values/strings.xml @@ -1417,7 +1417,11 @@ Limited ride And limited avatar frame Interaction Broadcaster Rights Live streaming tools - 本場數據 - 禮物記錄 + This data + Gift Record + tory_time + type + name + gain diff --git a/live/src/main/java/com/yunbao/live/activity/LiveSwAnchorActivity.java b/live/src/main/java/com/yunbao/live/activity/LiveSwAnchorActivity.java index 717fefab2..790d26124 100644 --- a/live/src/main/java/com/yunbao/live/activity/LiveSwAnchorActivity.java +++ b/live/src/main/java/com/yunbao/live/activity/LiveSwAnchorActivity.java @@ -735,6 +735,7 @@ public class LiveSwAnchorActivity extends LiveActivity implements LiveFunctionCl bundle.putBoolean(Constants.HAS_GAME, hasGame); bundle.putInt("leave", leave); bundle.putString("liveUid", mLiveUid); + bundle.putString("stream", mStream); bundle.putBoolean("isPk", isDRPK == 1 || PKing || mLivePushViewHolder.isPking()); bundle.putBoolean(Constants.OPEN_FLASH, mLivePushViewHolder != null && mLivePushViewHolder.isFlashOpen()); bundle.putBoolean("isShowZgRed",mLiveAnchorViewHolder.isShowMenuRed()); diff --git a/live/src/main/java/com/yunbao/live/dialog/LiveDataInfoDialog.java b/live/src/main/java/com/yunbao/live/dialog/LiveDataInfoDialog.java index 7a7987c08..80b8b91f0 100644 --- a/live/src/main/java/com/yunbao/live/dialog/LiveDataInfoDialog.java +++ b/live/src/main/java/com/yunbao/live/dialog/LiveDataInfoDialog.java @@ -2,20 +2,9 @@ package com.yunbao.live.dialog; import android.content.Context; import android.graphics.Color; -import android.graphics.drawable.Drawable; -import android.text.Spannable; -import android.text.SpannableString; -import android.text.Spanned; -import android.text.TextPaint; -import android.text.method.LinkMovementMethod; -import android.text.style.ClickableSpan; -import android.text.style.ImageSpan; -import android.util.Log; import android.view.View; -import android.widget.ImageView; import androidx.annotation.NonNull; -import androidx.core.content.ContextCompat; import androidx.fragment.app.Fragment; import androidx.fragment.app.FragmentActivity; import androidx.recyclerview.widget.RecyclerView; @@ -24,10 +13,7 @@ import androidx.viewpager2.widget.ViewPager2; import com.lxj.xpopup.XPopup; import com.yunbao.common.dialog.AbsDialogPopupWindow; -import com.yunbao.common.fragment.AbsMainMessageChatListFragment; -import com.yunbao.common.fragment.BaseFragment; import com.yunbao.common.fragment.LiveDataHistoryFragment; -import com.yunbao.common.fragment.MainMessageChatListFragment; import com.yunbao.common.http.base.HttpCallback; import com.yunbao.common.http.live.LiveNetManager; import com.yunbao.common.utils.AppManager; @@ -56,23 +42,21 @@ public class LiveDataInfoDialog extends AbsDialogPopupWindow { private RecyclerView recyclerView; private LiveDataInfoRecyclerAdapter adapter; private List list; - private String liveUid; + private String mStream; + private String mLiveUid; private ViewPager2 viewPager; private MagicIndicator mIndicator; - private List fragmentList = new ArrayList<>(); + private List fragmentList = new ArrayList<>(); public LiveDataInfoDialog(@NonNull Context context) { super(context); } - public LiveDataInfoDialog(@NonNull Context context, String liveUid) { + public LiveDataInfoDialog(@NonNull Context context, String liveUid, String mStream) { super(context); - this.liveUid = liveUid; - } - - public void setLiveUid(String liveUid) { - this.liveUid = liveUid; + this.mLiveUid = liveUid; + this.mStream = mStream; } @Override @@ -88,14 +72,13 @@ public class LiveDataInfoDialog extends AbsDialogPopupWindow { protected void onCreate() { super.onCreate(); final String[] titles = new String[]{WordUtil.getNewString(R.string.live_data_now_data), WordUtil.getNewString(R.string.live_data_gift_history)}; - fragmentList.add(new LiveDataHistoryFragment(mContext)); - fragmentList.add(new LiveDataHistoryFragment(mContext)); + fragmentList.add(new LiveDataHistoryFragment( mContext,mStream)); + fragmentList.add(new LiveDataHistoryFragment( mContext,mStream)); mIndicator = findViewById(R.id.indicator); viewPager = findViewById(R.id.viewPager); - viewPager.setAdapter(new FragmentStateAdapter((FragmentActivity) AppManager.getInstance().getMainActivity()) { - + viewPager.setAdapter(new FragmentStateAdapter((FragmentActivity) mContext) { @Override public int getItemCount() { return fragmentList.size(); @@ -107,9 +90,20 @@ public class LiveDataInfoDialog extends AbsDialogPopupWindow { return fragmentList.get(i); } }); - viewPager.setCurrentItem(1); + viewPager.setCurrentItem(0); viewPager.setUserInputEnabled(false); + CommonNavigator commonNavigator = getCommonNavigator(titles); + mIndicator.setNavigator(commonNavigator); + ViewPageIndicatorUtils.bind(mIndicator, viewPager, null); + + recyclerView = findViewById(R.id.live_data_list); + adapter = new LiveDataInfoRecyclerAdapter(getContext()); + recyclerView.setAdapter(adapter); + initData(); + } + + private @NonNull CommonNavigator getCommonNavigator(String[] titles) { CommonNavigator commonNavigator = new CommonNavigator(mContext); commonNavigator.setAdjustMode(true); commonNavigator.setAdapter(new CommonNavigatorAdapter() { @@ -121,13 +115,13 @@ public class LiveDataInfoDialog extends AbsDialogPopupWindow { @Override public IPagerTitleView getTitleView(Context context, final int index) { - SimplePagerTitleView simplePagerTitleView = new ColorTransitionPagerTitleView(context); - simplePagerTitleView.setNormalColor(Color.parseColor("#777777")); - simplePagerTitleView.setSelectedColor(Color.parseColor("#333333")); + SimplePagerTitleView simplePagerTitleView = new ColorTransitionPagerTitleView(mContext); + simplePagerTitleView.setNormalColor(Color.parseColor("#C3C3C3")); + simplePagerTitleView.setSelectedColor(Color.parseColor("#FFFFFF")); simplePagerTitleView.setText(titles[index]); simplePagerTitleView.setTextSize(15); simplePagerTitleView.getPaint().setFakeBoldText(true); - simplePagerTitleView.setOnClickListener(new View.OnClickListener() { + simplePagerTitleView.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { if (viewPager != null) { @@ -141,25 +135,15 @@ public class LiveDataInfoDialog extends AbsDialogPopupWindow { @Override public IPagerIndicator getIndicator(Context context) { LinePagerIndicator linePagerIndicator = new LinePagerIndicator(context); - linePagerIndicator.setMode(LinePagerIndicator.MODE_WRAP_CONTENT); - linePagerIndicator.setXOffset(DpUtil.dp2px(5)); - linePagerIndicator.setRoundRadius(DpUtil.dp2px(2)); - linePagerIndicator.setColors(Color.parseColor("#EB6FFF"), Color.parseColor("#FF83C6")); + linePagerIndicator.setMode(LinePagerIndicator.MODE_EXACTLY); + linePagerIndicator.setLineWidth(DpUtil.dp2px(14)); + linePagerIndicator.setLineHeight(DpUtil.dp2px(2)); + linePagerIndicator.setRoundRadius(DpUtil.dp2px(1)); + linePagerIndicator.setColors(Color.parseColor("#FFFFFF"), Color.parseColor("#FFFFFF")); return linePagerIndicator; } }); - mIndicator.setNavigator(commonNavigator); - ViewPageIndicatorUtils.bind(mIndicator, viewPager, new ViewPager2.OnPageChangeCallback() { - @Override - public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { - super.onPageScrolled(position, positionOffset, positionOffsetPixels); - } - }); - - recyclerView = findViewById(R.id.live_data_list); - adapter = new LiveDataInfoRecyclerAdapter(getContext()); - recyclerView.setAdapter(adapter); - initData(); + return commonNavigator; } private void initData() { @@ -174,7 +158,7 @@ public class LiveDataInfoDialog extends AbsDialogPopupWindow { list.add(new LiveDataInfoModel(getContext().getString(R.string.live_data_fan_group_rate), getContext().getString(R.string.live_data_loading))); adapter.setList(list); LiveNetManager.get(getContext()) - .getLiveData(liveUid, new HttpCallback() { + .getLiveData(mLiveUid, new HttpCallback() { @Override public void onSuccess(com.yunbao.common.bean.LiveDataInfoModel data) { list.clear(); diff --git a/live/src/main/java/com/yunbao/live/dialog/LiveInteractionDialogFragment.java b/live/src/main/java/com/yunbao/live/dialog/LiveInteractionDialogFragment.java index fbc443b67..0e609ddb9 100644 --- a/live/src/main/java/com/yunbao/live/dialog/LiveInteractionDialogFragment.java +++ b/live/src/main/java/com/yunbao/live/dialog/LiveInteractionDialogFragment.java @@ -53,6 +53,7 @@ public class LiveInteractionDialogFragment extends AbsDialogFragment implements private String liveUid; private boolean isInteraction; + private String mStream; // boolean isRy = false; private boolean isShowRed; @@ -98,6 +99,7 @@ public class LiveInteractionDialogFragment extends AbsDialogFragment implements liveUid = bundle.getString("liveUid"); isShowRed = bundle.getBoolean("isShowZgRed"); isInteraction = bundle.getBoolean("isInteraction",false); + mStream= bundle.getString("stream"); } equityLayout= (LinearLayout) findViewById(R.id.equityLayout); interactionLayout= (LinearLayout) findViewById(R.id.interactionLayout); @@ -178,7 +180,7 @@ public class LiveInteractionDialogFragment extends AbsDialogFragment implements mFunctionClickListener.onClick(LIVE_FUNC_MIC); }else if(id == R.id.live_tool_live_data) { //主播数据 - new LiveDataInfoDialog(mContext, liveUid).showDialog(); + new LiveDataInfoDialog(mContext,liveUid,mStream).showDialog(); dismiss(); }else if (id == R.id.live_tool_robot) { mFunctionClickListener.onClick(LIVE_ROBOT); @@ -188,7 +190,7 @@ public class LiveInteractionDialogFragment extends AbsDialogFragment implements dismiss(); } else if (id == R.id.broadcast_data) { //主播数据 - new LiveDataInfoDialog(mContext, liveUid).showDialog(); + new LiveDataInfoDialog(mContext,liveUid, mStream).showDialog(); dismiss(); } else if (id == R.id.anchor_task) { //主播任务 @@ -262,8 +264,6 @@ public class LiveInteractionDialogFragment extends AbsDialogFragment implements case WHAT_ANCHOR_LIVE_TIME: break; - - } } diff --git a/live/src/main/java/com/yunbao/live/dialog/LiveNewFunctionDialogFragment.java b/live/src/main/java/com/yunbao/live/dialog/LiveNewFunctionDialogFragment.java index 863c0e2c1..2ac8de835 100644 --- a/live/src/main/java/com/yunbao/live/dialog/LiveNewFunctionDialogFragment.java +++ b/live/src/main/java/com/yunbao/live/dialog/LiveNewFunctionDialogFragment.java @@ -204,7 +204,7 @@ public class LiveNewFunctionDialogFragment extends AbsDialogFragment implements dismiss(); } else if (id == R.id.broadcast_data) { //主播数据 - new LiveDataInfoDialog(mContext, liveUid).showDialog(); + new LiveDataInfoDialog(mContext, liveUid,"").showDialog(); dismiss(); } else if (id == R.id.anchor_task) { //主播任务 @@ -212,7 +212,6 @@ public class LiveNewFunctionDialogFragment extends AbsDialogFragment implements taskDialog.setLiveUid(liveUid); taskDialog.updateLiveTimer(mAnchorLiveTime); taskDialog.showDialog(); - } else if (id == R.id.live_tool_call_me) { new LiveAnchorEditCallMeDialog(mContext).setLiveUid(liveUid).showDialog(); } else if (id == R.id.live_tool_anchor_say) { diff --git a/live/src/main/res/layout/dialog_live_data.xml b/live/src/main/res/layout/dialog_live_data.xml index b31ba7282..df9cf5228 100644 --- a/live/src/main/res/layout/dialog_live_data.xml +++ b/live/src/main/res/layout/dialog_live_data.xml @@ -3,7 +3,7 @@ xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" - android:layout_height="wrap_content" + android:layout_height="500dp" android:background="#000002"> @@ -76,6 +77,7 @@