Merge branch 'master' into dev_live_new_user_icon
This commit is contained in:
commit
5444b309e0
@ -32,9 +32,9 @@ import static com.yunbao.common.CommonAppContext.isReady;
|
|||||||
*/
|
*/
|
||||||
public class RongcloudIMManager {
|
public class RongcloudIMManager {
|
||||||
//融云开发者平台注册app唯一识别符
|
//融云开发者平台注册app唯一识别符
|
||||||
// public static final String RONG_IM_KEY = "uwd1c0sxu1p71";
|
public static final String RONG_IM_KEY = "uwd1c0sxu1p71";
|
||||||
//测试环境
|
//测试环境
|
||||||
public static final String RONG_IM_KEY = "pvxdm17jpd3hr";
|
// public static final String RONG_IM_KEY = "pvxdm17jpd3hr";
|
||||||
|
|
||||||
private static final String CLASSNAME = "RongcloudIMManager";
|
private static final String CLASSNAME = "RongcloudIMManager";
|
||||||
|
|
||||||
|
@ -29,7 +29,6 @@ import com.yunbao.common.bean.IMLoginModel;
|
|||||||
import com.yunbao.common.bean.UserBean;
|
import com.yunbao.common.bean.UserBean;
|
||||||
import com.yunbao.common.dialog.EffectsSettingsDialog;
|
import com.yunbao.common.dialog.EffectsSettingsDialog;
|
||||||
import com.yunbao.common.dialog.LiveChargeDialogFragment;
|
import com.yunbao.common.dialog.LiveChargeDialogFragment;
|
||||||
import com.yunbao.live.dialog.LiveTotalDialog;
|
|
||||||
import com.yunbao.common.http.CommonHttpConsts;
|
import com.yunbao.common.http.CommonHttpConsts;
|
||||||
import com.yunbao.common.http.CommonHttpUtil;
|
import com.yunbao.common.http.CommonHttpUtil;
|
||||||
import com.yunbao.common.http.HttpCallback;
|
import com.yunbao.common.http.HttpCallback;
|
||||||
@ -52,6 +51,7 @@ import com.yunbao.live.dialog.LiveGiftDialogFragment;
|
|||||||
import com.yunbao.live.dialog.LiveGuardDialogFragment;
|
import com.yunbao.live.dialog.LiveGuardDialogFragment;
|
||||||
import com.yunbao.live.dialog.LiveHDDialogFragment;
|
import com.yunbao.live.dialog.LiveHDDialogFragment;
|
||||||
import com.yunbao.live.dialog.LiveMicUserDialogFragment;
|
import com.yunbao.live.dialog.LiveMicUserDialogFragment;
|
||||||
|
import com.yunbao.live.dialog.LiveTotalDialog;
|
||||||
import com.yunbao.live.dialog.LiveWishListDialogFragment4Audience;
|
import com.yunbao.live.dialog.LiveWishListDialogFragment4Audience;
|
||||||
import com.yunbao.live.dialog.SidebarLiveAudience;
|
import com.yunbao.live.dialog.SidebarLiveAudience;
|
||||||
import com.yunbao.live.event.LinkMicTxAccEvent;
|
import com.yunbao.live.event.LinkMicTxAccEvent;
|
||||||
@ -63,6 +63,7 @@ import com.yunbao.live.presenter.LiveRoomCheckLivePresenter;
|
|||||||
import com.yunbao.live.socket.SocketSendBean;
|
import com.yunbao.live.socket.SocketSendBean;
|
||||||
import com.yunbao.live.utils.LiveImDeletUtil;
|
import com.yunbao.live.utils.LiveImDeletUtil;
|
||||||
import com.yunbao.live.views.LiveRoomPlayViewHolder;
|
import com.yunbao.live.views.LiveRoomPlayViewHolder;
|
||||||
|
import com.yunbao.live.views.LoadingView;
|
||||||
import com.yunbao.live.views.PortraitLiveManager;
|
import com.yunbao.live.views.PortraitLiveManager;
|
||||||
|
|
||||||
import org.greenrobot.eventbus.Subscribe;
|
import org.greenrobot.eventbus.Subscribe;
|
||||||
@ -119,6 +120,7 @@ public class LiveAudienceActivity extends LiveActivity {
|
|||||||
private int mLastPosition = -1;
|
private int mLastPosition = -1;
|
||||||
|
|
||||||
private ViewGroup mViewGroup;
|
private ViewGroup mViewGroup;
|
||||||
|
private LoadingView loadingView;
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -147,7 +149,11 @@ public class LiveAudienceActivity extends LiveActivity {
|
|||||||
mLiveBean = intent.getParcelableExtra(Constants.LIVE_BEAN);
|
mLiveBean = intent.getParcelableExtra(Constants.LIVE_BEAN);
|
||||||
mLiveUid = mLiveBean.getUid();
|
mLiveUid = mLiveBean.getUid();
|
||||||
mStream = mLiveBean.getStream();
|
mStream = mLiveBean.getStream();
|
||||||
|
if (getIntent().getIntExtra("isry", 0) == 1) {
|
||||||
|
isRy = true;
|
||||||
|
} else {
|
||||||
|
isRy = false;
|
||||||
|
}
|
||||||
setVolumeControlStream(AudioManager.STREAM_MUSIC);
|
setVolumeControlStream(AudioManager.STREAM_MUSIC);
|
||||||
manager = new PortraitLiveManager(this, intent);
|
manager = new PortraitLiveManager(this, intent);
|
||||||
initView();
|
initView();
|
||||||
@ -160,7 +166,8 @@ public class LiveAudienceActivity extends LiveActivity {
|
|||||||
private void initView() {
|
private void initView() {
|
||||||
// 竖直滑动 ViewPager
|
// 竖直滑动 ViewPager
|
||||||
verticalViewPager = findViewById(R.id.view_pager);
|
verticalViewPager = findViewById(R.id.view_pager);
|
||||||
|
loadingView = findViewById(R.id.loading);
|
||||||
|
loadingView.show();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setBackIndex(int backIndex) {
|
public void setBackIndex(int backIndex) {
|
||||||
@ -202,6 +209,7 @@ public class LiveAudienceActivity extends LiveActivity {
|
|||||||
}
|
}
|
||||||
mPagerAdapter = new VerticalPagerAdapter(itemModelList, mContext);
|
mPagerAdapter = new VerticalPagerAdapter(itemModelList, mContext);
|
||||||
verticalViewPager.setAdapter(mPagerAdapter);
|
verticalViewPager.setAdapter(mPagerAdapter);
|
||||||
|
loadingView.hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -298,6 +306,7 @@ public class LiveAudienceActivity extends LiveActivity {
|
|||||||
mLiveUid = mLiveBean.getUid();
|
mLiveUid = mLiveBean.getUid();
|
||||||
mStream = mLiveBean.getStream();
|
mStream = mLiveBean.getStream();
|
||||||
mAncherName = liveBean.getUserNiceName();
|
mAncherName = liveBean.getUserNiceName();
|
||||||
|
|
||||||
Log.e("收到socket--->", "mLiveUid--------------------------->" + mLiveUid);
|
Log.e("收到socket--->", "mLiveUid--------------------------->" + mLiveUid);
|
||||||
//加载当前页面数据
|
//加载当前页面数据
|
||||||
View rootView = manager.getRootView();
|
View rootView = manager.getRootView();
|
||||||
|
@ -3,12 +3,9 @@ package com.yunbao.live.adapter;
|
|||||||
import android.annotation.SuppressLint;
|
import android.annotation.SuppressLint;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import androidx.annotation.NonNull;
|
|
||||||
import androidx.recyclerview.widget.GridLayoutManager;
|
|
||||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
|
||||||
import androidx.recyclerview.widget.RecyclerView;
|
|
||||||
import android.text.Spannable;
|
import android.text.Spannable;
|
||||||
import android.text.SpannableStringBuilder;
|
import android.text.SpannableStringBuilder;
|
||||||
|
import android.text.TextUtils;
|
||||||
import android.text.style.ForegroundColorSpan;
|
import android.text.style.ForegroundColorSpan;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
@ -17,6 +14,11 @@ import android.widget.ImageView;
|
|||||||
import android.widget.LinearLayout;
|
import android.widget.LinearLayout;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
|
import androidx.annotation.NonNull;
|
||||||
|
import androidx.recyclerview.widget.GridLayoutManager;
|
||||||
|
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||||
|
import androidx.recyclerview.widget.RecyclerView;
|
||||||
|
|
||||||
import com.makeramen.roundedimageview.RoundedImageView;
|
import com.makeramen.roundedimageview.RoundedImageView;
|
||||||
import com.yunbao.common.CommonAppConfig;
|
import com.yunbao.common.CommonAppConfig;
|
||||||
import com.yunbao.common.Constants;
|
import com.yunbao.common.Constants;
|
||||||
@ -278,23 +280,46 @@ public class LiveChatAdapter extends RecyclerView.Adapter {
|
|||||||
mTextView.setText(builder);
|
mTextView.setText(builder);
|
||||||
} else if (bean.getType() == -10) {
|
} else if (bean.getType() == -10) {
|
||||||
mBg.setBackground(null);
|
mBg.setBackground(null);
|
||||||
// mTextView.setVisibility(View.GONE);
|
|
||||||
} else if (bean.getType() == LiveChatBean.SYSTEM) {
|
} else if (bean.getType() == LiveChatBean.SYSTEM) {
|
||||||
|
boolean isContains = false;
|
||||||
|
for (LiveChatBean model : mList) {
|
||||||
|
if (!TextUtils.isEmpty(model.getContent())&&model.getContent().contains("堅決維護青少年群體精神文明健康")) {
|
||||||
|
isContains = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (isContains) {
|
||||||
mTextView.setTextColor(0xffffffff);
|
mTextView.setTextColor(0xffffffff);
|
||||||
mBg.setBackground(null);
|
mBg.setBackground(null);
|
||||||
mTextView.setText(bean.getContent());
|
mTextView.setText(bean.getContent());
|
||||||
|
}
|
||||||
} else if (bean.getType() == -1) {//自动消息,关注
|
} else if (bean.getType() == -1) {//自动消息,关注
|
||||||
|
boolean isContains = false;
|
||||||
|
for (LiveChatBean model : mList) {
|
||||||
|
if (bean.getType() == -1) {
|
||||||
|
isContains = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (isContains) {
|
||||||
mBg.setBackground(null);
|
mBg.setBackground(null);
|
||||||
mTextView.setVisibility(View.GONE);
|
mTextView.setVisibility(View.GONE);
|
||||||
view_follow.setVisibility(View.VISIBLE);
|
view_follow.setVisibility(View.VISIBLE);
|
||||||
ImgLoader.display(mContext, bean.getId(), avatar);
|
ImgLoader.display(mContext, bean.getId(), avatar);
|
||||||
bean.setHeart(position);
|
bean.setHeart(position);
|
||||||
|
}
|
||||||
|
|
||||||
} else if (bean.getType() == -2) {//自动消息,点击发言
|
} else if (bean.getType() == -2) {//自动消息,点击发言
|
||||||
|
boolean isContains = false;
|
||||||
|
for (LiveChatBean model : mList) {
|
||||||
|
if (bean.getType() == -2) {
|
||||||
|
isContains = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (isContains) {
|
||||||
mBg.setBackgroundResource(R.drawable.bg_chat_automatic_item);
|
mBg.setBackgroundResource(R.drawable.bg_chat_automatic_item);
|
||||||
mTextView.setText(R.string.automatic_chat);
|
mTextView.setText(R.string.automatic_chat);
|
||||||
bean.setHeart(position);
|
bean.setHeart(position);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
// LoadDian9TuUtil.loadDian9Tu(mContext, mBg, "https://qny.shayucm.com/huangdi-new-qipao.png");
|
|
||||||
if (bean.getBubble() != null && !bean.getBubble().equals("")) {
|
if (bean.getBubble() != null && !bean.getBubble().equals("")) {
|
||||||
//加载.9图聊天气泡
|
//加载.9图聊天气泡
|
||||||
LoadDian9TuUtil.loadDian9Tu(mContext, mBg, bean.getBubble(), 1);
|
LoadDian9TuUtil.loadDian9Tu(mContext, mBg, bean.getBubble(), 1);
|
||||||
@ -306,23 +331,7 @@ public class LiveChatAdapter extends RecyclerView.Adapter {
|
|||||||
} else {
|
} else {
|
||||||
mTextView.setTextColor(0xffffffff);
|
mTextView.setTextColor(0xffffffff);
|
||||||
}
|
}
|
||||||
// Log.e("tag",bean.getContent().length()+"");
|
|
||||||
// RecyclerView.LayoutParams linearParams = (RecyclerView.LayoutParams) mBg.getLayoutParams();
|
|
||||||
// linearParams.height = RecyclerView.LayoutParams.WRAP_CONTENT;
|
|
||||||
// // 控件的宽强制设成40
|
|
||||||
// mBg.setLayoutParams(linearParams); //使设置好的布局参数应用到控件
|
|
||||||
// if(bean.getContent().length()<=7) {
|
|
||||||
// RecyclerView.LayoutParams linearParams1 = (RecyclerView.LayoutParams) mBg.getLayoutParams();
|
|
||||||
// linearParams1.height = mContext.getResources().getDimensionPixelOffset(R.dimen.live_chat1);
|
|
||||||
// // 控件的宽强制设成40
|
|
||||||
// mBg.setLayoutParams(linearParams1); //使设置好的布局参数应用到控件
|
|
||||||
// }
|
|
||||||
// else if(bean.getContent().length()<=20){
|
|
||||||
// RecyclerView.LayoutParams linearParams = (RecyclerView.LayoutParams) mBg.getLayoutParams();
|
|
||||||
// linearParams.height = mContext.getResources().getDimensionPixelOffset(R.dimen.live_chat2);
|
|
||||||
// // 控件的宽强制设成40
|
|
||||||
// mBg.setLayoutParams(linearParams); //使设置好的布局参数应用到控件
|
|
||||||
// }
|
|
||||||
LiveTextRender.render(mContext, mTextView, bean);
|
LiveTextRender.render(mContext, mTextView, bean);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -5,7 +5,6 @@ import android.os.Parcelable;
|
|||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
|
|
||||||
import com.alibaba.fastjson.annotation.JSONField;
|
import com.alibaba.fastjson.annotation.JSONField;
|
||||||
import com.google.gson.annotations.SerializedName;
|
|
||||||
import com.yunbao.common.bean.WeekListBean;
|
import com.yunbao.common.bean.WeekListBean;
|
||||||
import com.yunbao.common.utils.WordUtil;
|
import com.yunbao.common.utils.WordUtil;
|
||||||
import com.yunbao.live.R;
|
import com.yunbao.live.R;
|
||||||
@ -203,6 +202,7 @@ public class LiveBean implements Parcelable {
|
|||||||
|
|
||||||
@JSONField(name = "user_nicename")
|
@JSONField(name = "user_nicename")
|
||||||
public String getUserNiceName() {
|
public String getUserNiceName() {
|
||||||
|
|
||||||
return userNiceName;
|
return userNiceName;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -328,6 +328,7 @@ public class LiveBean implements Parcelable {
|
|||||||
public String getIslive() {
|
public String getIslive() {
|
||||||
return islive;
|
return islive;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setIslive(String islive) {
|
public void setIslive(String islive) {
|
||||||
this.islive = islive;
|
this.islive = islive;
|
||||||
}
|
}
|
||||||
|
@ -1,8 +1,10 @@
|
|||||||
package com.yunbao.live.dialog;
|
package com.yunbao.live.dialog;
|
||||||
|
|
||||||
|
import android.os.Build;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.view.Display;
|
import android.view.Display;
|
||||||
import android.view.Gravity;
|
import android.view.Gravity;
|
||||||
|
import android.view.View;
|
||||||
import android.view.Window;
|
import android.view.Window;
|
||||||
import android.view.WindowManager;
|
import android.view.WindowManager;
|
||||||
import android.widget.ImageView;
|
import android.widget.ImageView;
|
||||||
@ -134,7 +136,12 @@ public class SidebarLiveAudience extends AbsDialogFragment {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void setWindowAttributes(Window window) {
|
protected void setWindowAttributes(Window window) {
|
||||||
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
||||||
|
window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
|
||||||
|
window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);
|
||||||
|
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
|
||||||
|
window.setStatusBarColor(0);
|
||||||
|
}
|
||||||
window.setWindowAnimations(com.yunbao.common.R.style.RightLeftToAnim);
|
window.setWindowAnimations(com.yunbao.common.R.style.RightLeftToAnim);
|
||||||
WindowManager.LayoutParams params = window.getAttributes();
|
WindowManager.LayoutParams params = window.getAttributes();
|
||||||
params.width = DeviceUtils.getScreenWidth(getActivity()) / 3 * 2;
|
params.width = DeviceUtils.getScreenWidth(getActivity()) / 3 * 2;
|
||||||
@ -143,6 +150,8 @@ public class SidebarLiveAudience extends AbsDialogFragment {
|
|||||||
window.setAttributes(params);
|
window.setAttributes(params);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 前往直播间
|
* 前往直播间
|
||||||
*/
|
*/
|
||||||
|
@ -31,6 +31,8 @@ public class LiveRoomCheckLivePresenter {
|
|||||||
private LiveBean mLiveBean;
|
private LiveBean mLiveBean;
|
||||||
private ActionListener mActionListener;
|
private ActionListener mActionListener;
|
||||||
private int mLiveSdk;
|
private int mLiveSdk;
|
||||||
|
//搜索页面不提示密码
|
||||||
|
public static boolean isSearch = false;
|
||||||
|
|
||||||
public LiveRoomCheckLivePresenter(Context context, ActionListener actionListener) {
|
public LiveRoomCheckLivePresenter(Context context, ActionListener actionListener) {
|
||||||
mContext = context;
|
mContext = context;
|
||||||
@ -46,7 +48,6 @@ public class LiveRoomCheckLivePresenter {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private HttpCallback mCheckLiveCallback = new HttpCallback() {
|
private HttpCallback mCheckLiveCallback = new HttpCallback() {
|
||||||
@Override
|
@Override
|
||||||
public void onSuccess(int code, String msg, String[] info) {
|
public void onSuccess(int code, String msg, String[] info) {
|
||||||
@ -101,6 +102,7 @@ public class LiveRoomCheckLivePresenter {
|
|||||||
* 前往密码房间
|
* 前往密码房间
|
||||||
*/
|
*/
|
||||||
private void forwardPwdRoom() {
|
private void forwardPwdRoom() {
|
||||||
|
if (!isSearch) {
|
||||||
DialogUitl.showSimpleInputDialog(mContext, WordUtil.getString(R.string.live_input_password), DialogUitl.INPUT_TYPE_NUMBER_PASSWORD, new DialogUitl.SimpleCallback() {
|
DialogUitl.showSimpleInputDialog(mContext, WordUtil.getString(R.string.live_input_password), DialogUitl.INPUT_TYPE_NUMBER_PASSWORD, new DialogUitl.SimpleCallback() {
|
||||||
@Override
|
@Override
|
||||||
public void onConfirmClick(Dialog dialog, String content) {
|
public void onConfirmClick(Dialog dialog, String content) {
|
||||||
@ -117,6 +119,11 @@ public class LiveRoomCheckLivePresenter {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
}else {
|
||||||
|
enterLiveRoom();
|
||||||
|
isSearch = false;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -45,7 +45,6 @@ import com.yunbao.common.CommonAppConfig;
|
|||||||
import com.yunbao.common.Constants;
|
import com.yunbao.common.Constants;
|
||||||
import com.yunbao.common.bean.LevelBean;
|
import com.yunbao.common.bean.LevelBean;
|
||||||
import com.yunbao.common.bean.UserBean;
|
import com.yunbao.common.bean.UserBean;
|
||||||
import com.yunbao.live.event.LiveAudienceEvent;
|
|
||||||
import com.yunbao.common.glide.ImgLoader;
|
import com.yunbao.common.glide.ImgLoader;
|
||||||
import com.yunbao.common.http.CommonHttpConsts;
|
import com.yunbao.common.http.CommonHttpConsts;
|
||||||
import com.yunbao.common.http.CommonHttpUtil;
|
import com.yunbao.common.http.CommonHttpUtil;
|
||||||
@ -86,6 +85,7 @@ import com.yunbao.live.custom.TopGradual;
|
|||||||
import com.yunbao.live.dialog.LiveFansMedalDialogFragment;
|
import com.yunbao.live.dialog.LiveFansMedalDialogFragment;
|
||||||
import com.yunbao.live.dialog.LiveHDDialogFragment;
|
import com.yunbao.live.dialog.LiveHDDialogFragment;
|
||||||
import com.yunbao.live.dialog.LiveUserDialogFragment;
|
import com.yunbao.live.dialog.LiveUserDialogFragment;
|
||||||
|
import com.yunbao.live.event.LiveAudienceEvent;
|
||||||
import com.yunbao.live.http.LiveHttpConsts;
|
import com.yunbao.live.http.LiveHttpConsts;
|
||||||
import com.yunbao.live.http.LiveHttpUtil;
|
import com.yunbao.live.http.LiveHttpUtil;
|
||||||
import com.yunbao.live.presenter.LiveDanmuPresenter;
|
import com.yunbao.live.presenter.LiveDanmuPresenter;
|
||||||
@ -1025,7 +1025,11 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis
|
|||||||
*/
|
*/
|
||||||
public void setName(String name) {
|
public void setName(String name) {
|
||||||
if (mName != null) {
|
if (mName != null) {
|
||||||
|
|
||||||
mNameText = name;
|
mNameText = name;
|
||||||
|
if (name.length() > 4) {
|
||||||
|
name = name.substring(0, 4) + "...";
|
||||||
|
}
|
||||||
mName.setText(name);
|
mName.setText(name);
|
||||||
EventBus.getDefault().post("name_true");
|
EventBus.getDefault().post("name_true");
|
||||||
}
|
}
|
||||||
|
61
live/src/main/java/com/yunbao/live/views/LoadingView.java
Normal file
61
live/src/main/java/com/yunbao/live/views/LoadingView.java
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
package com.yunbao.live.views;
|
||||||
|
|
||||||
|
import android.content.Context;
|
||||||
|
import android.graphics.drawable.AnimationDrawable;
|
||||||
|
import android.util.AttributeSet;
|
||||||
|
import android.view.LayoutInflater;
|
||||||
|
import android.view.View;
|
||||||
|
import android.widget.FrameLayout;
|
||||||
|
import android.widget.ImageView;
|
||||||
|
|
||||||
|
import androidx.annotation.NonNull;
|
||||||
|
import androidx.annotation.Nullable;
|
||||||
|
|
||||||
|
import com.yunbao.live.R;
|
||||||
|
|
||||||
|
|
||||||
|
public class LoadingView extends FrameLayout {
|
||||||
|
|
||||||
|
private Context mContext;
|
||||||
|
private ImageView mIvLoading;
|
||||||
|
|
||||||
|
public LoadingView(@NonNull Context context) {
|
||||||
|
super(context);
|
||||||
|
init(context);
|
||||||
|
}
|
||||||
|
|
||||||
|
public LoadingView(@NonNull Context context, @Nullable AttributeSet attrs) {
|
||||||
|
super(context, attrs);
|
||||||
|
init(context);
|
||||||
|
}
|
||||||
|
|
||||||
|
public LoadingView(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
|
||||||
|
super(context, attrs, defStyleAttr);
|
||||||
|
init(context);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void init(Context context) {
|
||||||
|
this.mContext = context;
|
||||||
|
View view = LayoutInflater.from(mContext).inflate(R.layout.layout_portrait_live_item, this, true);
|
||||||
|
mIvLoading = view.findViewById(R.id.iv_loading);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public void show() {
|
||||||
|
// 加载动画
|
||||||
|
ImageView ivLoading = mIvLoading.findViewById(R.id.iv_loading);
|
||||||
|
AnimationDrawable frameAnimation = (AnimationDrawable) ivLoading.getBackground();
|
||||||
|
frameAnimation.start();
|
||||||
|
|
||||||
|
setVisibility(VISIBLE);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void hide() {
|
||||||
|
// 加载动画
|
||||||
|
ImageView ivLoading = mIvLoading.findViewById(R.id.iv_loading);
|
||||||
|
AnimationDrawable frameAnimation = (AnimationDrawable) ivLoading.getBackground();
|
||||||
|
frameAnimation.stop();
|
||||||
|
setVisibility(GONE);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -9,5 +9,10 @@
|
|||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:overScrollMode="never" />
|
android:overScrollMode="never" />
|
||||||
|
|
||||||
|
<com.yunbao.live.views.LoadingView
|
||||||
|
android:id="@+id/loading"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:visibility="visible" />
|
||||||
|
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
@ -27,7 +27,7 @@
|
|||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
android:paddingStart="8dp"
|
android:paddingStart="8dp"
|
||||||
android:paddingTop="56dp"
|
android:paddingTop="10dp"
|
||||||
android:paddingEnd="8dp">
|
android:paddingEnd="8dp">
|
||||||
|
|
||||||
|
|
||||||
|
@ -303,7 +303,7 @@ public class MainActivity extends AbsActivity implements MainAppBarLayoutListene
|
|||||||
Log.d(TAG, token);
|
Log.d(TAG, token);
|
||||||
PushManager.getInstance()
|
PushManager.getInstance()
|
||||||
.onReceiveToken(MainActivity.this, PushType.GOOGLE_FCM, token);
|
.onReceiveToken(MainActivity.this, PushType.GOOGLE_FCM, token);
|
||||||
Toast.makeText(MainActivity.this, token, Toast.LENGTH_SHORT).show();
|
// Toast.makeText(MainActivity.this, token, Toast.LENGTH_SHORT).show();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
boolean showInvite = getIntent().getBooleanExtra(Constants.SHOW_INVITE, false);
|
boolean showInvite = getIntent().getBooleanExtra(Constants.SHOW_INVITE, false);
|
||||||
|
@ -18,6 +18,7 @@ import androidx.fragment.app.FragmentTransaction;
|
|||||||
|
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.yunbao.common.activity.AbsActivity;
|
import com.yunbao.common.activity.AbsActivity;
|
||||||
|
import com.yunbao.common.event.CloseEvent;
|
||||||
import com.yunbao.common.http.HttpCallback;
|
import com.yunbao.common.http.HttpCallback;
|
||||||
import com.yunbao.common.manager.SearchHistoryRecordManager;
|
import com.yunbao.common.manager.SearchHistoryRecordManager;
|
||||||
import com.yunbao.common.utils.Bus;
|
import com.yunbao.common.utils.Bus;
|
||||||
@ -27,7 +28,6 @@ import com.yunbao.live.bean.LiveBean;
|
|||||||
import com.yunbao.live.http.LiveHttpUtil;
|
import com.yunbao.live.http.LiveHttpUtil;
|
||||||
import com.yunbao.live.presenter.LiveRoomCheckLivePresenter;
|
import com.yunbao.live.presenter.LiveRoomCheckLivePresenter;
|
||||||
import com.yunbao.main.R;
|
import com.yunbao.main.R;
|
||||||
import com.yunbao.common.event.CloseEvent;
|
|
||||||
import com.yunbao.main.event.JumpUserHomeEvent;
|
import com.yunbao.main.event.JumpUserHomeEvent;
|
||||||
import com.yunbao.main.fragment.SearchRecommendFragment;
|
import com.yunbao.main.fragment.SearchRecommendFragment;
|
||||||
import com.yunbao.main.fragment.SearchResultsFragment;
|
import com.yunbao.main.fragment.SearchResultsFragment;
|
||||||
@ -175,16 +175,13 @@ public class SearchActivity extends AbsActivity {
|
|||||||
if (code == 0 && info.length > 0) {
|
if (code == 0 && info.length > 0) {
|
||||||
LiveBean liveBean = JSON.parseObject(info[0], LiveBean.class);
|
LiveBean liveBean = JSON.parseObject(info[0], LiveBean.class);
|
||||||
|
|
||||||
|
LiveRoomCheckLivePresenter.isSearch = true;
|
||||||
LiveRoomCheckLivePresenter mCheckLivePresenter = new LiveRoomCheckLivePresenter(mContext, new LiveRoomCheckLivePresenter.ActionListener() {
|
LiveRoomCheckLivePresenter mCheckLivePresenter = new LiveRoomCheckLivePresenter(mContext, (liveBean1, liveType, liveTypeVal, liveSdk) -> {
|
||||||
@Override
|
if (liveBean1 == null) {
|
||||||
public void onLiveRoomChanged(LiveBean liveBean, int liveType, int liveTypeVal, int liveSdk) {
|
|
||||||
if (liveBean == null) {
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
LiveAudienceActivity.forward(mContext, liveBean, liveType, liveTypeVal, "", 0, liveSdk);
|
LiveAudienceActivity.forward(mContext, liveBean1, liveType, liveTypeVal, "", 0, liveSdk);
|
||||||
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
mCheckLivePresenter.checkLive(liveBean);
|
mCheckLivePresenter.checkLive(liveBean);
|
||||||
|
Loading…
Reference in New Issue
Block a user