add[直播数据-送礼列表]

This commit is contained in:
Martin
2024-08-15 18:28:08 +08:00
parent af8ac39e9c
commit 06bbca07a1
13 changed files with 172 additions and 165 deletions

View File

@@ -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());

View File

@@ -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<LiveDataInfoModel> list;
private String liveUid;
private String mStream;
private String mLiveUid;
private ViewPager2 viewPager;
private MagicIndicator mIndicator;
private List<BaseFragment> fragmentList = new ArrayList<>();
private List<Fragment> 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<com.yunbao.common.bean.LiveDataInfoModel>() {
.getLiveData(mLiveUid, new HttpCallback<com.yunbao.common.bean.LiveDataInfoModel>() {
@Override
public void onSuccess(com.yunbao.common.bean.LiveDataInfoModel data) {
list.clear();

View File

@@ -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;
}
}

View File

@@ -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) {

View File

@@ -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">
<LinearLayout
@@ -36,6 +36,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:visibility="gone"
android:gravity="center"
android:orientation="horizontal">
@@ -76,6 +77,7 @@
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/live_data_list"
android:layout_width="match_parent"
android:visibility="gone"
android:layout_height="match_parent"
android:layout_marginTop="10dp"
android:layout_marginBottom="15dp"