diff --git a/app/accompany/debug/app-accompany-debug.apk b/app/accompany/debug/app-accompany-debug.apk new file mode 100644 index 000000000..02d78288c Binary files /dev/null and b/app/accompany/debug/app-accompany-debug.apk differ diff --git a/app/accompany/debug/output.json b/app/accompany/debug/output.json new file mode 100644 index 000000000..83f8a099b --- /dev/null +++ b/app/accompany/debug/output.json @@ -0,0 +1 @@ +[{"outputType":{"type":"APK"},"apkInfo":{"type":"MAIN","splits":[],"versionCode":1,"versionName":"1.0.0","enabled":true,"outputFile":"app-accompany-debug.apk","fullName":"accompanyDebug","baseName":"accompany-debug"},"path":"app-accompany-debug.apk","properties":{}}] \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index d682298cc..402f9a1e8 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -150,7 +150,7 @@ android { } debug { - buildConfigField "String", "BASE_URL", "\"http://120.79.211.243/\""//120.79.211.243 192.168.1.105:8079 + buildConfigField "String", "BASE_URL", "\"http://120.79.211.243/\""//120.79.211.243 192.168.1.105:8079 192.168.10.5:8082 // buildConfigField "String", "BASE_URL", "\"http://apibeta.qxjiaoyou.com/\"" buildConfigField "String", "BASE_URL_DEBUG", "BASE_URL" buildConfigField "String", "BASE_URL_STAGING", "\"https://preview.qxjiaoyou.com/\"" @@ -159,7 +159,7 @@ android { minifyEnabled false shrinkResources false signingConfig signingConfigs.v1 - proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 12183a49f..438bb0d14 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -470,7 +470,7 @@ @@ -1065,6 +1065,9 @@ + @@ -1088,6 +1091,9 @@ + diff --git a/app/src/main/java/com/yizhuan/erban/audio/view/BottleLayout.java b/app/src/main/java/com/yizhuan/erban/audio/view/BottleLayout.java index 82fc123f0..d8afc3557 100644 --- a/app/src/main/java/com/yizhuan/erban/audio/view/BottleLayout.java +++ b/app/src/main/java/com/yizhuan/erban/audio/view/BottleLayout.java @@ -381,7 +381,7 @@ public class BottleLayout extends FrameLayout { showNick = showNick.substring(0, 5) + "…"; } tvNick.setText(showNick); - ivGender.setImageResource(info.getGender() == 1 ? R.drawable.ic_male : R.drawable.ic_female); + ivGender.setImageResource(info.getGender() == 1 ? R.drawable.ic_gender_male : R.drawable.ic_gender_female); stvConstellation.setText(TimeUtils.msToConstellation(info.getBirth())); String location = info.getLocation(); if (TextUtils.isEmpty(location)) { diff --git a/app/src/main/java/com/yizhuan/erban/avroom/activity/AVRoomActivity.java b/app/src/main/java/com/yizhuan/erban/avroom/activity/AVRoomActivity.java index 6217298d9..895096895 100644 --- a/app/src/main/java/com/yizhuan/erban/avroom/activity/AVRoomActivity.java +++ b/app/src/main/java/com/yizhuan/erban/avroom/activity/AVRoomActivity.java @@ -774,7 +774,7 @@ public class AVRoomActivity extends BaseMvpActivity { resultBinding.tvNickRight.setText(userInfo.getNick()); resultBinding.tvNickRight - .setCompoundDrawablesWithIntrinsicBounds(0, 0, userInfo.getGender() == 1 ? R.drawable.ic_male : R.drawable.ic_female, 0); + .setCompoundDrawablesWithIntrinsicBounds(0, 0, userInfo.getGender() == 1 ? R.drawable.ic_gender_male : R.drawable.ic_gender_female, 0); ImageLoadUtils.loadAvatar(getContext(), userInfo.getAvatar(), resultBinding.ivAvatarRight); }); PraiseModel.get().isPraised(AuthModel.get().getCurrentUid(), rightUid) @@ -323,7 +323,7 @@ public class GameView extends FrameLayout { .subscribe(userInfo -> { resultBinding.tvNickLeft.setText(userInfo.getNick()); resultBinding.tvNickLeft - .setCompoundDrawablesWithIntrinsicBounds(0, 0, userInfo.getGender() == 1 ? R.drawable.ic_male : R.drawable.ic_female, 0); + .setCompoundDrawablesWithIntrinsicBounds(0, 0, userInfo.getGender() == 1 ? R.drawable.ic_gender_male : R.drawable.ic_gender_female, 0); ImageLoadUtils.loadAvatar(getContext(), userInfo.getAvatar(), resultBinding.ivAvatarLeft); }); PraiseModel.get().isPraised(AuthModel.get().getCurrentUid(), leftUid) diff --git a/app/src/main/java/com/yizhuan/erban/base/BaseActivity.java b/app/src/main/java/com/yizhuan/erban/base/BaseActivity.java index 5e92eb899..bcfe6fde5 100644 --- a/app/src/main/java/com/yizhuan/erban/base/BaseActivity.java +++ b/app/src/main/java/com/yizhuan/erban/base/BaseActivity.java @@ -183,7 +183,7 @@ public abstract class BaseActivity extends RxAppCompatActivity mTitleBar.setTitle(title); mTitleBar.setImmersive(false); mTitleBar.setTitleColor(getResources().getColor(R.color.back_font)); - mTitleBar.setLeftImageResource(R.mipmap.common_ic_back); + mTitleBar.setLeftImageResource(R.drawable.arrow_left); mTitleBar.setCommonBackgroundColor(getResources().getColor(R.color.transparent)); mTitleBar.setLeftClickListener(new View.OnClickListener() { @Override @@ -202,7 +202,7 @@ public abstract class BaseActivity extends RxAppCompatActivity mTitleBar.setTitleColor(getResources().getColor( whiteModel ? R.color.white : R.color.back_font)); mTitleBar.setLeftImageResource( - whiteModel ? R.mipmap.common_ic_back_white : R.mipmap.common_ic_back); + whiteModel ? R.drawable.arrow_left_white : R.drawable.arrow_left); mTitleBar.setCommonBackgroundColor(getResources().getColor( whiteModel ? R.color.transparent : R.color.white) ); diff --git a/app/src/main/java/com/yizhuan/erban/base/BaseMvpActivity.java b/app/src/main/java/com/yizhuan/erban/base/BaseMvpActivity.java index 65090b7d2..bad4c217a 100644 --- a/app/src/main/java/com/yizhuan/erban/base/BaseMvpActivity.java +++ b/app/src/main/java/com/yizhuan/erban/base/BaseMvpActivity.java @@ -166,7 +166,7 @@ public abstract class BaseMvpActivity onLeftClickListener()); } } @@ -181,7 +181,7 @@ public abstract class BaseMvpActivity onLeftClickListener()); // action if (action != null) { diff --git a/app/src/main/java/com/yizhuan/erban/base/TitleBar.java b/app/src/main/java/com/yizhuan/erban/base/TitleBar.java index d05de63b1..7069bee6d 100644 --- a/app/src/main/java/com/yizhuan/erban/base/TitleBar.java +++ b/app/src/main/java/com/yizhuan/erban/base/TitleBar.java @@ -33,7 +33,7 @@ import java.util.LinkedList; public class TitleBar extends ViewGroup implements View.OnClickListener { private static final int DEFAULT_MAIN_TEXT_SIZE = 18; private static final int DEFAULT_SUB_TEXT_SIZE = 12; - private static final int DEFAULT_ACTION_TEXT_SIZE = 15; + private static final int DEFAULT_ACTION_TEXT_SIZE = 13; private static final int DEFAULT_TITLE_BAR_HEIGHT = 48; private static final String STATUS_BAR_HEIGHT_RES_NAME = "status_bar_height"; @@ -53,6 +53,7 @@ public class TitleBar extends ViewGroup implements View.OnClickListener { private int mScreenWidth; private int mStatusBarHeight; private int mActionPadding; + private int mDrawablePadding; private int mOutPadding; private int mActionTextColor; private int mHeight; @@ -95,6 +96,7 @@ public class TitleBar extends ViewGroup implements View.OnClickListener { } mActionPadding = dip2px(5); mOutPadding = dip2px(10); + mDrawablePadding = dip2px(5); mHeight = dip2px(DEFAULT_TITLE_BAR_HEIGHT); initView(context); } @@ -415,6 +417,13 @@ public class TitleBar extends ViewGroup implements View.OnClickListener { if (mActionTextColor != 0) { text.setTextColor(mActionTextColor); } + + if (action.getTextDrawableLeft() != 0){ + Drawable drawableLeft = getResources().getDrawable(action.getTextDrawableLeft()); + text.setCompoundDrawablesWithIntrinsicBounds(drawableLeft, + null, null, null); + text.setCompoundDrawablePadding(mDrawablePadding); + } view = text; } @@ -511,6 +520,8 @@ public class TitleBar extends ViewGroup implements View.OnClickListener { int getDrawable(); + int getTextDrawableLeft(); + void performAction(View view); } @@ -530,13 +541,25 @@ public class TitleBar extends ViewGroup implements View.OnClickListener { public String getText() { return null; } + + @Override + public int getTextDrawableLeft() { + return 0; + } } public static abstract class TextAction implements Action { final private String mText; + final private int mDrawableLeft; public TextAction(String text) { mText = text; + mDrawableLeft = 0; + } + + public TextAction(String text,int drawableLeft) { + mText = text; + mDrawableLeft = drawableLeft; } @Override @@ -548,6 +571,12 @@ public class TitleBar extends ViewGroup implements View.OnClickListener { public String getText() { return mText; } + + @Override + public int getTextDrawableLeft() { + return mDrawableLeft; + } + } } diff --git a/app/src/main/java/com/yizhuan/erban/common/widget/OvalImageView.java b/app/src/main/java/com/yizhuan/erban/common/widget/OvalImageView.java new file mode 100644 index 000000000..96e423113 --- /dev/null +++ b/app/src/main/java/com/yizhuan/erban/common/widget/OvalImageView.java @@ -0,0 +1,63 @@ +package com.yizhuan.erban.common.widget; + +import android.content.Context; +import android.graphics.Canvas; +import android.graphics.Path; +import android.graphics.RectF; +import android.util.AttributeSet; + + + +/* + *用来显示不规则图片, + * 上面两个是圆角,下面两个是直角 + * */ +public class OvalImageView extends android.support.v7.widget.AppCompatImageView { + /*圆角的半径,依次为左上角xy半径,右上角,右下角,左下角*/ + //此处可根据自己需要修改大小 + private Context mContext; + float[] rids = {dp2px(mContext,12), dp2px(mContext,12), dp2px(mContext,5), dp2px(mContext,12), 0.0f, 0.0f, 0.0f, 0.0f}; + + public OvalImageView(Context context) { + super(context); + mContext = context; + + } + + + public OvalImageView(Context context, AttributeSet attrs) { + super(context, attrs); + } + + + public OvalImageView(Context context, AttributeSet attrs, int defStyleAttr) { + super(context, attrs, defStyleAttr); + } + + + @Override + protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { + int width = MeasureSpec.getSize(widthMeasureSpec); + setMeasuredDimension(width, width); + } + + /** + * 画图 + * + * @param canvas + */ + protected void onDraw(Canvas canvas) { + Path path = new Path(); + int w = this.getWidth(); + int h = this.getHeight(); + /*向路径中添加圆角矩形。radii数组定义圆角矩形的四个圆角的x,y半径。radii长度必须为8*/ + path.addRoundRect(new RectF(0, 0, w, h), rids, Path.Direction.CW); + canvas.clipPath(path); + super.onDraw(canvas); + } + + public int dp2px(Context context,final float dpValue) { + final float scale = context.getResources().getDisplayMetrics().density; + return (int) (dpValue * scale + 0.5f); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/yizhuan/erban/common/widget/TutuSwitchView.java b/app/src/main/java/com/yizhuan/erban/common/widget/TutuSwitchView.java index 798768d59..6e444f13f 100644 --- a/app/src/main/java/com/yizhuan/erban/common/widget/TutuSwitchView.java +++ b/app/src/main/java/com/yizhuan/erban/common/widget/TutuSwitchView.java @@ -21,6 +21,6 @@ public class TutuSwitchView extends IOSSwitchView { @Override public int getSelectedColor() { - return 0xFF34EBDE; + return 0xFF7154EE; } } diff --git a/app/src/main/java/com/yizhuan/erban/common/widget/dialog/ChooseWorldsDialog.java b/app/src/main/java/com/yizhuan/erban/common/widget/dialog/ChooseWorldsDialog.java index eff7c01c9..de8895183 100644 --- a/app/src/main/java/com/yizhuan/erban/common/widget/dialog/ChooseWorldsDialog.java +++ b/app/src/main/java/com/yizhuan/erban/common/widget/dialog/ChooseWorldsDialog.java @@ -67,13 +67,13 @@ public class ChooseWorldsDialog extends AppCompatDialogFragment viewPager = mRootView.findViewById(R.id.viewpager); List mTabInfoList = new ArrayList<>(); - mTabInfoList.add(new TabInfo(1, "我加入的")); - mTabInfoList.add(new TabInfo(2, "大家都在聊")); +// mTabInfoList.add(new TabInfo(1, "我加入的")); +// mTabInfoList.add(new TabInfo(2, "大家都在聊")); mTabInfoList.add(new TabInfo(3, "全部")); List mTabs = new ArrayList<>(); - mTabs.add(WorldsChooseFrg.newInstance(Constants.TYPE_JOINED).setmChooseWorldCallback(this)); - mTabs.add(WorldsChooseFrg.newInstance(Constants.TYPE_RECOMMEND).setmChooseWorldCallback(this)); +// mTabs.add(WorldsChooseFrg.newInstance(Constants.TYPE_JOINED).setmChooseWorldCallback(this)); +// mTabs.add(WorldsChooseFrg.newInstance(Constants.TYPE_RECOMMEND).setmChooseWorldCallback(this)); mTabs.add(WorldsChooseFrg.newInstance(Constants.TYPE_ALL).setmChooseWorldCallback(this)); ChooseWorldsIndicatorAdapter topMagicIndicatorAdapter = new ChooseWorldsIndicatorAdapter(context, mTabInfoList, 0); @@ -94,19 +94,19 @@ public class ChooseWorldsDialog extends AppCompatDialogFragment type = Constants.TYPE_JOINED; } - switch (type) { - case Constants.TYPE_ALL: +// switch (type) { +// case Constants.TYPE_ALL: viewPager.setCurrentItem(2); - break; - - case Constants.TYPE_JOINED: - viewPager.setCurrentItem(0); - break; - - case Constants.TYPE_RECOMMEND: - viewPager.setCurrentItem(1); - break; - } +// break; +// +// case Constants.TYPE_JOINED: +// viewPager.setCurrentItem(0); +// break; +// +// case Constants.TYPE_RECOMMEND: +// viewPager.setCurrentItem(1); +// break; +// } return mRootView; } diff --git a/app/src/main/java/com/yizhuan/erban/common/widget/dialog/DialogManager.java b/app/src/main/java/com/yizhuan/erban/common/widget/dialog/DialogManager.java index 2b9122858..5239943b3 100644 --- a/app/src/main/java/com/yizhuan/erban/common/widget/dialog/DialogManager.java +++ b/app/src/main/java/com/yizhuan/erban/common/widget/dialog/DialogManager.java @@ -413,7 +413,7 @@ public class DialogManager { } /** - * 1、66陪玩通用的dialog设置,以后尽量所有的dialog都引到这个方法,方便以后改版 + * 1、66星球通用的dialog设置,以后尽量所有的dialog都引到这个方法,方便以后改版 * 2、如果UI要求弹框是完全自定义的,再重新写过 * @param title 标题,空则隐藏 (ui说,有些弹框带标题,有些不带,两种情况共存) * @param message 内容,不能为空,配合{@link com.yizhuan.erban.utils.SpannableBuilder} 变色使用 diff --git a/app/src/main/java/com/yizhuan/erban/decoration/adapter/MyNamePlateAdapter.java b/app/src/main/java/com/yizhuan/erban/decoration/adapter/MyNamePlateAdapter.java new file mode 100644 index 000000000..1a5f873b3 --- /dev/null +++ b/app/src/main/java/com/yizhuan/erban/decoration/adapter/MyNamePlateAdapter.java @@ -0,0 +1,166 @@ +package com.yizhuan.erban.decoration.adapter; + +import android.view.View; +import android.widget.ImageView; +import android.widget.TextView; + +import com.netease.nim.uikit.support.glide.GlideApp; +import com.yizhuan.erban.R; +import com.yizhuan.erban.bindadapter.BaseAdapter; +import com.yizhuan.erban.bindadapter.BindingViewHolder; +import com.yizhuan.erban.databinding.ItemCarGarageNormalBinding; +import com.yizhuan.xchat_android_core.decoration.car.bean.CarInfo; +import com.yizhuan.xchat_android_library.utils.ListUtils; + +/** + * Created by yudi + * on 2018/3/2. + */ +public class MyNamePlateAdapter extends BaseAdapter { + + public MyNamePlateAdapter(int layoutResId, int brid) { + super(layoutResId, brid); + } + + @Override + protected void convert(BindingViewHolder helper, CarInfo item) { + super.convert(helper, item); + + ItemCarGarageNormalBinding binding = (ItemCarGarageNormalBinding) helper.getBinding(); + + GlideApp.with(binding.ivCarCover) + .load(item.getPic()) + .dontAnimate() + .dontTransform() + .fitCenter() + .into(binding.ivCarCover); + + helper.addOnClickListener(R.id.tv_buy); + helper.addOnClickListener(R.id.tv_used); + + // 倒计时 + int remainingDay = item.getRemainingDay(); + int status = item.getStatus(); + boolean canUse; + + binding.tvCarPrice.setText(item.getPriceStr()); + if (remainingDay >= 0 && status == CarInfo.STATUS_USER_CAN_USE) { + // 一定是续费按钮 + binding.tvBuy.setVisibility(View.VISIBLE); + binding.tvBuy.setText("续费"); + binding.tvBuy.setBackgroundResource(R.drawable.bg_my_head_renew); + + canUse = true; + } else { + canUse = false; + // 根据状态显示倒计时 + // 根据状态判断是购买按钮还是隐藏按钮 + if (status == CarInfo.STATUS_OFF_SHELF) { + // 隐藏购买按钮 + binding.tvBuy.setVisibility(View.GONE); + } else if (status == CarInfo.STATUS_OUT_OF_DATE) { + // 续费或购买按钮 + binding.tvBuy.setVisibility(View.VISIBLE); + binding.tvBuy.setText("购买"); + binding.tvBuy.setBackgroundResource(R.drawable.bg_my_head_buy); + } + } + + // 时间 + if (remainingDay >= 0 && status == CarInfo.STATUS_USER_CAN_USE) { + binding.tvCounters.setText(String.format(binding.tvCounters.getResources().getString(R.string.decoration_status_wrapper), + binding.tvCounters.getResources().getString(R.string.decoration_remainder) + remainingDay + "天")); + } else { + if (status == CarInfo.STATUS_OFF_SHELF || status == CarInfo.STATUS_OUT_OF_DATE) { + binding.tvCounters.setText(String.format(binding.tvCounters.getResources().getString(R.string.decoration_status_wrapper), + binding.tvCounters.getResources().getString(R.string.past_due))); + } + } + + + setUseButton(binding.tvUsed, canUse, item.isUsing()); + updateTag(item, binding.ivTag, binding.tvBuy); + + if (status == CarInfo.STATUS_OFF_SHELF) { + binding.tvNoSeal.setVisibility(View.VISIBLE); + binding.tvNoSeal.setText("已下架"); + } else if (CarInfo.TAG_TYPE_LIMIT == item.getLabelType() || CarInfo.TAG_TYPE_EXCLUSIVE == item.getLabelType()) { + binding.tvNoSeal.setVisibility(View.VISIBLE); + binding.tvNoSeal.setText("暂不出售"); + } else + binding.tvNoSeal.setVisibility(View.GONE); + } + + private void setUseButton(TextView tvUsed, boolean canUse, boolean isUsing) { + + if (!canUse) { + tvUsed.setVisibility(View.GONE); + tvUsed.setText("使用"); + tvUsed.setBackgroundResource(R.drawable.bg_my_head_invalid); + tvUsed.setEnabled(false); + } else if (isUsing) { + tvUsed.setVisibility(View.VISIBLE); + tvUsed.setText("取消使用"); + tvUsed.setBackgroundResource(R.drawable.bg_my_head_invalid); + tvUsed.setEnabled(true); + } else { + tvUsed.setVisibility(View.VISIBLE); + tvUsed.setText("使用"); + tvUsed.setBackgroundResource(R.drawable.bg_my_head_buy); + tvUsed.setEnabled(true); + } + + } + + private void updateTag(CarInfo carInfo, ImageView ivTag, TextView tvBuy) { + if (CarInfo.TAG_TYPE_NORMAL == carInfo.getLabelType()) { + ivTag.setVisibility(View.GONE); + + } else if (CarInfo.TAG_TYPE_NEW == carInfo.getLabelType()) { + ivTag.setVisibility(View.VISIBLE); + ivTag.setImageResource(R.drawable.ic_mark_new); + + } else if (CarInfo.TAG_TYPE_DISCOUNT == carInfo.getLabelType()) { + ivTag.setVisibility(View.VISIBLE); + ivTag.setImageResource(R.drawable.ic_mark_discount); + + } else if (CarInfo.TAG_TYPE_LIMIT == carInfo.getLabelType()) { + ivTag.setVisibility(View.VISIBLE); + ivTag.setImageResource(R.drawable.ic_mark_limit); + tvBuy.setVisibility(View.GONE); + + } else if (CarInfo.TAG_TYPE_EXCLUSIVE == carInfo.getLabelType()) { + ivTag.setVisibility(View.VISIBLE); + ivTag.setImageResource(R.drawable.ic_mark_exclusive); + tvBuy.setVisibility(View.GONE); + } + } + + public void check(CarInfo selectedCarInfo) { + if (ListUtils.isListEmpty(mData)) return; + // 数据上改变那个using字段 + for (int i = 0; i < mData.size(); i++) { + CarInfo carInfo = mData.get(i); + if (selectedCarInfo.getCarId() == carInfo.getCarId()) { + carInfo.setUsing(1); + } else { + carInfo.setUsing(0); + } + } + notifyDataSetChanged(); + } + + public void setCarInfoHasBeenRenew(CarInfo carInfo) { + if (carInfo.getCarId() <= 0 || ListUtils.isListEmpty(mData)) return; + int index = mData.indexOf(carInfo); + if (index == -1) return; + if (mData.get(index).getRemainingDay() > 0) { + mData.get(index).setRemainingDay(mData.get(index).getRemainingDay() + carInfo.getDays()); + } else { + mData.get(index).setRemainingDay(carInfo.getDays()); + } + mData.get(index).setStatus(CarInfo.STATUS_USER_CAN_USE); + notifyItemChanged(index); + } + +} diff --git a/app/src/main/java/com/yizhuan/erban/decoration/view/MyDecorationActivity.java b/app/src/main/java/com/yizhuan/erban/decoration/view/MyDecorationActivity.java index 443885643..0bf2bf0cf 100644 --- a/app/src/main/java/com/yizhuan/erban/decoration/view/MyDecorationActivity.java +++ b/app/src/main/java/com/yizhuan/erban/decoration/view/MyDecorationActivity.java @@ -50,6 +50,7 @@ public class MyDecorationActivity extends BaseBindingActivity tabInfoList = new ArrayList<>(2); tabInfoList.add(new TabInfo(1, "头饰")); tabInfoList.add(new TabInfo(2, "座驾")); + tabInfoList.add(new TabInfo(3, "铭牌")); CommonNavigator commonNavigator = new CommonNavigator(this); commonNavigator.setAdjustMode(true); CarMagicIndicator indicator = new CarMagicIndicator(this, tabInfoList, 0); @@ -89,15 +91,21 @@ public class MyDecorationActivity extends BaseBindingActivity { + + private ICarView mCarView; + private MyNamePlateAdapter mNamePlateAdapter; + private boolean first = true; + + private MyCarVm myCarVm; + + public static MyNamePlateFragment instance(ICarView carView) { + MyNamePlateFragment fragment = new MyNamePlateFragment(); + fragment.mCarView = carView; + return fragment; + } + + @Override + public void onFindViews() { + } + + @Override + public void onActivityCreated(@Nullable Bundle savedInstanceState) { + super.onActivityCreated(savedInstanceState); + if (first && getUserVisibleHint()) { + first = false; + } + } + + @Override + public void onSetListener() { + } + + @Override + public void initiate() { + myCarVm = new MyCarVm(); + mBinding.setViewmodel(myCarVm); + + mNamePlateAdapter = new MyNamePlateAdapter(R.layout.item_car_garage_normal, BR.carInfo); + mNamePlateAdapter.setOnItemChildClickListener((adapter, view, position) -> { + + switch (view.getId()) { + case R.id.tv_buy: + mCarView.showDetail(mNamePlateAdapter.getItem(position)); + break; + + case R.id.tv_used: + startDriving(mNamePlateAdapter.getItem(position)); + break; + + } + }); + + mBinding.swipeRefresh.setOnRefreshListener(() -> getData()); + + mBinding.recyclerView.setAdapter(mNamePlateAdapter); + mBinding.recyclerView.setLayoutManager(new LinearLayoutManager(getActivity())); + + getData(); + } + + public MyNamePlateAdapter getAdapter() { + return mNamePlateAdapter; + } + + @Override + public void setUserVisibleHint(boolean isVisibleToUser) { + super.setUserVisibleHint(isVisibleToUser); + if (isVisibleToUser && mCarView != null && mCarView.getCarGarageNeedUpdate()) { + getData(); + } + } + + @SuppressLint("CheckResult") + private void getData() { + + if (myCarVm == null) + return; + + myCarVm.loadData(false).compose(bindToLifecycle()) + .doAfterTerminate(() -> { + if (ListUtils.isListEmpty(mNamePlateAdapter.getData())) { + showNoData(R.drawable.icon_common_failure, "亲爱的用户,你还没有座驾哦!"); + } + + List list = mNamePlateAdapter.getData(); + + for (CarInfo item : list) { + if (item.getCarId() == 0) { + list.remove(item); + break; + } + } + + mNamePlateAdapter.notifyDataSetChanged(); + }) + .subscribe(); + } + + @Override + public void showNoData(View view, int drawable, CharSequence charSequence) { + if (!checkActivityValid()) + return; + + if (view == null) { + return; + } + View status = view.findViewById(R.id.status_layout); + if (status == null || status.getId() <= 0) { + return; + } + NoDataFragment fragment = NoDataFragment.newInstance(R.layout.fragment_no_data_middle_iv, drawable, charSequence); + fragment.setListener(getLoadListener()); + getChildFragmentManager().beginTransaction().replace(status.getId(), fragment, STATUS_TAG).commitAllowingStateLoss(); + } + + @SuppressLint("CheckResult") + private void startDriving(CarInfo carInfo) { + final int id = carInfo.isUsing() ? 0 : carInfo.getCarId(); + LoadingDialog loadingDialog = new LoadingDialog(mContext); + loadingDialog.show(); + + CarModel.get().driveThisCar(id) + .subscribe((voidServiceResult, throwable) -> { + loadingDialog.dismiss(); + if (voidServiceResult != null && voidServiceResult.isSuccess()) { + //更换座驾状态,需要更新缓存 + UserModel.get().onlyUpdateLoginUserInfoCache(); + List list = mNamePlateAdapter.getData(); + for (CarInfo item : list) { + if (id == item.getCarId()) { + item.setUsing(1); + } else { + item.setUsing(0); + } + } + mNamePlateAdapter.notifyDataSetChanged(); + + } else if (voidServiceResult != null && !voidServiceResult.isSuccess()) { +// Toast.makeText(mContext, "驾驶失败: 网络异常!", Toast.LENGTH_SHORT).show(); + SingleToastUtil.showToastShort("驾驶失败: 网络异常!"); + } else if (throwable != null) { +// Toast.makeText(mContext, "驾驶失败: 网络异常!", Toast.LENGTH_SHORT).show(); + SingleToastUtil.showToastShort("驾驶失败: 网络异常!"); + } else { +// Toast.makeText(mContext, "驾驶失败: 网络异常!", Toast.LENGTH_SHORT).show(); + SingleToastUtil.showToastShort("驾驶失败: 网络异常!"); + } + }); + } +} diff --git a/app/src/main/java/com/yizhuan/erban/family/view/activity/FamilyMemberListActivity.java b/app/src/main/java/com/yizhuan/erban/family/view/activity/FamilyMemberListActivity.java index 04b6dc589..4224f85cc 100644 --- a/app/src/main/java/com/yizhuan/erban/family/view/activity/FamilyMemberListActivity.java +++ b/app/src/main/java/com/yizhuan/erban/family/view/activity/FamilyMemberListActivity.java @@ -62,6 +62,11 @@ public class FamilyMemberListActivity extends BaseMvpActivity @@ -821,7 +821,7 @@ public class GameHomeFragment extends BaseMvpFragment iterator = bannerInfos.iterator(); while (iterator.hasNext()) { BannerInfo next = iterator.next(); - if (Objects.equals(next.getBannerName(), "66陪玩-小世界")) { + if (Objects.equals(next.getBannerName(), "66星球-小世界")) { iterator.remove(); break; } diff --git a/app/src/main/java/com/yizhuan/erban/home/fragment/MeFragment.java b/app/src/main/java/com/yizhuan/erban/home/fragment/MeFragment.java index 41eb12490..40343178d 100644 --- a/app/src/main/java/com/yizhuan/erban/home/fragment/MeFragment.java +++ b/app/src/main/java/com/yizhuan/erban/home/fragment/MeFragment.java @@ -3,16 +3,27 @@ package com.yizhuan.erban.home.fragment; import android.content.Intent; import android.databinding.DataBindingUtil; import android.os.Bundle; +import android.support.annotation.NonNull; import android.support.annotation.Nullable; +import android.support.v4.content.ContextCompat; +import android.text.Spannable; +import android.text.SpannableStringBuilder; +import android.text.style.ForegroundColorSpan; import android.view.View; import com.yizhuan.erban.MainActivity; import com.yizhuan.erban.R; import com.yizhuan.erban.UIHelper; +import com.yizhuan.erban.avroom.activity.AVRoomActivity; import com.yizhuan.erban.base.BaseFragment; +import com.yizhuan.erban.base.BaseMvpFragment; import com.yizhuan.erban.common.widget.dialog.DialogManager; import com.yizhuan.erban.databinding.FragmentMeBinding; import com.yizhuan.erban.decoration.view.MyDecorationActivity; +import com.yizhuan.erban.home.dialog.CreateRoomDialog; +import com.yizhuan.erban.home.presenter.MainFragmentPresenter; +import com.yizhuan.erban.home.view.IMainFragmentView; +import com.yizhuan.erban.module_hall.hall.activity.ModuleHallActivity; import com.yizhuan.erban.radish.activity.RadishRecordActivity; import com.yizhuan.erban.ui.patriarch.PatriarchModeActivity; import com.yizhuan.erban.ui.relation.AttentionListActivity; @@ -22,8 +33,13 @@ import com.yizhuan.erban.ui.widget.ObservableScrollView; import com.yizhuan.erban.ui.widget.higuide.TuTuGuideHelper; import com.yizhuan.xchat_android_core.UriProvider; import com.yizhuan.xchat_android_core.auth.AuthModel; +import com.yizhuan.xchat_android_core.certification.CertificationModel; import com.yizhuan.xchat_android_core.customer_server.CustomerServerModel; import com.yizhuan.xchat_android_core.decoration.headwear.bean.HeadWearInfo; +import com.yizhuan.xchat_android_core.family.bean.HomeBannerInfo; +import com.yizhuan.xchat_android_core.family.bean.HomeTitleInfo; +import com.yizhuan.xchat_android_core.home.bean.TagListInfo; +import com.yizhuan.xchat_android_core.manager.AvRoomDataManager; import com.yizhuan.xchat_android_core.manager.IMNetEaseManager; import com.yizhuan.xchat_android_core.manager.RelationShipEvent; import com.yizhuan.xchat_android_core.market_verify.MarketVerifyModel; @@ -31,21 +47,33 @@ import com.yizhuan.xchat_android_core.market_verify.event.MarketVerifyUpdateEven import com.yizhuan.xchat_android_core.noble.NobleInfo; import com.yizhuan.xchat_android_core.noble.NobleProtocol; import com.yizhuan.xchat_android_core.noble.NobleUtil; +import com.yizhuan.xchat_android_core.room.bean.RoomInfo; +import com.yizhuan.xchat_android_core.room.model.AvRoomModel; +import com.yizhuan.xchat_android_core.statistic.StatisticManager; +import com.yizhuan.xchat_android_core.statistic.protocol.StatisticsProtocol; import com.yizhuan.xchat_android_core.user.UserModel; import com.yizhuan.xchat_android_core.user.bean.UserInfo; import com.yizhuan.xchat_android_core.user.event.LoginUserInfoUpdateEvent; import com.yizhuan.xchat_android_core.utils.StarUtils; +import com.yizhuan.xchat_android_library.base.factory.CreatePresenter; +import com.yizhuan.xchat_android_library.net.rxnet.callback.CallBack; import com.yizhuan.xchat_android_library.rxbus.RxBusHelper; +import com.yizhuan.xchat_android_library.utils.ListUtils; import org.greenrobot.eventbus.EventBus; import org.greenrobot.eventbus.Subscribe; import org.greenrobot.eventbus.ThreadMode; import java.util.Date; +import java.util.Iterator; +import java.util.List; import java.util.Locale; import io.reactivex.functions.BiConsumer; +import static com.yizhuan.xchat_android_core.certification.CertificationModel.CER_TYPE_FORCE; +import static com.yizhuan.xchat_android_core.certification.CertificationModel.CER_TYPE_GUIDE; +import static com.yizhuan.xchat_android_core.certification.CertificationModel.CER_TYPE_NONE; import static com.yizhuan.xchat_android_core.im.custom.bean.CustomAttachment.CUSTOM_MESS_SUB_HADEXPIRE; import static com.yizhuan.xchat_android_core.im.custom.bean.CustomAttachment.CUSTOM_MESS_SUB_OPENNOBLE; import static com.yizhuan.xchat_android_core.im.custom.bean.CustomAttachment.CUSTOM_MESS_SUB_RENEWNOBLE; @@ -55,7 +83,8 @@ import static com.yizhuan.xchat_android_core.im.custom.bean.CustomAttachment.CUS * @author: hewenhao * @date: 2018/9/4 16:53 */ -public class MeFragment extends BaseFragment implements View.OnClickListener { +@CreatePresenter(MainFragmentPresenter.class) +public class MeFragment extends BaseMvpFragment implements View.OnClickListener,IMainFragmentView { public static final String TAG = "MeFragment"; @@ -70,6 +99,11 @@ public class MeFragment extends BaseFragment implements View.OnClickListener { return R.layout.fragment_me; } + @Override + public void onFindViews() { + + } + @Override public void onSetListener() { mBinding = DataBindingUtil.bind(mView); @@ -298,6 +332,7 @@ public class MeFragment extends BaseFragment implements View.OnClickListener { case R.id.ll_my_room: toast("我的房间"); + openRoom(); break; case R.id.ll_collect_room: toast("收藏房间"); @@ -320,7 +355,7 @@ public class MeFragment extends BaseFragment implements View.OnClickListener { break; case R.id.me_item_union: - toast("我的公会"); + ModuleHallActivity.start(mContext); break; case R.id.me_item_patriarch: @@ -421,8 +456,145 @@ public class MeFragment extends BaseFragment implements View.OnClickListener { default: break; } + } + private void openRoom() { + UserInfo userInfo = UserModel.get().getCacheLoginUserInfo(); + if (userInfo != null && !userInfo.isCertified()) { + switch (CertificationModel.get().getCertificationType()) { + default: + case CER_TYPE_NONE: + // do nothing + openCreateRoomTypeDialog(); + break; + case CER_TYPE_FORCE: + getDialogManager().showTipsDialog(getCertificationTips(), + getString(R.string.go_to_certification), + new DialogManager.AbsOkDialogListener() { + @Override + public void onOk() { + // 跳去实名认证页面 + CommonWebViewActivity.start(getContext(), + UriProvider.getTutuRealNamePage()); + } + }); + break; + + case CER_TYPE_GUIDE: + getDialogManager().showTipsDialog(getCertificationTips(), + getString(R.string.go_to_certification), + new DialogManager.OkCancelDialogListener() { + @Override + public void onCancel() { + openCreateRoomTypeDialog(); + } + + @Override + public void onOk() { + // 跳去实名认证页面 + CommonWebViewActivity.start(getContext(), + UriProvider.getTutuRealNamePage()); + } + }); + break; + } + } else { + openCreateRoomTypeDialog(); + } + } + + private void openRoom(int roomType) { + RoomInfo roomInfo = AvRoomDataManager.get().mCurrentRoomInfo; + if (roomInfo != null) { + if (roomInfo.getUid() == AuthModel.get().getCurrentUid() + && roomInfo.getType() == roomType) { + AVRoomActivity.start(mContext, roomInfo.getUid()); + } else { + getBaseActivity().getDialogManager().showProgressDialog(getActivity(), getBaseActivity().getString(R.string.waiting_text)); + getMvpPresenter().requestExitRoom(roomType); + } + } else { + getBaseActivity().getDialogManager().showProgressDialog(getActivity(), getBaseActivity().getString(R.string.waiting_text)); + getMvpPresenter().requestOpenRoom(roomType); + } + } + + private void openCreateRoomTypeDialog() { + new CreateRoomDialog(getActivity(), new CreateRoomDialog.OpenRoomListener() { + @Override + public void onNormalRoom() { + StatisticManager.Instance().onEvent(StatisticsProtocol.Event.game_homepage_createroom_ordinary_click, "创建普通房"); + getRoomInfo(RoomInfo.ROOMTYPE_HOME_PARTY); + } + + @Override + public void onCpRoom() { + StatisticManager.Instance().onEvent(StatisticsProtocol.Event.game_homepage_createroom_cp_click, "创建陪伴房"); + getRoomInfo(RoomInfo.ROOMTYPE_CP); + } + }).openDialog(); + } + + private void getRoomInfo(int roomType) { + AvRoomModel.get().requestRoomInfoFromService(String.valueOf(AuthModel.get().getCurrentUid()), + new CallBack() { + @Override + public void onSuccess(RoomInfo data) { + if (data.getType() != 0 + && data.getType() != roomType + && data.isValid()) { + String message = roomType == RoomInfo.ROOMTYPE_CP ? "创建陪伴房,将关闭当前房间并解散房间内的用户" + : "创建普通房,将关闭当前房间并解散房间内的用户"; + getDialogManager().showOkCancelDialog( + message, + "确认", + "取消", + new DialogManager.OkCancelDialogListener() { + @Override + public void onCancel() { + + } + + @Override + public void onOk() { +// openRoom(roomType); + changeRoomState(data.getWorldId(), roomType); + } + }); + } else { +// openRoom(roomType); + changeRoomState(data.getWorldId(), roomType); + } + } + + @Override + public void onFail(int code, String error) { +// openRoom(roomType); + changeRoomState(0, roomType); + } + + }); + } + + private int mRoomType; + private void changeRoomState(long worldId, int roomType) { + mRoomType = roomType; + if (worldId == 0) { + openRoom(roomType); + + } else { + getMvpPresenter().roomWorldModeClose(AuthModel.get().getCurrentUid()); + } + } + + @NonNull + private SpannableStringBuilder getCertificationTips() { + String tips = getString(R.string.tips_need_to_certification); + SpannableStringBuilder builder = new SpannableStringBuilder(tips); + builder.setSpan(new ForegroundColorSpan(ContextCompat.getColor(getContext(), R.color.appColor)), + tips.length() - 4, tips.length(), Spannable.SPAN_INCLUSIVE_EXCLUSIVE); + return builder; } @@ -434,4 +606,65 @@ public class MeFragment extends BaseFragment implements View.OnClickListener { } } + @Override + public void requestOpenRoomResult(int openRoomFailType, Object... arg) { + getBaseActivity().getDialogManager().dismissDialog(); + if (openRoomFailType == MainFragmentPresenter.OPEN_ROOM_SUCCESS) { + RoomInfo roomInfo = (RoomInfo) arg[0]; + AVRoomActivity.start(getActivity(), roomInfo.getUid()); + } else if (openRoomFailType == MainFragmentPresenter.OPEN_ROOM_FAIL_TYPE_IN_ROOM) { + RoomInfo roomInfo = (RoomInfo) arg[0]; + getBaseActivity().getDialogManager().showProgressDialog(getActivity(), "请稍后..."); + getMvpPresenter().requestExitRoom(roomInfo.getType()); + + } else if (openRoomFailType == MainFragmentPresenter.OPEN_ROOM_FAIL) { + String error = (String) arg[0]; + getBaseActivity().toast(error); + } else if (openRoomFailType == MainFragmentPresenter.OPEN_ROOM_FAIL_ALREADY_OPENED_ROOM) { + RoomInfo roomInfo = (RoomInfo) arg[0]; + AVRoomActivity.start(getActivity(), roomInfo.getUid()); + } else if (openRoomFailType == MainFragmentPresenter.OPEN_ROOM_FAIL_PM_LIMIT_TIME) { + if (getActivity() != null && getActivity() instanceof MainActivity) { + if (arg != null && arg.length > 0 && arg[0] instanceof String) { + ((MainActivity) getActivity()).handleOpenRoomWhenPmLimit((String)arg[0]); + } + } + } + } + + @Override + public void showByMarketCheckingStatus(List tagListInfoList) { + + } + + @Override + public void titleListSuccess(List tagListInfoList) { + + } + + @Override + public void titleListFail(String msg) { + + } + + @Override + public void onGetFirstPageBannerSucceeded(HomeBannerInfo homeBannerInfo) { + + } + + @Override + public void onGetFirstPageBannerFailed(String message) { + + } + + @Override + public void roomWorldModeCloseSuccess() { + openRoom(mRoomType); + } + + @Override + public void roomWorldModeCloseFail(String error) { + toast(error); + } + } diff --git a/app/src/main/java/com/yizhuan/erban/home/presenter/FindFragmentPresenter.java b/app/src/main/java/com/yizhuan/erban/home/presenter/FindFragmentPresenter.java index 4c461f42d..244902efd 100644 --- a/app/src/main/java/com/yizhuan/erban/home/presenter/FindFragmentPresenter.java +++ b/app/src/main/java/com/yizhuan/erban/home/presenter/FindFragmentPresenter.java @@ -112,7 +112,7 @@ public class FindFragmentPresenter extends BaseMvpPresenter { return null; } VMTopMessageInfo topMessageInfo = new VMTopMessageInfo(); - topMessageInfo.setTitle("66陪玩头条"); + topMessageInfo.setTitle("66星球头条"); List vmTopMessageList = new ArrayList<>(); //组装成2个2个一组 final int groupSize = 2; diff --git a/app/src/main/java/com/yizhuan/erban/home/presenter/RecommendFragmentPresenter.java b/app/src/main/java/com/yizhuan/erban/home/presenter/RecommendFragmentPresenter.java index c65536d5e..c85d365d1 100644 --- a/app/src/main/java/com/yizhuan/erban/home/presenter/RecommendFragmentPresenter.java +++ b/app/src/main/java/com/yizhuan/erban/home/presenter/RecommendFragmentPresenter.java @@ -382,7 +382,7 @@ public class RecommendFragmentPresenter extends BaseMvpPresenter 15) { - tvNick.setText(nick.substring(0, 15)); + if (nick.length() > 8) { + tvNick.setText(nick.substring(0, 8)); } else { tvNick.setText(nick); } @@ -143,7 +143,7 @@ public class AddUserInfoFragment extends BaseFragment } private void init() { - tvNick.setFilters(new InputFilter[]{new InputFilter.LengthFilter(15)}); + tvNick.setFilters(new InputFilter[]{new InputFilter.LengthFilter(8)}); // Calendar calendar = Calendar.getInstance(); // int year = calendar.get(Calendar.YEAR) - 18; // datePickerDialog = DatePickerDialog.newInstance(this, year, 0, 1, true); diff --git a/app/src/main/java/com/yizhuan/erban/ui/pay/ChargeAdapter.java b/app/src/main/java/com/yizhuan/erban/ui/pay/ChargeAdapter.java index 8a81e0fd7..80ffc9d32 100644 --- a/app/src/main/java/com/yizhuan/erban/ui/pay/ChargeAdapter.java +++ b/app/src/main/java/com/yizhuan/erban/ui/pay/ChargeAdapter.java @@ -25,7 +25,7 @@ public class ChargeAdapter extends BaseQuickAdapter baseViewHolder.setVisible(R.id.ll_gold_charge, !TextUtils.isEmpty(chargeBean.getProdName())); - baseViewHolder.setText(R.id.tv_money_gold, chargeBean.prodName.replace("66陪玩", "")) + baseViewHolder.setText(R.id.tv_money_gold, chargeBean.prodName.replace("66星球", "")) .setText(R.id.cb_money, mContext.getString(R.string.charge_number, chargeBean.money)); RelativeLayout rl_gold_charge = baseViewHolder.getView(R.id.ll_gold_charge); diff --git a/app/src/main/java/com/yizhuan/erban/ui/relation/adapter/AttentionListAdapter.java b/app/src/main/java/com/yizhuan/erban/ui/relation/adapter/AttentionListAdapter.java index 8136b80fa..d555da738 100644 --- a/app/src/main/java/com/yizhuan/erban/ui/relation/adapter/AttentionListAdapter.java +++ b/app/src/main/java/com/yizhuan/erban/ui/relation/adapter/AttentionListAdapter.java @@ -72,9 +72,9 @@ public class AttentionListAdapter extends BaseQuickAdapter AppCompatImageView ivGender = baseViewHolder.getView(R.id.iv_gender); if (fansInfo.getGender() == 1) { - ivGender.setImageResource(R.drawable.ic_male); + ivGender.setImageResource(R.drawable.ic_gender_male); } else { - ivGender.setImageResource(R.drawable.ic_female); + ivGender.setImageResource(R.drawable.ic_gender_female); } // 官字 diff --git a/app/src/main/java/com/yizhuan/erban/ui/search/SearchAdapter.java b/app/src/main/java/com/yizhuan/erban/ui/search/SearchAdapter.java index 6f14dfc1d..01bc742fb 100644 --- a/app/src/main/java/com/yizhuan/erban/ui/search/SearchAdapter.java +++ b/app/src/main/java/com/yizhuan/erban/ui/search/SearchAdapter.java @@ -71,10 +71,10 @@ public class SearchAdapter extends BaseQuickAdapter extends Bas AppCompatImageView gender = helper.getView(R.id.iv_gender); if (getGender(item) == 2) { - gender.setImageResource(R.drawable.ic_female); + gender.setImageResource(R.drawable.ic_gender_female); } else { - gender.setImageResource(R.drawable.ic_male); + gender.setImageResource(R.drawable.ic_gender_male); } TextView desc = helper.getView(R.id.tv_desc); diff --git a/app/src/main/java/com/yizhuan/erban/ui/user/decorationsend/DecorationSendActivity.java b/app/src/main/java/com/yizhuan/erban/ui/user/decorationsend/DecorationSendActivity.java index d6d0dcde2..e7290784e 100644 --- a/app/src/main/java/com/yizhuan/erban/ui/user/decorationsend/DecorationSendActivity.java +++ b/app/src/main/java/com/yizhuan/erban/ui/user/decorationsend/DecorationSendActivity.java @@ -73,6 +73,11 @@ public class DecorationSendActivity extends BaseBindingActivity + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable-xxhdpi/bg_home_search.xml b/app/src/main/res/drawable-xxhdpi/bg_home_search.xml new file mode 100644 index 000000000..17e0de648 --- /dev/null +++ b/app/src/main/res/drawable-xxhdpi/bg_home_search.xml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_e6e6e6_0_2_5.xml b/app/src/main/res/drawable/bg_e6e6e6_0_2_5.xml index 77c9fbd8d..f46f30bda 100644 --- a/app/src/main/res/drawable/bg_e6e6e6_0_2_5.xml +++ b/app/src/main/res/drawable/bg_e6e6e6_0_2_5.xml @@ -2,7 +2,7 @@ - + diff --git a/app/src/main/res/drawable/bg_recommend_topic_bottom_transparent.xml b/app/src/main/res/drawable/bg_recommend_topic_bottom_transparent.xml new file mode 100644 index 000000000..fd610116a --- /dev/null +++ b/app/src/main/res/drawable/bg_recommend_topic_bottom_transparent.xml @@ -0,0 +1,14 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_topic_publish_btn.xml b/app/src/main/res/drawable/bg_topic_publish_btn.xml new file mode 100644 index 000000000..b9374b008 --- /dev/null +++ b/app/src/main/res/drawable/bg_topic_publish_btn.xml @@ -0,0 +1,10 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_user_info_audio.xml b/app/src/main/res/drawable/bg_user_info_audio.xml index 598880fd0..26dfa9249 100644 --- a/app/src/main/res/drawable/bg_user_info_audio.xml +++ b/app/src/main/res/drawable/bg_user_info_audio.xml @@ -2,7 +2,7 @@ - + - - + \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_white_top_0_8.xml b/app/src/main/res/drawable/bg_white_top_0_8.xml index 6d7deb8f0..49fca842f 100644 --- a/app/src/main/res/drawable/bg_white_top_0_8.xml +++ b/app/src/main/res/drawable/bg_white_top_0_8.xml @@ -2,8 +2,8 @@ - diff --git a/app/src/main/res/drawable/shape_white_20dp_round.xml b/app/src/main/res/drawable/shape_white_20dp_round.xml index 17e0de648..db705e3b3 100644 --- a/app/src/main/res/drawable/shape_white_20dp_round.xml +++ b/app/src/main/res/drawable/shape_white_20dp_round.xml @@ -2,7 +2,7 @@ - + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_patriarch_mode.xml b/app/src/main/res/layout/activity_patriarch_mode.xml index cdfc3b7b3..7443088f7 100644 --- a/app/src/main/res/layout/activity_patriarch_mode.xml +++ b/app/src/main/res/layout/activity_patriarch_mode.xml @@ -120,7 +120,7 @@ android:id="@+id/tv_plan" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:text="66陪玩护苗计划" + android:text="66星球护苗计划" android:textColor="@color/color_FE4C62" android:textSize="12sp" /> diff --git a/app/src/main/res/layout/activity_setting.xml b/app/src/main/res/layout/activity_setting.xml index 89659a451..aed3c3d33 100644 --- a/app/src/main/res/layout/activity_setting.xml +++ b/app/src/main/res/layout/activity_setting.xml @@ -680,7 +680,7 @@ android:gravity="center" android:onClick="@{click}" android:text="@string/text_setting_logout" - android:textColor="#34EBDE" + android:textColor="@color/appColor" android:textSize="14sp" /> diff --git a/app/src/main/res/layout/activity_user_info.xml b/app/src/main/res/layout/activity_user_info.xml index 5cf88120e..8775f901f 100644 --- a/app/src/main/res/layout/activity_user_info.xml +++ b/app/src/main/res/layout/activity_user_info.xml @@ -106,7 +106,7 @@ android:textColor="@color/white" android:textSize="16sp" android:textStyle="bold" - tools:drawableRight="@drawable/ic_male" + tools:drawableRight="@drawable/ic_gender_male" tools:text="King天地为asdasdasdasdsadsadsad" /> diff --git a/app/src/main/res/layout/dialog_privacy_agreement.xml b/app/src/main/res/layout/dialog_privacy_agreement.xml index 64a72f50a..fe22c8a64 100644 --- a/app/src/main/res/layout/dialog_privacy_agreement.xml +++ b/app/src/main/res/layout/dialog_privacy_agreement.xml @@ -23,7 +23,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" - android:text="“66陪玩”隐私政策" + android:text="“66星球”隐私政策" android:textColor="#ff1b1b1b" android:textSize="16sp" android:textStyle="bold" /> diff --git a/app/src/main/res/layout/dialog_user_info.xml b/app/src/main/res/layout/dialog_user_info.xml index fb246f9d1..bf580f415 100644 --- a/app/src/main/res/layout/dialog_user_info.xml +++ b/app/src/main/res/layout/dialog_user_info.xml @@ -100,7 +100,7 @@ android:layout_height="@dimen/dp_13" android:layout_marginEnd="@dimen/dp_3" android:scaleType="fitCenter" - android:src="@drawable/ic_female" /> + android:src="@drawable/ic_gender_female" /> diff --git a/app/src/main/res/layout/fragment_add_user_info.xml b/app/src/main/res/layout/fragment_add_user_info.xml index 057e1c2fe..207c690f8 100644 --- a/app/src/main/res/layout/fragment_add_user_info.xml +++ b/app/src/main/res/layout/fragment_add_user_info.xml @@ -5,6 +5,7 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center_horizontal" + android:background="@drawable/bg_login" android:orientation="vertical"> + tools:src="@drawable/ic_gender_female" /> + android:src="@drawable/ic_gender_female" /> + android:src="@drawable/ic_gender_female" /> diff --git a/app/src/main/res/layout/item_home_find_newer_list.xml b/app/src/main/res/layout/item_home_find_newer_list.xml index 1890e27fb..0fe2997ba 100644 --- a/app/src/main/res/layout/item_home_find_newer_list.xml +++ b/app/src/main/res/layout/item_home_find_newer_list.xml @@ -38,7 +38,7 @@ android:layout_height="wrap_content" android:layout_marginLeft="@dimen/dp_5" android:layout_marginRight="@dimen/dp_5" - android:src="@drawable/ic_female" /> + android:src="@drawable/ic_gender_female" /> \ No newline at end of file diff --git a/app/src/main/res/layout/item_mic_queue_list.xml b/app/src/main/res/layout/item_mic_queue_list.xml index 08bca2939..016756ec4 100644 --- a/app/src/main/res/layout/item_mic_queue_list.xml +++ b/app/src/main/res/layout/item_mic_queue_list.xml @@ -88,7 +88,7 @@ android:layout_width="13dp" android:layout_height="13dp" android:layout_marginEnd="2dp" - tools:src="@drawable/ic_female" + tools:src="@drawable/ic_gender_female" tools:visibility="visible" /> diff --git a/app/src/main/res/layout/item_team_member_list.xml b/app/src/main/res/layout/item_team_member_list.xml index 145a6bdd5..5ea217902 100644 --- a/app/src/main/res/layout/item_team_member_list.xml +++ b/app/src/main/res/layout/item_team_member_list.xml @@ -102,7 +102,7 @@ android:layout_marginEnd="@dimen/dp_5" android:scaleType="fitCenter" android:visibility="gone" - android:src="@drawable/ic_female" /> + android:src="@drawable/ic_gender_female" /> + tools:src="@drawable/ic_gender_female"/> diff --git a/app/src/main/res/layout/layout_choose_worlds.xml b/app/src/main/res/layout/layout_choose_worlds.xml index 0db6ddb66..74b8b3efa 100644 --- a/app/src/main/res/layout/layout_choose_worlds.xml +++ b/app/src/main/res/layout/layout_choose_worlds.xml @@ -14,7 +14,7 @@ @@ -30,12 +30,14 @@ android:id="@+id/indicator" android:layout_width="match_parent" android:layout_height="40dp" + android:visibility="gone" android:layout_marginBottom="8dp"/> + android:layout_height="match_parent" + android:layout_marginTop="@dimen/dp_20"/> diff --git a/app/src/main/res/layout/layout_recommend_topic_header.xml b/app/src/main/res/layout/layout_recommend_topic_header.xml new file mode 100644 index 000000000..c3119b13a --- /dev/null +++ b/app/src/main/res/layout/layout_recommend_topic_header.xml @@ -0,0 +1,31 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/layout_room_live_finish.xml b/app/src/main/res/layout/layout_room_live_finish.xml index 1aa42427a..4ee1d4003 100644 --- a/app/src/main/res/layout/layout_room_live_finish.xml +++ b/app/src/main/res/layout/layout_room_live_finish.xml @@ -53,7 +53,7 @@ android:layout_below="@id/layout_avatar" android:layout_centerHorizontal="true" android:drawablePadding="5dp" - android:drawableEnd="@drawable/ic_female" + android:drawableEnd="@drawable/ic_gender_female" android:textColor="@color/white" android:textSize="@dimen/sp_15" /> diff --git a/app/src/main/res/layout/layout_room_rank_top_three.xml b/app/src/main/res/layout/layout_room_rank_top_three.xml index 30331e096..53539b87d 100644 --- a/app/src/main/res/layout/layout_room_rank_top_three.xml +++ b/app/src/main/res/layout/layout_room_rank_top_three.xml @@ -63,7 +63,7 @@ android:layout_marginStart="3dp" android:layout_width="wrap_content" android:layout_height="wrap_content" - tools:src="@drawable/ic_female"/> + tools:src="@drawable/ic_gender_female"/> @@ -137,7 +137,7 @@ android:layout_marginStart="3dp" android:layout_width="wrap_content" android:layout_height="wrap_content" - tools:src="@drawable/ic_female"/> + tools:src="@drawable/ic_gender_female"/> @@ -213,7 +213,7 @@ android:layout_marginStart="3dp" android:layout_width="wrap_content" android:layout_height="wrap_content" - tools:src="@drawable/ic_female"/> + tools:src="@drawable/ic_gender_female"/> diff --git a/app/src/main/res/layout/layout_zone_age_sex_view.xml b/app/src/main/res/layout/layout_zone_age_sex_view.xml index 8f6537351..d39d437f5 100644 --- a/app/src/main/res/layout/layout_zone_age_sex_view.xml +++ b/app/src/main/res/layout/layout_zone_age_sex_view.xml @@ -10,7 +10,7 @@ android:id="@+id/sex_iv" android:layout_width="wrap_content" android:layout_height="match_parent" - android:src="@drawable/ic_female" + android:src="@drawable/ic_gender_female" /> diff --git a/app/src/main/res/layout/list_item_dialog_magic.xml b/app/src/main/res/layout/list_item_dialog_magic.xml index 6a1460253..59c4d616d 100644 --- a/app/src/main/res/layout/list_item_dialog_magic.xml +++ b/app/src/main/res/layout/list_item_dialog_magic.xml @@ -54,7 +54,7 @@ android:layout_below="@id/tv_magic_name" android:layout_centerHorizontal="true" android:text="@{item.goldText}" - android:textColor="@{item.isSelect ? @color/color_34EBDE_transparent_65 : @color/white_transparent_30}" + android:textColor="@{item.isSelect ? @color/color_7154EE_transparent_65 : @color/white_transparent_30}" android:textSize="@dimen/dp_9" tools:text="0金币" tools:ignore="SpUsage" /> diff --git a/app/src/main/res/layout/list_item_friend.xml b/app/src/main/res/layout/list_item_friend.xml index 574bbe3da..cd5e03bc5 100644 --- a/app/src/main/res/layout/list_item_friend.xml +++ b/app/src/main/res/layout/list_item_friend.xml @@ -82,7 +82,7 @@ android:layout_width="13dp" android:layout_height="13dp" android:layout_marginEnd="@dimen/dp_5" - tools:src="@drawable/ic_female" + tools:src="@drawable/ic_gender_female" tools:visibility="visible" /> diff --git a/app/src/main/res/layout/list_item_search.xml b/app/src/main/res/layout/list_item_search.xml index 14188cb0c..15aaa3964 100644 --- a/app/src/main/res/layout/list_item_search.xml +++ b/app/src/main/res/layout/list_item_search.xml @@ -51,7 +51,7 @@ android:layout_width="13dp" android:layout_height="13dp" android:layout_marginStart="@dimen/dp_5" - android:src="@drawable/ic_female" /> + android:src="@drawable/ic_gender_female" /> + tools:text="66星球送你一个现金红包" /> diff --git a/app/src/main/res/layout/view_user_info.xml b/app/src/main/res/layout/view_user_info.xml index f015bbf45..d9e0aaa55 100644 --- a/app/src/main/res/layout/view_user_info.xml +++ b/app/src/main/res/layout/view_user_info.xml @@ -19,7 +19,7 @@ diff --git a/app/src/main/res/layout/vs_hiparty_room_first_show_layout.xml b/app/src/main/res/layout/vs_hiparty_room_first_show_layout.xml index f2125800f..04e947b0c 100644 --- a/app/src/main/res/layout/vs_hiparty_room_first_show_layout.xml +++ b/app/src/main/res/layout/vs_hiparty_room_first_show_layout.xml @@ -24,7 +24,7 @@ android:textSize="15dp" android:text="发现更多嗨聊房" android:layout_gravity="center_horizontal|bottom" - android:textColor="@color/color_34EBDE" + android:textColor="@color/color_7154EE" android:layout_height="wrap_content" /> \ No newline at end of file diff --git a/app/src/main/res/mipmap-xhdpi/ic_camera.png b/app/src/main/res/mipmap-xhdpi/ic_camera.png new file mode 100644 index 000000000..31f01409d Binary files /dev/null and b/app/src/main/res/mipmap-xhdpi/ic_camera.png differ diff --git a/app/src/main/res/mipmap-xhdpi/ic_topic_hot.png b/app/src/main/res/mipmap-xhdpi/ic_topic_hot.png new file mode 100644 index 000000000..81042f52d Binary files /dev/null and b/app/src/main/res/mipmap-xhdpi/ic_topic_hot.png differ diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index d7ee1452b..800f0a6eb 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -241,7 +241,7 @@ - + @@ -475,7 +475,7 @@ #E60C0B0D #4Dffb606 #A6ffb606 - #A634EBDE + #A67154EE #A6A6A6 #5E8DEB #12DAE0 @@ -489,16 +489,14 @@ @color/color_FE4C62 #9af5ef - + #7154EE - #34EBDE - #39EBDF #39D0EB #01D39F #7073FF - #8034EBDE + #807154EE #FF8484 #593BED #BDBDBF diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml index a2ad39b7a..ecf99ccbd 100644 --- a/app/src/main/res/values/dimens.xml +++ b/app/src/main/res/values/dimens.xml @@ -211,5 +211,6 @@ 50dp 75dp + 100dp diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 4e0aa58ad..be53d482e 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1,5 +1,5 @@ - 66陪玩 + 66星球 这里什么都没有 网络不给力 网络异常,加载失败 @@ -99,7 +99,7 @@ 设置 房主已下线 - 更多好玩的房间在66陪玩等您哟!去看看! + 更多好玩的房间在66星球等您哟!去看看! 主页 返回 粉丝 @@ -111,7 +111,7 @@ 好友 关注 你还没有添加任何好友哦! \n快去添加好友吧! - 你还没有任何66陪玩粉丝哦! + 你还没有任何66星球粉丝哦! 请先绑定您的支付宝帐号 我的钻石余额 钻石可以用于提现,兑换比率1元=10钻 @@ -144,11 +144,11 @@ - 66陪玩号:%d + 66星球号:%d 我的关注 我的粉丝 - 你还没有关注任何66陪玩好友哦! \n快去添加关注吧! + 你还没有关注任何66星球好友哦! \n快去添加关注吧! 搜索昵称/66号/房间名 在线中… 客服 @@ -242,7 +242,7 @@ 查看对方战绩> 查看我的战绩> - 别气馁,66陪玩永远支持你哦! + 别气馁,66星球永远支持你哦! @@ -324,7 +324,7 @@ %1$d    有效期%2$d天 该车辆已下架,无法购买 开着你的车,驾着你的马 - 来66陪玩尽情驰骋吧! + 来66星球尽情驰骋吧! 座驾商城 %1$s 剩余 @@ -344,7 +344,7 @@ 5 打爆怪兽的奖励将会随着怪兽的实力(血值)增加而增加,例如:打爆一只血值1000的怪兽将获得总价不少于1000金币的金币或者座驾奖励\n - 6 若有疑问,请咨询66陪玩客服微信:1213490\n + 6 若有疑问,请咨询66星球客服微信:1213490\n ·玩法介绍· 确定 @@ -408,7 +408,7 @@ 退出家族 退出家族后您的家族币将无法使用\n重新加入即可还原,你真的要退出吗? 邀请好友 - 【66陪玩】 用声音表达心情,用家族传承微笑。 + 【66星球】 用声音表达心情,用家族传承微笑。 加入 搜索成员ID/昵称 家族管理 @@ -428,7 +428,7 @@ 加入家族身份验证 解散家族 提示 - 需要联系客服才能解散家族哦~\n66陪玩家族客服:%1$s + 需要联系客服才能解散家族哦~\n66星球家族客服:%1$s 联系客服 确认加入"%1$s"吗? 我希望加入贵家族 @@ -520,7 +520,7 @@ 好友 关注 粉丝 - 每天第一次分享免费领红包(不包含分享至66陪玩好友) + 每天第一次分享免费领红包(不包含分享至66星球好友) 好友 微信好友 QQ好友 @@ -547,7 +547,7 @@ 验证码将发送至您绑定的手机\"{0}\",请注意查收 更多 我是兔兔老用户 - 我是66陪玩新用户 + 我是66星球新用户 登录 请输入您耳伴绑定 QQ 的 ID 请输入您的密码 @@ -558,7 +558,7 @@ 亲爱的小孩: 好久不见,翻起曾经一起度过的时光,期待你再次出现在身旁,谢谢你回来! 请输入邀请码(选填) - 输入邀请码,邀请你加入的好友和你都可以获得66陪玩回归计划的超级大礼哦! + 输入邀请码,邀请你加入的好友和你都可以获得66星球回归计划的超级大礼哦! 收下回归礼 头像: @@ -636,7 +636,7 @@ KTV中... loading… - 我是一只小萌新辅导辅导辅导辅导辅导发的辅导辅导费 + 我是一只小萌新 排麦模式 纯净模式 @@ -668,7 +668,7 @@ 社区规范 联系官方 帮助 - 关于66陪玩 + 关于66星球 检查版本 实验室 退出当前账号 @@ -798,7 +798,7 @@ 萝卜X20 领取奖励 萝卜可用于送礼物、购买头饰座驾哦~ - 欢迎您使用66陪玩。我们将通过《隐私政策》和《用户协议》帮助您了解我们收集、使用、存储和共享个人信息的情况,特别是我们所采集的个人信息类型与用途的对应关系。\n\n为了保障产品的正常运行,我们会收集您的部分必要信息。我们可能会收集联络方式、地理位置等个人敏感信息,您有权拒绝向我们提供这些信息。我们不会向第三方共享、提供、转让或者从第三方获取您的个人信息,除非经过您的同意。 + 欢迎您使用66星球。我们将通过《隐私政策》和《用户协议》帮助您了解我们收集、使用、存储和共享个人信息的情况,特别是我们所采集的个人信息类型与用途的对应关系。\n\n为了保障产品的正常运行,我们会收集您的部分必要信息。我们可能会收集联络方式、地理位置等个人敏感信息,您有权拒绝向我们提供这些信息。我们不会向第三方共享、提供、转让或者从第三方获取您的个人信息,除非经过您的同意。 您可以查看完整的%s和%s,如果您同意,请点击下方同意按钮开始接受我们的服务。 《隐私政策》 《用户协议》 @@ -806,7 +806,7 @@ 金币充值 - 66陪玩 + 66星球 如何登录? %s也可登录%s哦 %s 收个徒弟赢金币 @@ -815,7 +815,7 @@ 其他方式登录 账号登录 - 为呵护青少年健康成长,66陪玩推出“青少年模式”,该模式下针对青少年推送精选优化的内容。 + 为呵护青少年健康成长,66星球推出“青少年模式”,该模式下针对青少年推送精选优化的内容。 设置青少年模式 设置青少年模式的开启和关闭的数字密码 青少年模式关闭密码 @@ -823,7 +823,7 @@ QQ登录 请输入昵称 绑定手机号 - 上66陪玩,轻松寻觅对的TA + 上66星球,轻松寻觅对的TA 同意 不同意 @@ -844,12 +844,12 @@ 金币转赠 受赠人 - 请输入手机号/66陪玩号 + 请输入手机号/66星球号 转赠金额 自定义输入 立即转赠 我的转赠记录 - %1$s (66陪玩号: %2$s) + %1$s (66星球号: %2$s) 返回登录页 隐私设置 @@ -871,6 +871,7 @@ 验证码已发送至 昵称: 推荐话题 + 参与话题 diff --git a/app/src/model_customer_server/java/com/yizhuan/xchat_android_core/customer_server/CustomerServerModel.java b/app/src/model_customer_server/java/com/yizhuan/xchat_android_core/customer_server/CustomerServerModel.java index 2ab6e4d55..78efa9ad4 100644 --- a/app/src/model_customer_server/java/com/yizhuan/xchat_android_core/customer_server/CustomerServerModel.java +++ b/app/src/model_customer_server/java/com/yizhuan/xchat_android_core/customer_server/CustomerServerModel.java @@ -105,7 +105,7 @@ public class CustomerServerModel extends BaseModel implements ICustomerServerMod .setIndex(1)); userData.add(new CustomerItemInfo("erbanNo") - .setLabel("66陪玩号:") + .setLabel("66星球号:") .setValue(UserModel.get().getCacheLoginUserInfo().getErbanNo() + "") .setIndex(2)); diff --git a/app/src/model_customer_server/res/layout/activity_login_phone.xml b/app/src/model_customer_server/res/layout/activity_login_phone.xml index 8936ca600..3e0f580ac 100644 --- a/app/src/model_customer_server/res/layout/activity_login_phone.xml +++ b/app/src/model_customer_server/res/layout/activity_login_phone.xml @@ -63,7 +63,7 @@ android:textColor="@color/white" android:background="@null" android:textSize="@dimen/dp_15" - android:text="1569201314" + android:text="" tools:ignore="SpUsage" /> diff --git a/app/src/module_bank_card/res/layout/frg_my_nameplate_common.xml b/app/src/module_bank_card/res/layout/frg_my_nameplate_common.xml new file mode 100644 index 000000000..19976efe0 --- /dev/null +++ b/app/src/module_bank_card/res/layout/frg_my_nameplate_common.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/module_bank_card/res/layout/item_nameplate_normal.xml b/app/src/module_bank_card/res/layout/item_nameplate_normal.xml new file mode 100644 index 000000000..5d11cf09b --- /dev/null +++ b/app/src/module_bank_card/res/layout/item_nameplate_normal.xml @@ -0,0 +1,145 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/module_bank_card/res/values/strings.xml b/app/src/module_bank_card/res/values/strings.xml index a183b7885..90d83e6b0 100644 --- a/app/src/module_bank_card/res/values/strings.xml +++ b/app/src/module_bank_card/res/values/strings.xml @@ -11,7 +11,7 @@ 解除绑定银行卡成功 用户服务协议及隐私政策 - 尊敬的66陪玩用户:\n\u3000\u3000为了更好地保障你的合法权益, + 尊敬的66星球用户:\n\u3000\u3000为了更好地保障你的合法权益, 让你正常使用%s服务,%s公司依照国家法律法规,对支付账户进行实名制管理、 履行反洗钱职责并采取风险防控措施。你需要向%s公司以及合作公司(汇聚支付)提交身份信息、 联系方式、交易信息。\n\u3000\u3000%s公司将严格依据国家法律法规收集、存储、使用你的个人信息,确保信息安全。 diff --git a/app/src/module_community/java/com/yizhuan/erban/community/dynamic/adapter/WorldDynamicAdapter.java b/app/src/module_community/java/com/yizhuan/erban/community/dynamic/adapter/WorldDynamicAdapter.java index 073dac9d4..f94fd1ec0 100644 --- a/app/src/module_community/java/com/yizhuan/erban/community/dynamic/adapter/WorldDynamicAdapter.java +++ b/app/src/module_community/java/com/yizhuan/erban/community/dynamic/adapter/WorldDynamicAdapter.java @@ -154,6 +154,8 @@ public class WorldDynamicAdapter extends BaseQuickAdapter { StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_WORLD_VIEW_WORLD_PAGE, "进入小世界客态页:动态详情"); - MiniWorldGuestPageActivity.start(context, String.valueOf(bean.getWorldId())); + TopicMainActivity.start(context, String.valueOf(bean.getWorldId())); }); //点赞 diff --git a/app/src/module_community/java/com/yizhuan/erban/community/dynamic/view/WorldDynamicFragment.java b/app/src/module_community/java/com/yizhuan/erban/community/dynamic/view/WorldDynamicFragment.java index 451f58e21..7acd89924 100644 --- a/app/src/module_community/java/com/yizhuan/erban/community/dynamic/view/WorldDynamicFragment.java +++ b/app/src/module_community/java/com/yizhuan/erban/community/dynamic/view/WorldDynamicFragment.java @@ -58,16 +58,23 @@ public class WorldDynamicFragment extends BaseMvpFragment() { - @Override - public void accept(WorldDynamicListResult result, String error) { - super.accept(result, error); - refreshLayout.setRefreshing(false); - hideStatus(); - isLoading = false; - if (error != null) { - hideLoadmoreView(); - toast(error); - return; - } - //接口访问正确的处理 - List list = result.getDynamicList(); - nextDynamicId = String.valueOf(result.getNextDynamicId()); - if (list == null) { - list = new ArrayList<>(); - } - if (isRefresh) { - adapter.setNewData(list); - } else { - adapter.addData(list); - } - if (list.size() > 0) { - showLoadmoreView(); - } else { - noMoreData = true; - hideLoadmoreView(); + + + if (mType == TYPE_DYNAMIC_RECOMMEND){ + DynamicModel.get().getDynamicList(worldId, nextDynamicId) + .compose(bindUntilEvent(FragmentEvent.DESTROY_VIEW)) + .subscribe(new DontWarnObserver() { + @Override + public void accept(WorldDynamicListResult result, String error) { + super.accept(result, error); + refreshLayout.setRefreshing(false); + hideStatus(); + isLoading = false; + if (error != null) { + hideLoadmoreView(); + toast(error); + return; + } + //接口访问正确的处理 + List list = result.getDynamicList(); + nextDynamicId = String.valueOf(result.getNextDynamicId()); + if (list == null) { + list = new ArrayList<>(); + } if (isRefresh) { - showNoData(R.drawable.icon_dy_dynamic_empty, - getString(R.string.dy_world_dynamic_list_empty_tips)); + adapter.setNewData(list); + } else { + adapter.addData(list); + } + if (list.size() > 0) { + showLoadmoreView(); + } else { + noMoreData = true; + hideLoadmoreView(); + if (isRefresh) { + showNoData(R.drawable.icon_dy_dynamic_empty, + getString(R.string.dy_world_dynamic_list_empty_tips)); + } + } + //如果第一页访问得到的数据特别少,直接加载下一页 + if (list.size() > 0 && adapter.getItemCount() <= 6) { + loadData(false); } } - //如果第一页访问得到的数据特别少,直接加载下一页 - if (list.size() > 0 && adapter.getItemCount() <= 6) { - loadData(false); + }); + }else { + DynamicModel.get().getLatestDynamicList(worldId, nextDynamicId) + .compose(bindUntilEvent(FragmentEvent.DESTROY_VIEW)) + .subscribe(new DontWarnObserver() { + @Override + public void accept(WorldDynamicListResult result, String error) { + super.accept(result, error); + refreshLayout.setRefreshing(false); + hideStatus(); + isLoading = false; + if (error != null) { + hideLoadmoreView(); + toast(error); + return; + } + //接口访问正确的处理 + List list = result.getDynamicList(); + nextDynamicId = String.valueOf(result.getNextDynamicId()); + if (list == null) { + list = new ArrayList<>(); + } + if (isRefresh) { + adapter.setNewData(list); + } else { + adapter.addData(list); + } + if (list.size() > 0) { + showLoadmoreView(); + } else { + noMoreData = true; + hideLoadmoreView(); + if (isRefresh) { + showNoData(R.drawable.icon_dy_dynamic_empty, + getString(R.string.dy_world_dynamic_list_empty_tips)); + } + } + //如果第一页访问得到的数据特别少,直接加载下一页 + if (list.size() > 0 && adapter.getItemCount() <= 6) { + loadData(false); + } } - } - }); + }); + } + } private void deleteDynamic(int pos) { diff --git a/app/src/module_community/java/com/yizhuan/erban/community/publish/view/PublishActivity.java b/app/src/module_community/java/com/yizhuan/erban/community/publish/view/PublishActivity.java index dbd837653..19d6722c6 100644 --- a/app/src/module_community/java/com/yizhuan/erban/community/publish/view/PublishActivity.java +++ b/app/src/module_community/java/com/yizhuan/erban/community/publish/view/PublishActivity.java @@ -97,10 +97,6 @@ public class PublishActivity extends BaseMvpActivity 0) { // 发布到小世界 - - if (getMvpPresenter().isInWorld()) { - publish(); - } else { - getDialogManager().showOkCancelDialog("提示", "加入小世界就可以发布啦~", "加入并发布", - "我再想想", new DialogManager.OkCancelDialogListener() { - @Override - public void onOk() { - StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_SQUARE_JOIN_WORLD, - "发布动态点击发布时弹窗-加入并发布"); - publish(); // 发布接口有自动加入小世界功能 - } - - @Override - public void onCancel() { - StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_SQUARE_JOIN_WORLD, - "发布动态点击发布时弹窗-我再想想"); - } - }); - } - - } else {// 发布到动态广场 +// long worldId = getMvpPresenter().getWorldId(); +// if (worldId > 0) { // 发布到小世界 +// +// if (getMvpPresenter().isInWorld()) { +// publish(); +// } else { +// getDialogManager().showOkCancelDialog("提示", "加入小世界就可以发布啦~", "加入并发布", +// "我再想想", new DialogManager.OkCancelDialogListener() { +// @Override +// public void onOk() { +// StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_SQUARE_JOIN_WORLD, +// "发布动态点击发布时弹窗-加入并发布"); +// publish(); // 发布接口有自动加入小世界功能 +// } +// +// @Override +// public void onCancel() { +// StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_SQUARE_JOIN_WORLD, +// "发布动态点击发布时弹窗-我再想想"); +// } +// }); +// } +// +// } else {// 发布到动态广场 publish(); - } +// } break; case R.id.iv_close: @@ -307,10 +301,6 @@ public class PublishActivity extends BaseMvpActivity implements IMiniWorldCategoryView{ public static final String EXTRA_SQUARE_TYPE = "square_type"; @@ -58,10 +82,18 @@ public class SquareDynamicFragment extends BaseFragment { RecyclerView recyclerView; @BindView(R.id.refresh_layout) SwipeRefreshLayout refreshLayout; - + TextView tvTitleTopic; + RecyclerView rvTopic; /** * 刷新的时候,传null */ + /** + * 话题类型ID + * 全部 0 + * 推荐 1 + */ + private static final String TOPIC_CATEGORY_ID = "1"; + private String nextDynamicId; private int page = 1; @@ -74,7 +106,13 @@ public class SquareDynamicFragment extends BaseFragment { private View footerView; - private int squareType = SquareFragment.TAB_TYPE_RECOMMEND; + private View headerView; + + private int squareType; + + private RecommendTopicListAdapter mRecommendTopicAdapter; + + private long mLastOpen; public static SquareDynamicFragment newInstance(int type) { @@ -85,6 +123,16 @@ public class SquareDynamicFragment extends BaseFragment { return fragment; } + @Override + public void onFindViews() { + + } + + @Override + public void onSetListener() { + + } + @Override public void initiate() { Bundle bundle = getArguments(); @@ -94,12 +142,29 @@ public class SquareDynamicFragment extends BaseFragment { recyclerView.setLayoutManager(new LinearLayoutManager(mContext)); adapter = new SquareDynamicAdapter(getActivity(), squareType); //添加分割线 - HorizontalDecoration decoration = new HorizontalDecoration(UIUtil.dip2px(mContext, 15), true, true); - decoration.setBottomPx(UIUtil.dip2px(mContext, 45)); - recyclerView.addItemDecoration(decoration); +// HorizontalDecoration decoration = new HorizontalDecoration(UIUtil.dip2px(mContext, 15), true, true); +// decoration.setBottomPx(UIUtil.dip2px(mContext, 45)); +// recyclerView.addItemDecoration(decoration); + + recyclerView.addItemDecoration(new RecyclerView.ItemDecoration() { + + @Override + public void getItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state) { + super.getItemOffsets(outRect, view, parent, state); + int position = parent.getChildLayoutPosition(view); + int bottom = SizeUtils.dp2px(getContext(), 10); + int top = SizeUtils.dp2px(getContext(), 5); + + outRect.set(0, top, 0, bottom); + } + }); + + + if (squareType == SquareFragment.TAB_TYPE_RECOMMEND){ + initHeader(); + } footerView = LayoutInflater.from(mContext).inflate(R.layout.dy_footer_loadmore, null); adapter.addFooterView(footerView); - recyclerView.setAdapter(adapter); recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() { @@ -145,15 +210,23 @@ public class SquareDynamicFragment extends BaseFragment { StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_WORLD_SHARE_MOMENTS, "分享动态-区分-动态广场"); new ShareDynamicHelper(getActivity()).share(bean); + } else if (view.getId() == R.id.iv_in_room){ + openRoom(bean.getInRoomId()); } }); refreshLayout = mView.findViewById(R.id.refresh_layout); refreshLayout.setOnRefreshListener(() -> { loadData(true); + if (squareType == SquareFragment.TAB_TYPE_RECOMMEND){ + getMvpPresenter().getMiniWorldList(TOPIC_CATEGORY_ID, 1); + } }); loadData(true); + if (squareType == SquareFragment.TAB_TYPE_RECOMMEND){ + getMvpPresenter().getMiniWorldList(TOPIC_CATEGORY_ID, 1); + } } private void loadData(boolean isRefresh) { @@ -180,12 +253,7 @@ public class SquareDynamicFragment extends BaseFragment { return result; }); } else { - single = SquareModel.get().getRecommendDynamics(page, CommunityConstant.DYNAMIC_PAGE_SIZE) - .map(list -> { - WorldDynamicListResult result = new WorldDynamicListResult(); - result.setDynamicList(list); - return result; - }); + single = SquareModel.get().getLatestDynamics(page, CommunityConstant.DYNAMIC_PAGE_SIZE,nextDynamicId); } single.compose(bindUntilEvent(FragmentEvent.DESTROY_VIEW)) @@ -288,6 +356,97 @@ public class SquareDynamicFragment extends BaseFragment { }); } + private void initHeader(){ + headerView = LayoutInflater.from(mContext).inflate(R.layout.layout_recommend_topic_header, null); + tvTitleTopic = headerView.findViewById(R.id.tv_title_topic); + tvTitleTopic.setOnClickListener(v -> { + AllTopicActivity.start(getActivity(), 0); + }); + + rvTopic = headerView.findViewById(R.id.recycler_view); + initRecyclerView(headerView); + adapter.addHeaderView(headerView); + + } + + private void initRecyclerView(View headerView) { + int normalDividerSize = SizeUtils.dp2px(getContext(), 5); + RecyclerView recyclerView = headerView.findViewById(R.id.rv_topic); + LinearLayoutManager layoutManager = new LinearLayoutManager(getContext()); + layoutManager.setOrientation(LinearLayoutManager.HORIZONTAL); + recyclerView.setLayoutManager(layoutManager); + recyclerView.addItemDecoration(new RecyclerView.ItemDecoration() { + + @Override + public void getItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state) { + super.getItemOffsets(outRect, view, parent, state); + int position = parent.getChildLayoutPosition(view); + int right = normalDividerSize; + + outRect.set(0, 0, right, 0); + } + }); + + List list = new ArrayList<>(); + for (int i = 0; i < 100; i++) { + list.add(new MiniWorldInfo()); + } + + mRecommendTopicAdapter = new RecommendTopicListAdapter(list); + mRecommendTopicAdapter.setEnableLoadMore(false); + mRecommendTopicAdapter.setOnItemClickListener(new DoubleClickCheckListener() { + @Override + protected void onItemClickSingle(BaseQuickAdapter adapter, View view, int position) { + MiniWorldInfo miniWorldInfo = mRecommendTopicAdapter.getItem(position); + if (miniWorldInfo == null) { + return; + } + StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_WORLD_VIEW_WORLD_PAGE, + "进入小世界客态页:小世界广场"); + TopicMainActivity.start(mContext, String.valueOf(miniWorldInfo.getId())); + } + }); + recyclerView.setAdapter(mRecommendTopicAdapter); + } + + @SuppressWarnings("CheckResult") + private void openRoom(long uid) { + if (System.currentTimeMillis() - mLastOpen < 1000) { + return; + } + + if (mContext instanceof BaseMvpActivity) { + mLastOpen = System.currentTimeMillis(); + BaseMvpActivity activity = (BaseMvpActivity) mContext; + activity.getDialogManager().showProgressDialog(mContext, "请稍后..."); + + + AvRoomModel.get() + .getUserRoom(uid) + .compose(RxHelper.singleMainResult()) + .compose(RxHelper.handleSchAndExce()) + .compose(activity.bindToLifecycle()) + .subscribe(new BiConsumer() { + @Override + public void accept(RoomInfo roomInfo, Throwable throwable) throws Exception { + if (throwable == null) { + if (roomInfo != null && roomInfo.getUid() > 0) { + AVRoomActivity.start(mContext, roomInfo.getUid(), roomInfo.getType()); + } else { + SingleToastUtil.showToast("对方不在房间内"); + } + } else { + SingleToastUtil.showToast("可能暂时不在房间哟"); + } + activity.getDialogManager().dismissDialog(); + } + }); + + } else { + SingleToastUtil.showToast("出现异常"); + } + } + public void scrollToTop() { recyclerView.post(new Runnable() { @Override @@ -325,6 +484,11 @@ public class SquareDynamicFragment extends BaseFragment { return mView; } + @Override + public int getRootLayoutId() { + return 0; + } + @Override public void onDestroyView() { EventBus.getDefault().unregister(this); @@ -332,4 +496,18 @@ public class SquareDynamicFragment extends BaseFragment { unbinder.unbind(); } + @Override + public void showRetry() { + + } + + @Override + public void onGetMiniWorldList(List miniWorldInfos, boolean isRefresh, boolean isNextData) { + mRecommendTopicAdapter.replaceData(miniWorldInfos); + } + + @Override + public void showNoMoreData() { + + } } diff --git a/app/src/module_community/java/com/yizhuan/erban/community/square/SquareFragment.java b/app/src/module_community/java/com/yizhuan/erban/community/square/SquareFragment.java index 44347edcc..7f7c5072c 100644 --- a/app/src/module_community/java/com/yizhuan/erban/community/square/SquareFragment.java +++ b/app/src/module_community/java/com/yizhuan/erban/community/square/SquareFragment.java @@ -18,8 +18,7 @@ import com.yizhuan.erban.community.publish.view.PublishActivity; import com.yizhuan.erban.home.adapter.TopMagicIndicatorAdapter; import com.yizhuan.erban.home.fragment.CommunityNoticeAct; import com.yizhuan.erban.home.fragment.FindTabFragment; -import com.yizhuan.erban.home.view.IFindTabFragmentView; -import com.yizhuan.erban.ui.indicator_impl.IndicatorHelper; +import com.yizhuan.erban.miniworld.activity.AllTopicActivity; import com.yizhuan.erban.ui.widget.OnPageSelectedListener; import com.yizhuan.erban.ui.widget.magicindicator.MagicIndicator; import com.yizhuan.erban.ui.widget.magicindicator.ViewPagerHelper; @@ -27,6 +26,8 @@ import com.yizhuan.erban.ui.widget.magicindicator.buildins.commonnavigator.Commo import com.yizhuan.xchat_android_core.statistic.StatisticManager; import com.yizhuan.xchat_android_core.statistic.protocol.StatisticsProtocol; +import org.greenrobot.eventbus.EventBus; + import java.util.ArrayList; import java.util.List; @@ -37,7 +38,8 @@ import butterknife.Unbinder; /** * create by lvzebiao @2020/1/7 */ -public class SquareFragment extends BaseFragment implements TopMagicIndicatorAdapter.OnItemSelectListener, View.OnClickListener{ + +public class SquareFragment extends BaseFragment implements TopMagicIndicatorAdapter.OnItemSelectListener, View.OnClickListener{ public static final String TAG = "SquareFragment"; /** * 关注 @@ -64,6 +66,8 @@ public class SquareFragment extends BaseFragment implements TopMagicIndicatorAda @BindView(R.id.fl_contact_list) FrameLayout flContactList; + + public static SquareFragment newInstance() { return new SquareFragment(); } @@ -81,7 +85,7 @@ public class SquareFragment extends BaseFragment implements TopMagicIndicatorAda tagList.add(getResources().getString(R.string.dys_tab_attent)); } else if (integer == TAB_TYPE_RECOMMEND) { tagList.add(getResources().getString(R.string.dys_tab_recommend)); - } else { + } else if (integer == TAB_TYPE_NEW){ tagList.add(getResources().getString(R.string.dys_tab_new)); } fragmentList.add(SquareDynamicFragment.newInstance(integer)); @@ -142,7 +146,6 @@ public class SquareFragment extends BaseFragment implements TopMagicIndicatorAda @Override public void onSetListener() { - super.onSetListener(); if (ivSquarePublish != null) { ivSquarePublish.setOnClickListener(this); } @@ -162,7 +165,6 @@ public class SquareFragment extends BaseFragment implements TopMagicIndicatorAda return mView; } - @Override public void onDestroyView() { super.onDestroyView(); @@ -185,4 +187,6 @@ public class SquareFragment extends BaseFragment implements TopMagicIndicatorAda break; } } + } + diff --git a/app/src/module_community/java/com/yizhuan/erban/community/square/adapter/SquareDynamicAdapter.java b/app/src/module_community/java/com/yizhuan/erban/community/square/adapter/SquareDynamicAdapter.java index e460abcf1..a229316da 100644 --- a/app/src/module_community/java/com/yizhuan/erban/community/square/adapter/SquareDynamicAdapter.java +++ b/app/src/module_community/java/com/yizhuan/erban/community/square/adapter/SquareDynamicAdapter.java @@ -25,6 +25,8 @@ import com.yizhuan.erban.community.widget.DynamicNickDetailWidget; import com.yizhuan.erban.community.widget.ExpandableTextView; import com.yizhuan.erban.community.widget.GridImageWidget; import com.yizhuan.erban.miniworld.activity.MiniWorldGuestPageActivity; +import com.yizhuan.erban.miniworld.activity.TopicMainActivity; +import com.yizhuan.erban.miniworld.presenter.MiniWorldCategoryPresenter; import com.yizhuan.erban.ui.utils.ImageLoadUtilsV2; import com.yizhuan.erban.ui.widget.magicindicator.buildins.UIUtil; import com.yizhuan.erban.utils.TimeUiUtils; @@ -35,11 +37,13 @@ import com.yizhuan.xchat_android_core.statistic.StatisticManager; import com.yizhuan.xchat_android_core.statistic.protocol.StatisticsProtocol; import com.yizhuan.xchat_android_core.utils.net.DontWarnObserver; import com.yizhuan.xchat_android_core.utils.net.RxHelper; +import com.yizhuan.xchat_android_library.base.factory.CreatePresenter; import com.yizhuan.xchat_android_library.utils.SingleToastUtil; /** * create by lvzebiao @2019/11/13 */ +@CreatePresenter(MiniWorldCategoryPresenter.class) public class SquareDynamicAdapter extends BaseQuickAdapter { private SparseBooleanArray mCollapsedStatus = new SparseBooleanArray(); @@ -90,7 +94,6 @@ public class SquareDynamicAdapter extends BaseQuickAdapter UIHelper.showUserInfoAct(context, item.getUid()); helper.getView(R.id.iv_avatar).setOnClickListener(userInfoActClick); @@ -204,27 +208,11 @@ public class SquareDynamicAdapter extends BaseQuickAdapter 0) { -// tvAge.setVisibility(VISIBLE); -// tvAge.setText(String.valueOf(info.getAge())); -// paddingH = UIUtil.dip2px(context, 5); -// } else { -// tvAge.setVisibility(GONE); -// tvAge.setText(""); -// paddingH = 0; -// } + if (info.getAge() > 0) { + llGenderAge.setVisibility(VISIBLE); + tvAge.setVisibility(VISIBLE); + tvAge.setText(String.valueOf(info.getAge())); + ivGender.setVisibility(GONE); + } else { + ivGender.setVisibility(VISIBLE); + tvAge.setVisibility(GONE); + llGenderAge.setVisibility(GONE); + tvAge.setText(""); + } // llGenderAge.setPadding(paddingH, 0, paddingH, 0); ivGender.setImageResource(info.getGender() == 1 ? - R.drawable.shape_male_corner : R.drawable.ic_female); + R.drawable.ic_gender_male : R.drawable.ic_gender_female); + llGenderAge.setBackgroundResource(info.getGender() == 1 ? + R.drawable.ic_male_community_notice : R.drawable.ic_female_age_community_notice); -// llGenderAge.setBackgroundResource(info.getGender() == 1 ? -// R.drawable.shape_male_corner : R.drawable.shape_female_corner); -// -// ivGender.setImageResource(info.getGender() == 1 ? -// R.drawable.icon_dy_list_male : R.drawable.icon_dy_list_female); - //官 - ivUserOfficial.setVisibility(info.isOfficial() ? VISIBLE : GONE); - //新 - ivUserNew.setVisibility(info.isNewUser() ? VISIBLE : GONE); - //贵族 - GlideApp.with(ivUserNobleLevel.getContext()).clear(ivUserNobleLevel); - if (info.getNobleId() > 0) { - ivUserNobleLevel.setVisibility(VISIBLE); - NobleUtil.loadResource(NobleUtil.getBadgeByLevel(info.getNobleId()), - ivUserNobleLevel); + //财富等级 + ImageLoadUtils.loadImage(context, info.getExperLevelPic(), ivUserWealthLevel); + //魅力等级 + ImageLoadUtils.loadImage(context, info.getCharmLevelPic(), ivUserCharmLevel); + //铭牌 +// ImageLoadUtils.loadImage(context, info.getNameplateIcon(), ivUserNamePlate); + + if (info.getNameplateWord() != null) { + inOfficialMask.setVisibility(View.VISIBLE); + TextView tvOfficialMask = inOfficialMask.findViewById(R.id.tv_official_mask); + if (tvOfficialMask != null) { + tvOfficialMask.setText(info.getNameplateWord()); + } + + ImageView ivOfficialMask = inOfficialMask.findViewById(R.id.iv_official_mask); + if (ivOfficialMask != null) { + NobleUtil.loadResource(info.getNameplatePic(), ivOfficialMask); + } } else { - ivUserNobleLevel.setVisibility(GONE); + inOfficialMask.setVisibility(View.GONE); } - } } diff --git a/app/src/module_community/res/drawable-xhdpi/ic_dy_in_room.png b/app/src/module_community/res/drawable-xhdpi/ic_dy_in_room.png new file mode 100644 index 000000000..aeca96bbc Binary files /dev/null and b/app/src/module_community/res/drawable-xhdpi/ic_dy_in_room.png differ diff --git a/app/src/module_community/res/drawable-xhdpi/ic_female_age_community_notice.png b/app/src/module_community/res/drawable-xhdpi/ic_female_age_community_notice.png index ce56bf189..f6bb44d5b 100644 Binary files a/app/src/module_community/res/drawable-xhdpi/ic_female_age_community_notice.png and b/app/src/module_community/res/drawable-xhdpi/ic_female_age_community_notice.png differ diff --git a/app/src/module_community/res/drawable-xhdpi/ic_male_community_notice.png b/app/src/module_community/res/drawable-xhdpi/ic_male_community_notice.png index 0140166f8..8656a04cf 100644 Binary files a/app/src/module_community/res/drawable-xhdpi/ic_male_community_notice.png and b/app/src/module_community/res/drawable-xhdpi/ic_male_community_notice.png differ diff --git a/app/src/module_community/res/drawable-xhdpi/ic_topic_close.png b/app/src/module_community/res/drawable-xhdpi/ic_topic_close.png new file mode 100644 index 000000000..825e49056 Binary files /dev/null and b/app/src/module_community/res/drawable-xhdpi/ic_topic_close.png differ diff --git a/app/src/module_community/res/drawable-xhdpi/icon_dy_dynamic_publisher.png b/app/src/module_community/res/drawable-xhdpi/icon_dy_dynamic_publisher.png index 33ca1ba97..49491e058 100644 Binary files a/app/src/module_community/res/drawable-xhdpi/icon_dy_dynamic_publisher.png and b/app/src/module_community/res/drawable-xhdpi/icon_dy_dynamic_publisher.png differ diff --git a/app/src/module_community/res/drawable-xhdpi/icon_dy_list_comment.png b/app/src/module_community/res/drawable-xhdpi/icon_dy_list_comment.png index 64e4375db..b1465d905 100644 Binary files a/app/src/module_community/res/drawable-xhdpi/icon_dy_list_comment.png and b/app/src/module_community/res/drawable-xhdpi/icon_dy_list_comment.png differ diff --git a/app/src/module_community/res/drawable-xhdpi/icon_dy_list_like.png b/app/src/module_community/res/drawable-xhdpi/icon_dy_list_like.png index 490555881..1d167021e 100644 Binary files a/app/src/module_community/res/drawable-xhdpi/icon_dy_list_like.png and b/app/src/module_community/res/drawable-xhdpi/icon_dy_list_like.png differ diff --git a/app/src/module_community/res/drawable-xhdpi/icon_dy_list_like_false.png b/app/src/module_community/res/drawable-xhdpi/icon_dy_list_like_false.png index 1842308d1..dfebc71d0 100644 Binary files a/app/src/module_community/res/drawable-xhdpi/icon_dy_list_like_false.png and b/app/src/module_community/res/drawable-xhdpi/icon_dy_list_like_false.png differ diff --git a/app/src/module_community/res/drawable-xhdpi/icon_dy_list_share.png b/app/src/module_community/res/drawable-xhdpi/icon_dy_list_share.png index bdc860cbc..494ca9f4c 100644 Binary files a/app/src/module_community/res/drawable-xhdpi/icon_dy_list_share.png and b/app/src/module_community/res/drawable-xhdpi/icon_dy_list_share.png differ diff --git a/app/src/module_community/res/drawable/shape_dy_publish_mini_type.xml b/app/src/module_community/res/drawable/bg_dynamic_topic.xml similarity index 87% rename from app/src/module_community/res/drawable/shape_dy_publish_mini_type.xml rename to app/src/module_community/res/drawable/bg_dynamic_topic.xml index 33e4800c8..aedad7a76 100644 --- a/app/src/module_community/res/drawable/shape_dy_publish_mini_type.xml +++ b/app/src/module_community/res/drawable/bg_dynamic_topic.xml @@ -2,7 +2,7 @@ \ No newline at end of file diff --git a/app/src/module_community/res/layout-v28/activity_publish.xml b/app/src/module_community/res/layout-v28/activity_publish.xml new file mode 100644 index 000000000..1ae697458 --- /dev/null +++ b/app/src/module_community/res/layout-v28/activity_publish.xml @@ -0,0 +1,214 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/module_community/res/layout/activity_publish.xml b/app/src/module_community/res/layout/activity_publish.xml index c93675457..d3d9cd0cc 100644 --- a/app/src/module_community/res/layout/activity_publish.xml +++ b/app/src/module_community/res/layout/activity_publish.xml @@ -14,16 +14,18 @@ @@ -52,11 +55,23 @@ android:layout_height="wrap_content" android:layout_marginEnd="@dimen/dp_20" android:text="0/500" - android:textColor="@color/color_B3B3B3" - android:textSize="@dimen/sp_12" + android:textColor="@color/color_999999" + android:textSize="@dimen/sp_13" app:layout_constraintTop_toBottomOf="@id/et_content" app:layout_constraintEnd_toEndOf="parent"/> + + @@ -77,7 +93,7 @@ android:layout_width="match_parent" android:layout_height="0dp" app:layout_constraintBottom_toTopOf="@+id/tv_tips" - app:layout_constraintTop_toBottomOf="@id/tv_input_limit" > + app:layout_constraintTop_toBottomOf="@id/view" > + android:visibility="gone" + tools:visibility="visible" + android:background="@drawable/bg_dynamic_topic" + > + android:layout_height="match_parent" + android:textSize="@dimen/dp_12" + android:paddingEnd="10dp" + android:paddingStart="0dp" + android:src="@drawable/ic_topic_close" + /> + android:paddingStart="@dimen/dp_10" + android:paddingEnd="@dimen/dp_10" + android:paddingTop="@dimen/dp_3" + android:paddingBottom="@dimen/dp_3" + tools:visibility="gone" + android:background="@drawable/bg_dynamic_topic_f4f4f4" + android:text="添加话题"/> + - - - - - - - - - - - - @@ -58,7 +61,7 @@ android:id="@+id/msg_number" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_gravity="center_horizontal" + android:layout_gravity="right" android:layout_marginTop="5dp" android:gravity="center" android:visibility="invisible" @@ -67,30 +70,11 @@ - - - + android:layout_marginEnd="@dimen/dp_15" + android:layout_marginBottom="@dimen/dp_15" + > diff --git a/app/src/module_community/res/layout/head_dynamic_detail.xml b/app/src/module_community/res/layout/head_dynamic_detail.xml index bd633aca9..d08908806 100644 --- a/app/src/module_community/res/layout/head_dynamic_detail.xml +++ b/app/src/module_community/res/layout/head_dynamic_detail.xml @@ -59,14 +59,7 @@ tools:visibility="visible" layout="@layout/layout_official_mask" /> - + @@ -151,7 +144,7 @@ android:layout_height="@dimen/dp_25" android:layout_gravity="center_vertical" android:layout_marginStart="@dimen/dp_20" - android:background="@drawable/shape_dy_publish_mini_type" + android:background="@drawable/bg_dynamic_topic" android:orientation="horizontal" android:paddingStart="@dimen/dp_11" android:paddingEnd="@dimen/dp_11" @@ -185,10 +178,24 @@ android:text="@string/dys_jump_mini_world" android:textColor="@color/color_999999" android:textSize="@dimen/sp_12" + android:visibility="gone" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toTopOf="parent" /> + + @@ -58,7 +57,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="@color/color_999999" - android:textSize="15sp" + android:textSize="@dimen/sp_13" android:maxLines="1" android:maxEms="6" android:ellipsize="end" @@ -69,7 +68,7 @@ android:layout_width="13dp" android:layout_height="13dp" android:layout_marginStart="4dp" - tools:src="@drawable/ic_female" + tools:src="@drawable/ic_gender_female" tools:visibility="visible" /> @@ -103,7 +102,7 @@ android:layout_height="wrap_content" android:maxLines="6" android:ellipsize="end" - android:textSize="15sp" + android:textSize="@dimen/sp_13" android:textColor="@color/color_333333" android:layout_marginTop="8dp" tools:text="啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦"/> @@ -114,7 +113,7 @@ android:layout_height="wrap_content" android:maxLines="6" android:ellipsize="end" - android:textSize="12sp" + android:textSize="@dimen/sp_11" android:textColor="@color/color_999999" android:layout_marginTop="10.5dp" android:layout_marginBottom="15dp" diff --git a/app/src/module_community/res/layout/item_dynamic_image.xml b/app/src/module_community/res/layout/item_dynamic_image.xml index 6667a034a..98a0400c4 100644 --- a/app/src/module_community/res/layout/item_dynamic_image.xml +++ b/app/src/module_community/res/layout/item_dynamic_image.xml @@ -4,7 +4,8 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_marginStart="@dimen/dp_10" + android:layout_marginStart="@dimen/dp_5" + android:layout_marginEnd="@dimen/dp_5" android:layout_marginBottom="@dimen/dp_10" tools:layout_height="80dp"> diff --git a/app/src/module_community/res/layout/item_label_mini_world.xml b/app/src/module_community/res/layout/item_label_mini_world.xml index b2f42ac32..ce9b0ebe7 100644 --- a/app/src/module_community/res/layout/item_label_mini_world.xml +++ b/app/src/module_community/res/layout/item_label_mini_world.xml @@ -6,7 +6,7 @@ android:layout_height="@dimen/dp_25" android:paddingStart="@dimen/dp_11" android:paddingEnd="@dimen/dp_11" - android:background="@drawable/shape_dy_publish_mini_type" + android:background="@drawable/bg_dynamic_topic" android:drawableStart="@drawable/icon_dy_miniworld" android:drawablePadding="6.5dp" android:gravity="center" diff --git a/app/src/module_community/res/layout/item_square_dynamic.xml b/app/src/module_community/res/layout/item_square_dynamic.xml index d7a628538..4f80d9819 100644 --- a/app/src/module_community/res/layout/item_square_dynamic.xml +++ b/app/src/module_community/res/layout/item_square_dynamic.xml @@ -4,9 +4,9 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_marginStart="@dimen/dp_15" - android:layout_marginEnd="@dimen/dp_15" - android:background="@drawable/shape_bg_square_list" + android:layout_marginStart="@dimen/dp_10" + android:layout_marginEnd="@dimen/dp_10" + android:background="@drawable/bg_corner_shadow_12" android:orientation="vertical"> @@ -38,41 +38,31 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="@dimen/dp_5" - android:layout_marginTop="@dimen/dp_7" app:layout_constraintStart_toEndOf="@id/iv_head_wear" - app:layout_constraintTop_toTopOf="parent" /> + app:layout_constraintTop_toTopOf="@id/iv_avatar" + app:layout_constraintBottom_toBottomOf="@id/iv_avatar"/> - - - - - - - - - + android:src="@drawable/ic_dy_in_room" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintTop_toTopOf="@id/widget_nick_detail" + android:layout_marginEnd="@dimen/dp_20" + /> + @@ -80,9 +70,9 @@ android:id="@+id/etv_content" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_marginStart="@dimen/dp_25" + android:layout_marginStart= "@dimen/dp_20" + android:layout_marginEnd="@dimen/dp_20" android:layout_marginTop="@dimen/dp_6" - android:layout_marginEnd="@dimen/dp_25" android:orientation="vertical" app:animAlphaStart="1" app:collapseIndicator="@string/collapse" @@ -121,8 +111,8 @@ android:id="@+id/widget_image" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_marginStart="@dimen/dp_15" - android:layout_marginEnd="@dimen/dp_15" + android:layout_marginStart="@dimen/dp_20" + android:layout_marginEnd="@dimen/dp_20" app:layout_constraintTop_toBottomOf="@id/etv_content" tools:layout_height="100dp" /> @@ -130,8 +120,8 @@ android:id="@+id/layout_root_mini_world" android:layout_width="match_parent" android:layout_height="28dp" - android:layout_marginStart="@dimen/dp_15" - android:layout_marginEnd="@dimen/dp_15" + android:layout_marginStart="@dimen/dp_20" + android:layout_marginEnd="@dimen/dp_20" android:layout_marginBottom="16.5dp" android:layout_marginTop="@dimen/dp_5" android:orientation="horizontal" @@ -143,10 +133,11 @@ android:layout_width="wrap_content" android:layout_height="@dimen/dp_18" android:layout_gravity="center_vertical" - android:background="@drawable/shape_dy_publish_mini_type" + android:background="@drawable/bg_dynamic_topic" android:orientation="horizontal" android:paddingStart="@dimen/dp_11" android:paddingEnd="@dimen/dp_11" + android:gravity="center_vertical" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent"> @@ -163,22 +154,9 @@ android:textColor="@color/color_7154EE" android:textSize="@dimen/sp_12" tools:text="小世界名称小世界名称小世界名称" /> - - + @@ -186,7 +164,8 @@ android:id="@+id/rl_option" android:layout_width="match_parent" android:layout_height="@dimen/dp_30" - android:layout_marginStart="@dimen/dp_15" + android:layout_marginStart="@dimen/dp_20" + android:layout_marginEnd="@dimen/dp_20" android:layout_marginBottom="@dimen/dp_10" android:orientation="horizontal" app:layout_constraintBottom_toBottomOf="parent" @@ -195,7 +174,7 @@ @@ -212,7 +191,7 @@ android:id="@+id/tv_like" android:layout_width="0dp" android:layout_height="@dimen/dp_30" - android:layout_marginStart="6.5dp" + android:layout_marginStart="2.5dp" android:layout_weight="1" android:gravity="center_vertical" android:textColor="@color/color_999999" @@ -222,7 +201,7 @@ - - - - - - - - - + tools:text="刚刚" /> @@ -88,13 +64,13 @@ android:id="@+id/etv_content" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_marginLeft="@dimen/dp_20" android:layout_marginTop="@dimen/dp_6" - android:layout_marginRight="@dimen/dp_20" android:orientation="vertical" app:animAlphaStart="1" app:collapseIndicator="@string/collapse" app:expandIndicator="@string/expand" + android:layout_marginStart="@dimen/dp_15" + android:layout_marginEnd="@dimen/dp_15" app:expandToggleOnTextClick="false" app:expandToggleType="TextView" app:layout_constraintTop_toBottomOf="@id/cl_user_info" @@ -102,7 +78,7 @@ + /> + + + + + + + + + + + android:layout_marginStart="@dimen/dp_15" + android:layout_marginEnd="@dimen/dp_15" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintTop_toBottomOf="@id/layout_root_mini_world" + > + > @@ -216,34 +237,21 @@ android:layout_width="@dimen/dp_22" android:layout_height="@dimen/dp_22" android:layout_gravity="center_vertical" - android:gravity="center_vertical" + android:scaleType="centerInside" android:src="@drawable/icon_dy_list_share" - android:textColor="@color/color_AFAFB3" - android:textSize="@dimen/sp_13" /> + /> + + - - - - \ No newline at end of file diff --git a/app/src/module_community/res/layout/item_worlds_choose.xml b/app/src/module_community/res/layout/item_worlds_choose.xml index 29e2981b5..3b6a95175 100644 --- a/app/src/module_community/res/layout/item_worlds_choose.xml +++ b/app/src/module_community/res/layout/item_worlds_choose.xml @@ -9,14 +9,14 @@ @@ -28,7 +28,7 @@ android:layout_marginTop="5dp" android:layout_marginStart="12dp" android:textColor="@color/color_333333" - android:textSize="15sp" + android:textSize="@dimen/sp_15" android:maxLines="1" android:ellipsize="end" tools:text="明媚的早晨明媚的早晨明媚的早晨明媚的早晨" @@ -37,17 +37,27 @@ + + \ No newline at end of file diff --git a/app/src/module_community/res/layout/layout_dy_nick_detail.xml b/app/src/module_community/res/layout/layout_dy_nick_detail.xml index ed715e44f..4d030e569 100644 --- a/app/src/module_community/res/layout/layout_dy_nick_detail.xml +++ b/app/src/module_community/res/layout/layout_dy_nick_detail.xml @@ -19,43 +19,39 @@ app:layout_constraintTop_toTopOf="parent" tools:text="炮猫昵称" /> - - - - - - - - - - - - - - + - - - - - - - - - - - - - - + - + + + - - + > + + + \ No newline at end of file diff --git a/app/src/module_community/res/values/strings.xml b/app/src/module_community/res/values/strings.xml index d5b89067a..d9b55e929 100644 --- a/app/src/module_community/res/values/strings.xml +++ b/app/src/module_community/res/values/strings.xml @@ -2,7 +2,7 @@ 图文发布 发布 - 说点什么吧… + 记录你此刻生活,分享给有趣的人看... 展开 收起 diff --git a/app/src/module_labour_union/java/com/yizhuan/erban/module_hall/hall/activity/GroupMemberListActivity.java b/app/src/module_labour_union/java/com/yizhuan/erban/module_hall/hall/activity/GroupMemberListActivity.java index b1bfa48a7..7b4360a83 100644 --- a/app/src/module_labour_union/java/com/yizhuan/erban/module_hall/hall/activity/GroupMemberListActivity.java +++ b/app/src/module_labour_union/java/com/yizhuan/erban/module_hall/hall/activity/GroupMemberListActivity.java @@ -11,6 +11,8 @@ import android.view.View; import android.widget.TextView; import com.chad.library.adapter.base.BaseQuickAdapter; +import com.coorchice.library.utils.LogUtils; +import com.netease.nim.uikit.common.util.log.LogUtil; import com.orhanobut.logger.Logger; import com.yizhuan.erban.R; import com.yizhuan.erban.UIHelper; diff --git a/app/src/module_labour_union/java/com/yizhuan/erban/module_hall/hall/activity/HallSearchActivity.java b/app/src/module_labour_union/java/com/yizhuan/erban/module_hall/hall/activity/HallSearchActivity.java index c832d3cc7..b3c83280d 100644 --- a/app/src/module_labour_union/java/com/yizhuan/erban/module_hall/hall/activity/HallSearchActivity.java +++ b/app/src/module_labour_union/java/com/yizhuan/erban/module_hall/hall/activity/HallSearchActivity.java @@ -32,7 +32,7 @@ public class HallSearchActivity extends SearchActivity{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - searchEdit.setHint("搜索昵称/66陪玩ID"); + searchEdit.setHint("搜索昵称/66星球ID"); } @Override diff --git a/app/src/module_labour_union/java/com/yizhuan/erban/module_hall/hall/adapter/GroupMemberListAdapter.java b/app/src/module_labour_union/java/com/yizhuan/erban/module_hall/hall/adapter/GroupMemberListAdapter.java index e1d222ef2..455bcf659 100644 --- a/app/src/module_labour_union/java/com/yizhuan/erban/module_hall/hall/adapter/GroupMemberListAdapter.java +++ b/app/src/module_labour_union/java/com/yizhuan/erban/module_hall/hall/adapter/GroupMemberListAdapter.java @@ -70,10 +70,10 @@ public class GroupMemberListAdapter extends BaseQuickAdapter + android:src="@drawable/ic_gender_female" /> + tools:text="66星球所有问题都可以问Ta哦~" /> implements IMiniWorldView { + + private static final String PARAM_MINI_WORLD_CATEGORY_ID = "miniWorldCategoryId"; + private int mMiniWorldCategoryId; + private MagicIndicator mMagicIndicator; + private ViewPager mViewPager; + private boolean isFirstLoad; + private List mMiniWorldCategoryInfos; + + public static void start(Context context) { + start(context, null); + } + + /** + * 跳转任意 + * @param context + * @param miniWorldCategoryId + */ + public static void start(Context context, Integer miniWorldCategoryId) { + Intent starter = new Intent(context, AllTopicActivity.class); + if (miniWorldCategoryId != null && miniWorldCategoryId != 0) { + starter.putExtra(PARAM_MINI_WORLD_CATEGORY_ID, miniWorldCategoryId); + } + context.startActivity(starter); + } + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_all_topic); + initTitleBar("更多话题"); + initViews(); + mMiniWorldCategoryId = getIntent().getIntExtra(PARAM_MINI_WORLD_CATEGORY_ID, -1); + List fragments = new ArrayList<>(); + fragments.add(MiniWorldCategoryFragment.newInstance(String.valueOf("0"))); + mViewPager.setAdapter(new RoomContributeListAdapter(getSupportFragmentManager(), fragments)); + ViewPagerHelper.bind(mMagicIndicator, mViewPager); + mViewPager.setOffscreenPageLimit(5); + } + + private void initViews() { + mMagicIndicator = findViewById(R.id.magic_indicator); + mViewPager = findViewById(R.id.view_pager); + } + + @Override + protected boolean needSteepStateBar() { + return true; + } + + @Override + protected void setStatusBar() { + //白底黑字 + StatusBarLightModes(true); + + } + + @Override + public void getMiniWorldCategoryTabSuccess(List miniWorldCategoryInfos) { + if (ListUtils.isListEmpty(miniWorldCategoryInfos)) { + showEmpty(); + return; + } + mMiniWorldCategoryInfos = miniWorldCategoryInfos; + List titles = new ArrayList<>(); + List fragments = new ArrayList<>(); + int position = 0; + for (int i = 0; i < miniWorldCategoryInfos.size(); i++) { + MiniWorldCategoryInfo miniWorldCategoryInfo = miniWorldCategoryInfos.get(i); + if (miniWorldCategoryInfo == null) { + continue; + } + if (-1 != mMiniWorldCategoryId && miniWorldCategoryInfo.getId() == mMiniWorldCategoryId) { + position = i; + } + titles.add(miniWorldCategoryInfo.getTypeName()); + fragments.add(MiniWorldCategoryFragment.newInstance(String.valueOf(miniWorldCategoryInfo.getId()))); + } + + + CommonNavigator commonNavigator = new CommonNavigator(this); + commonNavigator.setScrollPivotX(0.25f); + commonNavigator.setAdapter(new CommonNavigatorAdapter() { + @Override + public int getCount() { + return miniWorldCategoryInfos == null ? 0 : miniWorldCategoryInfos.size(); + } + + @Override + public IPagerTitleView getTitleView(Context context, final int index) { + SimplePagerTitleView simplePagerTitleView = new SimplePagerTitleView(context); + simplePagerTitleView.setText(miniWorldCategoryInfos.get(index).getTypeName()); + simplePagerTitleView.setNormalColor(Color.parseColor("#999999")); + simplePagerTitleView.setSelectedColor(Color.parseColor("#333333")); + simplePagerTitleView.setTextSize(15); + simplePagerTitleView.setBackgroundColor(Color.TRANSPARENT); + simplePagerTitleView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + mViewPager.setCurrentItem(index); + } + }); + return simplePagerTitleView; + } + + @Override + public IPagerIndicator getIndicator(Context context) { + LinePagerIndicator indicator = new LinePagerIndicator(context); + indicator.setMode(LinePagerIndicator.MODE_EXACTLY); + indicator.setLineHeight(UIUtil.dip2px(context, 4)); + indicator.setLineWidth(UIUtil.dip2px(context, 18)); + indicator.setRoundRadius(UIUtil.dip2px(context, 2)); +// indicator.setStartInterpolator(new AccelerateInterpolator()); +// indicator.setEndInterpolator(new DecelerateInterpolator(2.0f)); + indicator.setColors(ContextCompat.getColor(context, R.color.appColor)); + return indicator; + } + }); + mMagicIndicator.setNavigator(commonNavigator); + mViewPager.setAdapter(new RoomContributeListAdapter(getSupportFragmentManager(), fragments)); + ViewPagerHelper.bind(mMagicIndicator, mViewPager); + mViewPager.setOffscreenPageLimit(5); + mViewPager.setCurrentItem(position); + if (isFirstLoad) { + isFirstLoad = false; + hideStatus(); + } + } + + @Override + public void showError(Throwable throwable) { + showReload(Color.WHITE); + } + + @Override + public void onReloadDate() { + super.onReloadDate(); + } + + @Override + public void showEmpty() { + showNoData("暂无数据"); + } + +} diff --git a/app/src/module_mini_world/java/com/yizhuan/erban/miniworld/activity/MiniWorldGuestPageActivity.java b/app/src/module_mini_world/java/com/yizhuan/erban/miniworld/activity/MiniWorldGuestPageActivity.java index 656ab7530..76e3b6a82 100644 --- a/app/src/module_mini_world/java/com/yizhuan/erban/miniworld/activity/MiniWorldGuestPageActivity.java +++ b/app/src/module_mini_world/java/com/yizhuan/erban/miniworld/activity/MiniWorldGuestPageActivity.java @@ -104,7 +104,7 @@ import butterknife.ButterKnife; import cn.sharesdk.framework.Platform; /** - * 世界客态页 + * 话题页 */ @CreatePresenter(MiniWorldGuestPagePresenter.class) public class MiniWorldGuestPageActivity extends BaseMvpActivity @@ -263,7 +263,7 @@ public class MiniWorldGuestPageActivity extends BaseMvpActivity + implements IMiniWorldGuestPage, View.OnClickListener, MWMagicIndicator.OnItemSelectListener { + + public static final int REQUEST_CODE_EDIT_WORLD = 1; + + @BindView(R.id.iv_bg) + ImageView ivBg;// 高斯模糊背景 + @BindView(R.id.layout_world_guest_page) + ViewGroup layoutPage; + @BindView(R.id.abl_mw_info) + AppBarLayout ablMWInfo; + + @BindView(R.id.tv_world_nick) + TextView tvWorldNick;// 世界昵称 + + @BindView(R.id.tv_world_description) + TextView tvWorldDescription;// 世界描述 + + @BindView(R.id.layout_world_have_data) + LinearLayout layoutWorldHaveData;// 显示隐藏 + + @BindView(R.id.mi_mini_world) + MagicIndicator miMiniWorld; + @BindView(R.id.vp_mini_world) + ViewPager vpMiniWorld; + + @BindView(R.id.fl_iv_publish) + FrameLayout flPublish; + + private EasyPopup easyPopup;// 点击更多弹窗 + + private String worldId; + private ShareDialog shareDialog; + private boolean isFromRoom; + + + + + public static void start(Context context, @NonNull String worldId) { + StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_WORLD_VIEW_WORLD_PAGE_B, "进入小世界客态页-区分世界:世界id:" + worldId); + Intent intent = new Intent(context, TopicMainActivity.class); + intent.putExtra("world_id", worldId); + context.startActivity(intent); + } + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_topic_main); + EventBus.getDefault().register(this); + ButterKnife.bind(this); + getMvpPresenter().attachMvpView(this); + + if (getIntent() != null && getIntent().getStringExtra("world_id") != null) { + worldId = getIntent().getStringExtra("world_id"); + } else { + SingleToastUtil.showToast("世界ID不能为空"); + finish(); + } + isFromRoom = getIntent().getBooleanExtra("is_from_room", false); + setListeners(); + + List tabInfoList = new ArrayList<>(2); + tabInfoList.add(new TabInfo(0, "推荐")); + tabInfoList.add(new TabInfo(1, "最新")); + + CommonNavigator commonNavigator = new CommonNavigator(this); + commonNavigator.setAdjustMode(true); + MWMagicIndicator indicator = new MWMagicIndicator(this, tabInfoList, 0); + indicator.setOnItemSelectListener(this); + commonNavigator.setAdapter(indicator); + miMiniWorld.setNavigator(commonNavigator); + ViewPagerHelper.bind(miMiniWorld, vpMiniWorld); + // 埋点用 + vpMiniWorld.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { + @Override + public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { + + } + + @Override + public void onPageSelected(int position) { + reportPageNotice(position); + } + + @Override + public void onPageScrollStateChanged(int state) { + + } + }); + + + + vpMiniWorld.setOffscreenPageLimit(2); + vpMiniWorld.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) { + @Override + public int getCount() { + return 2; + } + + @Override + public Fragment getItem(int position) { + if (position == 0) { + return WorldDynamicFragment.newInstance(JavaUtil.str2long(worldId),position); + } + return WorldDynamicFragment.newInstance(JavaUtil.str2long(worldId),position); + } + }); + vpMiniWorld.setCurrentItem(0); + + + layoutWorldHaveData.setVisibility(View.GONE); + + getDialogManager().showProgressDialog(context); + getMvpPresenter().getWorldInfo(worldId);// 首次进入页面 获取世界信息 + + } + + @Override + public void initTitleBar() { + super.initTitleBar(); + mTitleBar.setLeftImageResource(R.drawable.arrow_left_white); + mTitleBar.setBackgroundColor(getResources().getColor(R.color.transparent)); + mTitleBar.setLeftTextColor(getResources().getColor(R.color.white)); + mTitleBar.setLeftTextSize(18F); + mTitleBar.setLeftDrawPadding(SizeUtils.dp2px(this, 17f)); + mTitleBar.setLeftClickListener(v -> onLeftClickListener()); + TitleBar.ActionList actionList = new TitleBar.ActionList(); + actionList.add(new TitleBar.Action() { + @Override + public String getText() { + return null; + } + + @Override + public int getDrawable() { + return R.drawable.ic_mini_world_guest_page_more; + } + + @Override + public int getTextDrawableLeft() { + return 0; + } + + @Override + public void performAction(View view) { + if (easyPopup != null) { + easyPopup.showAtAnchorView(view, + VerticalGravity.BELOW, + HorizontalGravity.ALIGN_RIGHT, + UIUtil.dip2px(context, -15), + UIUtil.dip2px(context, 15)); + } + } + }); + mTitleBar.addActions(actionList); + } + + /** 用于刷新页面判断控件是否展示;*/ + private AppBarStateChangeListener.State mState; + private void setListeners() { + flPublish.setOnClickListener(this); + + ablMWInfo.addOnOffsetChangedListener(new AppBarStateChangeListener() { + @Override + public void onStateChanged(AppBarLayout appBarLayout, State state) { + mState = state; + + if (state == State.EXPANDED) { + Log.i("OffsetChangedListener", "EXPANDED"); + //展开状态 + layoutWorldHaveData.setVisibility(View.VISIBLE); + if (mTitleBar != null) { + mTitleBar.setLeftText(""); + } + + } else if (state == State.COLLAPSED) { + //折叠状态 + Log.i("OffsetChangedListener", "COLLAPSED"); + layoutWorldHaveData.setVisibility(View.INVISIBLE); + mTitleBar.setLeftText(getMvpPresenter().getWorldName()); + + } else { + //中间状态 + Log.i("OffsetChangedListener", "state"); + layoutWorldHaveData.setVisibility(View.VISIBLE); + mTitleBar.setLeftText(""); + } + + } + }); + } + + @Override + public void onClick(View view) { + int id = view.getId(); + if (id == R.id.tv_world_guest_page_report) {// 举报小世界 + StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_MINI_WORLD_PAGE_REPORTING_WORLD, "世界客态页-举报小世界"); + dismissPopupMenu(); + long ownerUid = getMvpPresenter().getOwnerUid(); + if (ownerUid != -1) { + UIHelper.showReportPage(context, ownerUid, XChatConstants.REPORT_TYPE_WORLD); + } + } else if (id == R.id.tv_world_guest_page_quit) {// 退出小世界 + dismissPopupMenu(); + showDialogToConfirmQuitWorld(); + } else if (id == R.id.tv_world_guest_page_edit) {// 编辑资料 + dismissPopupMenu(); + MiniWorldEditableInfoVM editableInfo = getMvpPresenter().getWorldEditableInfo(); + if (editableInfo != null) { + MiniWorldEditActivity.start(TopicMainActivity.this, editableInfo, REQUEST_CODE_EDIT_WORLD); + } + } else if (id == R.id.fl_iv_publish) { + StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_WORLD_PUBLISH_MOMENTS_B, + "发布动态-小世界"); + StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_WORLD_PUBLISH_MOMENTS, + "发布动态-区分小世界-" + worldId); + PublishActivity.start(getDialogManager(), JavaUtil.str2long(worldId)); + } + } + + private void shareMiniWorld() { + if (shareDialog == null) { + shareDialog = new ShareDialog(context); + shareDialog.setOnShareDialogItemClick(new ShareDialog.OnShareDialogItemClick() { + @Override + public void onInAppSharingItemClick() { + if (shareDialog != null && shareDialog.isShowing()) { + shareDialog.dismiss(); + } + SelectFriendActivity.startForSharingMiniWorld(TopicMainActivity.this); + } + + @Override + public void onSharePlatformClick(Platform platform) { + // 应用外分享 + if (TextUtils.isEmpty(worldId)) { + return; + } + getDialogManager().showProgressDialog(context); + MiniWorldModel.getInstance() + .getWorldSharePicUrl(Long.parseLong(worldId), AuthModel.get().getCurrentUid()) + .compose(bindUntilEvent(ActivityEvent.DESTROY)) + .subscribe(new DontWarnObserver() { + @Override + public void accept(String s, String error) { + super.accept(s, error); + getDialogManager().dismissDialog(); + if (error == null) { + ShareModel.get().shareImage(platform, s); + } else { + toast(error); + } + } + }); + } + }); + } + shareDialog.show(); + } + + private void dismissPopupMenu() { + if (easyPopup != null) { + easyPopup.dismiss(); + } + } + + private void showDialogToConfirmQuitWorld() { + getDialogManager().showTipsDialog("退出小世界后将被移除群聊\n确认退出吗?", () -> getMvpPresenter().quitWorld(worldId)); + } + + private boolean isSet = false; + + @Override + public void showWorldInfo(@NonNull MiniWorldDetailInfoVM infoVM) { + if (!showJoinDialog) + dismissDialog(); + dismissDialog(); + + if (mState == null || mState == AppBarStateChangeListener.State.COLLAPSED) { + layoutWorldHaveData.setVisibility(View.INVISIBLE); + } else { + layoutWorldHaveData.setVisibility(View.VISIBLE); + } + // 初始化菜单 + initEasyPopMenu(infoVM.getUserType(), infoVM.isEnableReminder(), infoVM.isInGroupChat()); + // 高斯模糊背景 //loadImageWithBlurTransformation + if (!isSet) + ImageLoadUtils.loadImage(context, infoVM.getWorldIcon(), ivBg); + isSet = true; + + // 世界昵称 + tvWorldNick.setText(infoVM.getWorldName()); + + // 世界描述 + tvWorldDescription.setText(infoVM.getWorldDescription()); + + } + + @Override + public void dismissDialog() { + if (!showJoinDialog) + getDialogManager().dismissDialog(); + } + + + @Override + public void showCompleteOperationDialog(String contentMsg) { + View view = LayoutInflater.from(context).inflate(R.layout.dialog_mini_world_guest_page_complete_operation, null); + TextView tvContent = view.findViewById(R.id.tv_world_dialog_content); + tvContent.setText(contentMsg); + TextView tvButton = view.findViewById(R.id.tv_world_dialog_button); + tvButton.setOnClickListener(v -> dismissDialogAndFinish()); + getDialogManager().showCustomViewDialog(view); + Timer t = new Timer(); + t.schedule(new TimerTask() { + public void run() { + dismissDialogAndFinish(); + t.cancel(); + } + }, 3000); + } + + @Override + public void showInviteDialog() { + getDialogManager().showCustomViewDialog(R.layout.dialog_mini_world_guest_page_invite); + Window window = getDialogManager().getDialog().getWindow(); + TextView tvMessage = window.findViewById(R.id.tv_world_dialog_message);// 文案:人数达3人才可生成群聊快去邀请好友吧 + SpannableString spannableString = new SpannableString("邀请好友"); + spannableString.setSpan(new StyleSpan(Typeface.BOLD), 0, spannableString.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); + SpannableStringBuilder stringBuilder = new SpannableStringBuilder(); + stringBuilder.append("快去").append(spannableString).append("吧"); + tvMessage.setText(stringBuilder); + TextView tvButton = window.findViewById(R.id.tv_world_dialog_button); + tvButton.setOnClickListener(view12 -> { + getDialogManager().dismissDialog(); + StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_MINI_WORLD_PAGE_INVITE_FRIENDS, "世界客态页-群成员不足邀请好友"); + shareMiniWorld();// 点击群聊-世界人数不足时弹窗去邀请好友-邀请好友 + }); + TextView tvLater = window.findViewById(R.id.tv_world_dialog_later); + tvLater.setOnClickListener(view1 -> { + getDialogManager().dismissDialog(); + StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_MINI_WORLD_PAGE_TALK_ABOUT_NEXT_TIME, "世界客态页-群成员不足下次再说"); + }); + } + + @Override + public void showJoinTeamDialog(String title) { + showConfirmDialog(title, + "加入群聊后可以和小世界的朋友们谈天说地,确认加入群聊吗?", + "立即加入", "活跃度太低会被移出群聊哦~", + new View.OnClickListener() { + @Override + public void onClick(View v) { + getDialogManager().dismissDialog(); + getMvpPresenter().joinTeam(); + } + }); + + } + + @Override + public void showTeamMemberFullDialog(String title, String content) { + showConfirmDialog(title, + content, + "知道了", "不要灰心,群聊会定期腾出空位置哦~", + new View.OnClickListener() { + @Override + public void onClick(View v) { + getDialogManager().dismissDialog(); + } + }); + + } + + @Override + public void showToast(String message) { + toast(message); + } + + @Override + public void finishView() { + finish(); + } + + @Override + public void worldJoinSuccess(String worldId) { + + EventBus.getDefault().post(MiniWorldStateChangedEvent.newInstance(true)); + if (isFromRoom) { + // TODO: 2019-07-12 通知房间送加入小世界成功 + setResult(RESULT_OK, getIntent().putExtra("world_id", worldId)); + } + MiniWorldDetailInfo detailInfo = getMvpPresenter().getDetailInfo(); + + if (!detailInfo.isAgreeFlag()) { + showJoinDialog = true; + showJoinSuccessDialog(detailInfo); +// getMvpPresenter().getWorldInfo(this.worldId); + } else { + SharedPreferenceUtils.put(AuthModel.get().getCurrentUid() + detailInfo.getId() + "", stateOne); + toast("审核中"); + } + } + + boolean showJoinDialog = false; + + private void showJoinSuccessDialog(MiniWorldDetailInfo detailInfo) { + if (isFinishing() || isDestroyed()) + return; + + StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_MINI_WORLD_PAGE_ENTER_WORLD, "世界客态页-加入世界成功"); + SharedPreferenceUtils.put(AuthModel.get().getCurrentUid() + detailInfo.getId() + "", stateDefault); + getDialogManager().showCustomViewDialog(R.layout.dialog_mw_join_succee); + Window window = getDialogManager().getDialog().getWindow(); + TextView tvMessage = window.findViewById(R.id.tv_world_dialog_message);// 文案:人数达3人才可生成群聊快去邀请好友吧 + TextView tvButton = window.findViewById(R.id.tv_world_dialog_button); + TextView tvLater = window.findViewById(R.id.tv_world_dialog_later); + + if (tvMessage != null && tvButton != null && tvLater != null) { + tvMessage.setText(detailInfo.getName()); + tvButton.setOnClickListener(view12 -> { + showJoinDialog = false; + getDialogManager().dismissDialog(); + getMvpPresenter().clickBottomChat(false); + }); + tvLater.setOnClickListener(view1 -> { + showJoinDialog = false; + getDialogManager().dismissDialog(); + }); + } + + } + + @Override + public void worldJoinFail(String error) { + toast(error); + } + + @Override + public void toTeam(String tid) { + StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_WORLD_PAGE_ENTER_GROUP_CHAT, "进入群聊:小世界客态页"); + MiniWorldTeamMessageActivity.start(this, tid, true); + } + + @Override + public void worldExitSuccess() { + StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_MINI_WORLD_PAGE_EXIT_WORLD, " 世界客态页-退出小世界"); + EventBus.getDefault().post(MiniWorldStateChangedEvent.newInstance(false, Integer.valueOf(worldId))); + showCompleteOperationDialog("已退出小世界"); + } + + @Override + public void worldExitFail(String error) { + toast(error); + } + + @Override + public void worldRoomQuerySuccess(List audioPartyInfos) { + if (audioPartyInfos != null && audioPartyInfos.size() > 0) { + + } else { + worldRoomQueryFail(""); + } + + } + + @Override + public void worldRoomQueryFail(String error) { + } + + private void dismissDialogAndFinish() { + getDialogManager().dismissDialog(); + finish(); + } + + private boolean isWorldOriginatorOrMember(int userType) { + return userType == MiniWorldDetailInfoVM.TYPE_OWNER || userType == MiniWorldDetailInfoVM.TYPE_MEMBER; + } + + private void initEasyPopMenu(int userType, boolean isEnableReminder, boolean inGroupChat) { + if (userType == MiniWorldDetailInfoVM.TYPE_OWNER) {// 创始人 + if (inGroupChat) { + initEasyPopMenuOfOriginator(isEnableReminder); + } else { + initEasyPopMenuOfOriginatorNoChatRoom(); + } + + } else if (userType == MiniWorldDetailInfoVM.TYPE_MEMBER) {// 成员 + if (inGroupChat) { + initEasyPopMenuOfMember(isEnableReminder); + } else { + initEasyPopMenuOfMemberNoChatRoom(); + } + } else {// 其余身份 + initEasyPopMenuOfStranger(); + } + } + + private void initEasyPopMenuOfMember(boolean isEnableReminder) { + easyPopup = new EasyPopup(this) + .setContentView(R.layout.menu_mini_world_guest_page_member) + .setFocusAndOutsideEnable(true) + .setBackgroundDimEnable(true) + .setDimView(layoutPage) + .setWidth(UIUtil.dip2px(this, 151)) + .setHeight(UIUtil.dip2px(this, 210)) + .createPopup(); + easyPopup.getView(R.id.tv_world_guest_page_report).setOnClickListener(this); + easyPopup.getView(R.id.tv_world_guest_page_quit).setOnClickListener(this); + } + + private void initEasyPopMenuOfMemberNoChatRoom() { + easyPopup = new EasyPopup(this) + .setContentView(R.layout.menu_mini_world_guest_page_member_no_chat_room) + .setFocusAndOutsideEnable(true) + .setBackgroundDimEnable(true) + .setDimView(layoutPage) + .setWidth(UIUtil.dip2px(this, 151)) + .setHeight(UIUtil.dip2px(this, 144)) + .createPopup(); + easyPopup.getView(R.id.tv_world_guest_page_report).setOnClickListener(this); + easyPopup.getView(R.id.tv_world_guest_page_quit).setOnClickListener(this); + } + + private void initEasyPopMenuOfOriginator(boolean isEnableReminder) { + easyPopup = new EasyPopup(this) + .setContentView(R.layout.menu_mini_world_guest_page_originator) + .setFocusAndOutsideEnable(true) + .setBackgroundDimEnable(true) + .setDimView(layoutPage) + .setWidth(UIUtil.dip2px(this, 151)) + .setHeight(UIUtil.dip2px(this, 210)) + .createPopup(); + easyPopup.getView(R.id.tv_world_guest_page_edit).setOnClickListener(this); + } + + private void initEasyPopMenuOfOriginatorNoChatRoom() { + easyPopup = new EasyPopup(this) + .setContentView(R.layout.menu_mini_world_guest_page_originator_no_chat_room) + .setFocusAndOutsideEnable(true) + .setBackgroundDimEnable(true) + .setDimView(layoutPage) + .setWidth(UIUtil.dip2px(this, 151)) + .setHeight(UIUtil.dip2px(this, 144)) + .createPopup(); + easyPopup.getView(R.id.tv_world_guest_page_edit).setOnClickListener(this); + } + + private void initEasyPopMenuOfStranger() { + easyPopup = new EasyPopup(this) + .setContentView(R.layout.menu_mini_world_guest_page_stranger) + .setFocusAndOutsideEnable(true) + .setBackgroundDimEnable(true) + .setDimView(layoutPage) + .setWidth(UIUtil.dip2px(this, 151)) + .setHeight(UIUtil.dip2px(this, 90)) + .createPopup(); + easyPopup.getView(R.id.tv_world_guest_page_report).setOnClickListener(this); + } + + @Override + protected void onActivityResult(int requestCode, int resultCode, Intent data) { + super.onActivityResult(requestCode, resultCode, data); + if (resultCode == RESULT_OK) { + if (requestCode == SelectFriendActivity.CODE_REQUEST_TO_SHARE_MINI_WORLD) { + String targetUid = data.getStringExtra(SelectFriendActivity.EXTRA_TARGET_UID); + int sessionType = data.getIntExtra(SelectFriendActivity.EXTRA_SESSION_TYPE, SessionType.P2P); + if (getMvpPresenter().getDetailInfo() != null) { + IMNetEaseManager.get().sendSharingMiniWorldMessage(sessionType, targetUid, getMvpPresenter().getDetailInfo()); + } + } else if (requestCode == REQUEST_CODE_EDIT_WORLD) { + getMvpPresenter().getWorldInfo(worldId);// 编辑页面编辑完成 返回页面 需要刷新世界信息 + } + } + } + + @Override + protected void onDestroy() { + super.onDestroy(); + EventBus.getDefault().unregister(this); + } + + @Subscribe(threadMode = ThreadMode.MAIN) + public void onMWJoinVerified(MiniWorldJoinVerifiedEvent miniWorldJoinVerifiedEvent) { + if (isFinishing() || isDestroyed()) + return; + + MiniWorldDetailInfo detailInfo = getMvpPresenter().getDetailInfo(); + if (miniWorldJoinVerifiedEvent != null + && miniWorldJoinVerifiedEvent.getWorldId() == detailInfo.getId()) { + if (miniWorldJoinVerifiedEvent.getActionType() == 2) { + getMvpPresenter().getWorldInfo(worldId); // 更新详情信息,包含判断是否弹出加入成功的逻辑 + } + } + } + + int stateDefault = 0; // 无需弹框 + int stateOne = 1; // 弹框 + + public void showConfirmDialog(String title, String content, String confirmStr, String tips, View.OnClickListener listener) { + getDialogManager().dismissDialog(); + + getDialogManager().showCustomViewDialog(R.layout.dialog_mw_comfirm); + Window window = getDialogManager().getDialog().getWindow(); + TextView tvTitle = window.findViewById(R.id.tv_title); + TextView tvContent = window.findViewById(R.id.tv_content); + TextView tvButton = window.findViewById(R.id.tv_confirm_btn); + TextView tvTips = window.findViewById(R.id.tv_tips); + + if (tvTitle != null) { + tvTitle.setText(title); + } + + if (tvContent != null) { + tvContent.setText(content); + } + + if (tvButton != null) { + tvButton.setText(confirmStr); + tvButton.setOnClickListener(listener); + } + + if (tvTips != null) { + tvTips.setText(tips); + } + + } + + @Subscribe(threadMode = ThreadMode.MAIN) + public void updateMiniWorldDetail(MiniWorldTeamExitEvent exitEvent) { + if (String.valueOf(exitEvent.getWorldId()).equals(worldId)) { + getMvpPresenter().getWorldInfo(worldId); + } + } + + @Override + public void onItemSelect(int position) { + reportPageNotice(position); + vpMiniWorld.setCurrentItem(position); + } + + private void reportPageNotice(int position) { + if (position == 0) { + StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_WORLD_PAGE_NOTICE, + "切换公告和动态tab:动态"); + + } else { + StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_WORLD_PAGE_NOTICE, + "切换公告和动态tab:公告"); + } + } +} diff --git a/app/src/module_mini_world/java/com/yizhuan/erban/miniworld/adapter/AllTopicListAdapter.java b/app/src/module_mini_world/java/com/yizhuan/erban/miniworld/adapter/AllTopicListAdapter.java new file mode 100644 index 000000000..97b279abe --- /dev/null +++ b/app/src/module_mini_world/java/com/yizhuan/erban/miniworld/adapter/AllTopicListAdapter.java @@ -0,0 +1,37 @@ +package com.yizhuan.erban.miniworld.adapter; + +import android.support.annotation.Nullable; +import android.support.v7.widget.LinearLayoutManager; +import android.support.v7.widget.RecyclerView; +import android.text.TextUtils; +import android.widget.ImageView; + +import com.chad.library.adapter.base.BaseQuickAdapter; +import com.chad.library.adapter.base.BaseViewHolder; +import com.yizhuan.erban.R; +import com.yizhuan.erban.ui.utils.ImageLoadUtils; +import com.yizhuan.xchat_android_core.miniworld.bean.MiniWorldInfo; +import com.yizhuan.xchat_android_core.user.bean.UserInfo; + +import java.util.List; +import java.util.Locale; + +/** + * 小世界列表界面 + */ +public class AllTopicListAdapter extends BaseQuickAdapter { + + + public AllTopicListAdapter(@Nullable List data) { + super(R.layout.item_all_topic_list, data); + } + + @Override + protected void convert(BaseViewHolder helper, MiniWorldInfo item) { + if (item == null) { + return; + } + helper.setText(R.id.tv_title, "#"+item.getName()); + helper.setVisible(R.id.iv_hot,item.isHotTag()); + } +} diff --git a/app/src/module_mini_world/java/com/yizhuan/erban/miniworld/adapter/AudioPartyAdapter.java b/app/src/module_mini_world/java/com/yizhuan/erban/miniworld/adapter/AudioPartyAdapter.java index eabf693e8..629b87013 100644 --- a/app/src/module_mini_world/java/com/yizhuan/erban/miniworld/adapter/AudioPartyAdapter.java +++ b/app/src/module_mini_world/java/com/yizhuan/erban/miniworld/adapter/AudioPartyAdapter.java @@ -56,7 +56,7 @@ public class AudioPartyAdapter extends BaseMultiItemQuickAdapter { + + + public RecommendTopicListAdapter(@Nullable List data) { + super(R.layout.item_recommend_topic_list, data); + } + + @Override + protected void convert(BaseViewHolder helper, MiniWorldInfo item) { + if (item == null) { + return; + } + helper.setText(R.id.tv_title, item.getName()); + ImageView ivIcon = helper.getView(R.id.iv_icon); + ImageLoadUtils.loadImageWithPlaceholder(mContext, item.getIcon(), ivIcon); + + } +} diff --git a/app/src/module_mini_world/java/com/yizhuan/erban/miniworld/fragment/MiniWorldCategoryFragment.java b/app/src/module_mini_world/java/com/yizhuan/erban/miniworld/fragment/MiniWorldCategoryFragment.java index 3283a150a..da66ebf12 100644 --- a/app/src/module_mini_world/java/com/yizhuan/erban/miniworld/fragment/MiniWorldCategoryFragment.java +++ b/app/src/module_mini_world/java/com/yizhuan/erban/miniworld/fragment/MiniWorldCategoryFragment.java @@ -16,7 +16,8 @@ import com.yizhuan.erban.base.BaseMvpFragment; import com.yizhuan.erban.common.NoDataFragment; import com.yizhuan.erban.miniworld.activity.MiniWorldActivity; import com.yizhuan.erban.miniworld.activity.MiniWorldGuestPageActivity; -import com.yizhuan.erban.miniworld.adapter.MiniWorldListAdapter; +import com.yizhuan.erban.miniworld.activity.TopicMainActivity; +import com.yizhuan.erban.miniworld.adapter.AllTopicListAdapter; import com.yizhuan.erban.miniworld.listener.DoubleClickCheckListener; import com.yizhuan.erban.miniworld.presenter.MiniWorldCategoryPresenter; import com.yizhuan.erban.miniworld.view.IMiniWorldCategoryView; @@ -47,7 +48,7 @@ public class MiniWorldCategoryFragment extends BaseMvpFragment { if (mOnItemSelectListener != null) { @@ -57,10 +61,10 @@ public class MWMagicIndicator extends CommonNavigatorAdapter { public IPagerIndicator getIndicator(Context context) { LinePagerIndicator indicator = new LinePagerIndicator(context); indicator.setMode(LinePagerIndicator.MODE_EXACTLY); - indicator.setLineHeight(UIUtil.dip2px(mContext, 4)); + indicator.setLineHeight(UIUtil.dip2px(mContext, 5)); indicator.setRoundRadius(UIUtil.dip2px(mContext, 2)); indicator.setLineWidth(UIUtil.dip2px(mContext, 9)); - indicator.setColors(context.getResources().getColor(R.color.color_333333)); + indicator.setColors(context.getResources().getColor(R.color.color_7154EE)); FrameLayout.LayoutParams lp = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT); lp.bottomMargin = mBottomMargin; indicator.setLayoutParams(lp); diff --git a/app/src/module_mini_world/res/drawable/bg_mini_world_no_data_button.xml b/app/src/module_mini_world/res/drawable/bg_mini_world_no_data_button.xml index 76a372e6e..ef86ccebb 100644 --- a/app/src/module_mini_world/res/drawable/bg_mini_world_no_data_button.xml +++ b/app/src/module_mini_world/res/drawable/bg_mini_world_no_data_button.xml @@ -1,7 +1,7 @@ - + diff --git a/app/src/module_mini_world/res/layout/activity_all_topic.xml b/app/src/module_mini_world/res/layout/activity_all_topic.xml new file mode 100644 index 000000000..f2e5370f9 --- /dev/null +++ b/app/src/module_mini_world/res/layout/activity_all_topic.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + diff --git a/app/src/module_mini_world/res/layout/activity_topic_main.xml b/app/src/module_mini_world/res/layout/activity_topic_main.xml new file mode 100644 index 000000000..c67f279f8 --- /dev/null +++ b/app/src/module_mini_world/res/layout/activity_topic_main.xml @@ -0,0 +1,206 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/src/module_mini_world/res/layout/frg_mini_world_notice.xml b/app/src/module_mini_world/res/layout/frg_mini_world_notice.xml index 0dfedaae6..2461cbc37 100644 --- a/app/src/module_mini_world/res/layout/frg_mini_world_notice.xml +++ b/app/src/module_mini_world/res/layout/frg_mini_world_notice.xml @@ -60,7 +60,7 @@ android:maxEms="8" android:textColor="#666666" android:textSize="16sp" - tools:drawableEnd="@drawable/ic_male" + tools:drawableEnd="@drawable/ic_gender_male" tools:text="阿拉伯的劳伦斯阿拉伯的劳伦斯阿拉伯的劳伦斯" /> + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/module_mini_world/res/layout/item_audio_party.xml b/app/src/module_mini_world/res/layout/item_audio_party.xml index 05850f0ca..086cb2cc6 100644 --- a/app/src/module_mini_world/res/layout/item_audio_party.xml +++ b/app/src/module_mini_world/res/layout/item_audio_party.xml @@ -57,7 +57,7 @@ android:id="@+id/iv_gender" android:layout_width="wrap_content" android:layout_height="wrap_content" - tools:src="@drawable/ic_male"/> + tools:src="@drawable/ic_gender_male"/> + + + + + + \ No newline at end of file diff --git a/app/src/module_public_chat_hall/java/com/yizhuan/erban/public_chat_hall/adapter/PublicChatHallAttentionListAdapter.java b/app/src/module_public_chat_hall/java/com/yizhuan/erban/public_chat_hall/adapter/PublicChatHallAttentionListAdapter.java index 8604e355c..6b64761eb 100644 --- a/app/src/module_public_chat_hall/java/com/yizhuan/erban/public_chat_hall/adapter/PublicChatHallAttentionListAdapter.java +++ b/app/src/module_public_chat_hall/java/com/yizhuan/erban/public_chat_hall/adapter/PublicChatHallAttentionListAdapter.java @@ -46,9 +46,9 @@ public class PublicChatHallAttentionListAdapter extends BaseQuickAdapter + + + + \ No newline at end of file diff --git a/app/src/module_room_chat/res/drawable/bg_gender_female.xml b/app/src/module_room_chat/res/drawable/bg_gender_female.xml new file mode 100644 index 000000000..c1cc173fb --- /dev/null +++ b/app/src/module_room_chat/res/drawable/bg_gender_female.xml @@ -0,0 +1,12 @@ + + + + + + \ No newline at end of file diff --git a/app/src/module_room_chat/res/drawable/bg_gender_male.xml b/app/src/module_room_chat/res/drawable/bg_gender_male.xml new file mode 100644 index 000000000..c50cdf1fd --- /dev/null +++ b/app/src/module_room_chat/res/drawable/bg_gender_male.xml @@ -0,0 +1,12 @@ + + + + + + \ No newline at end of file diff --git a/app/src/module_room_chat/res/drawable/bg_topic_indicator.xml b/app/src/module_room_chat/res/drawable/bg_topic_indicator.xml new file mode 100644 index 000000000..f174b9f68 --- /dev/null +++ b/app/src/module_room_chat/res/drawable/bg_topic_indicator.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/module_room_chat/res/drawable/bg_topic_top.xml b/app/src/module_room_chat/res/drawable/bg_topic_top.xml new file mode 100644 index 000000000..c398d60ae --- /dev/null +++ b/app/src/module_room_chat/res/drawable/bg_topic_top.xml @@ -0,0 +1,13 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/module_room_chat/res/layout/room_msg_nim_recent_contact_list_item.xml b/app/src/module_room_chat/res/layout/room_msg_nim_recent_contact_list_item.xml index a388e35ce..f8330537b 100644 --- a/app/src/module_room_chat/res/layout/room_msg_nim_recent_contact_list_item.xml +++ b/app/src/module_room_chat/res/layout/room_msg_nim_recent_contact_list_item.xml @@ -58,7 +58,7 @@ android:layout_toEndOf="@+id/tv_nickname" android:scaleType="centerInside" android:visibility="visible" - tools:src="@drawable/ic_female" + tools:src="@drawable/ic_gender_female" tools:visibility="visible" /> > getTabBanner(String tabId); /** - * 66陪玩顶部 banner信息 + * 66星球顶部 banner信息 * 包含3部分,顶部banner,测一测那个列表,标签页 */ Single getQxBannerInfo(); diff --git a/core/src/main/java/com/yizhuan/xchat_android_core/auth/AuthModel.java b/core/src/main/java/com/yizhuan/xchat_android_core/auth/AuthModel.java index badc2cc62..0364251b6 100644 --- a/core/src/main/java/com/yizhuan/xchat_android_core/auth/AuthModel.java +++ b/core/src/main/java/com/yizhuan/xchat_android_core/auth/AuthModel.java @@ -592,7 +592,7 @@ public class AuthModel extends BaseModel implements IAuthModel { } /** - * 账号密码登录(耳伴老用户绑定 QQ 号登录66陪玩) + * 账号密码登录(耳伴老用户绑定 QQ 号登录66星球) * * @param account * @param password @@ -1475,7 +1475,7 @@ public class AuthModel extends BaseModel implements IAuthModel { @Query("shuMeiDeviceId") String shuMeiDeviceId); /** - * 66陪玩上耳伴老用户用 QQ 登录时,判断 QQ 的 open id 是否存在 + * 66星球上耳伴老用户用 QQ 登录时,判断 QQ 的 open id 是否存在 * * @return */ diff --git a/core/src/main/java/com/yizhuan/xchat_android_core/decoration/headwear/HeadwearModel.java b/core/src/main/java/com/yizhuan/xchat_android_core/decoration/headwear/HeadwearModel.java index dd3b8f01a..00474b2cd 100644 --- a/core/src/main/java/com/yizhuan/xchat_android_core/decoration/headwear/HeadwearModel.java +++ b/core/src/main/java/com/yizhuan/xchat_android_core/decoration/headwear/HeadwearModel.java @@ -278,6 +278,11 @@ public class HeadwearModel extends BaseModel implements IHeadwearModel { @Query("page") String page, @Query("pageSize") String pageSize); + @GET("nameplate/userNameplateList") + Single>> getNamePlateListV2(@Query("uid") String uid, + @Query("page") String page, + @Query("pageSize") String pageSize); + /** * 获取头饰详情 * @param headwearId diff --git a/core/src/main/java/com/yizhuan/xchat_android_core/decoration/nameplate/bean/NamePlateInfo.java b/core/src/main/java/com/yizhuan/xchat_android_core/decoration/nameplate/bean/NamePlateInfo.java new file mode 100644 index 000000000..5496c300c --- /dev/null +++ b/core/src/main/java/com/yizhuan/xchat_android_core/decoration/nameplate/bean/NamePlateInfo.java @@ -0,0 +1,4 @@ +package com.yizhuan.xchat_android_core.decoration.nameplate.bean; + +public class NamePlateInfo { +} diff --git a/core/src/main/java/com/yizhuan/xchat_android_core/room/model/RoomSettingModel.java b/core/src/main/java/com/yizhuan/xchat_android_core/room/model/RoomSettingModel.java index 450014734..dc0e64b85 100644 --- a/core/src/main/java/com/yizhuan/xchat_android_core/room/model/RoomSettingModel.java +++ b/core/src/main/java/com/yizhuan/xchat_android_core/room/model/RoomSettingModel.java @@ -257,7 +257,7 @@ public class RoomSettingModel extends BaseMvpModel { /** * 更新房间设置信息 - * 66陪玩项目-打开关闭房间纯净模式-房主修改 + * 66星球项目-打开关闭房间纯净模式-房主修改 * * @param title * @param desc @@ -281,7 +281,7 @@ public class RoomSettingModel extends BaseMvpModel { /** * 更新房间设置信息 - * 66陪玩项目-打开关闭房间纯净模式 + * 66星球项目-打开关闭房间纯净模式 * * @param title * @param desc diff --git a/core/src/main/java/com/yizhuan/xchat_android_core/room/pk/bean/PKTeamMember.java b/core/src/main/java/com/yizhuan/xchat_android_core/room/pk/bean/PKTeamMember.java index b2315946e..838af35e7 100644 --- a/core/src/main/java/com/yizhuan/xchat_android_core/room/pk/bean/PKTeamMember.java +++ b/core/src/main/java/com/yizhuan/xchat_android_core/room/pk/bean/PKTeamMember.java @@ -10,7 +10,7 @@ import lombok.Data; @Data public class PKTeamMember { private String uid;//用户uid - private String erbanNo;//66陪玩号 + private String erbanNo;//66星球号 private String nick;//昵称 private int gender;//性别 private String avatar;//头像 diff --git a/core/src/main/java/com/yizhuan/xchat_android_core/statistic/protocol/StatisticsProtocol.java b/core/src/main/java/com/yizhuan/xchat_android_core/statistic/protocol/StatisticsProtocol.java index 98a2623e9..9f73807b9 100644 --- a/core/src/main/java/com/yizhuan/xchat_android_core/statistic/protocol/StatisticsProtocol.java +++ b/core/src/main/java/com/yizhuan/xchat_android_core/statistic/protocol/StatisticsProtocol.java @@ -182,7 +182,7 @@ public class StatisticsProtocol { //模厅暗号 - EVENT_HALL_ADDMEMBERS_USERID_CLICK("hall_addMembers_userid_click"),//添加成员-66陪玩ID + EVENT_HALL_ADDMEMBERS_USERID_CLICK("hall_addMembers_userid_click"),//添加成员-66星球ID EVENT_HALL_ADDMEMBERS_WX_CLICK("hall_addMembers_wx_click"),//添加成员-微信导入 EVENT_HALL_ADDMEMBERS_QQ_CLICK("hall_addMembers_qq_click"),//添加成员-QQ导入 EVENT_HALL_PASSWORD_SHARE_WX("hall_password_share_wx"),//分享暗号到微信 diff --git a/core/src/main/java/com/yizhuan/xchat_android_core/user/UserModel.java b/core/src/main/java/com/yizhuan/xchat_android_core/user/UserModel.java index 65a5ed6e3..4a1135e17 100644 --- a/core/src/main/java/com/yizhuan/xchat_android_core/user/UserModel.java +++ b/core/src/main/java/com/yizhuan/xchat_android_core/user/UserModel.java @@ -914,7 +914,7 @@ public final class UserModel extends BaseModel implements IUserModel { /** * - * @param erbanNo 66陪玩号或手机号码 + * @param erbanNo 66星球号或手机号码 * @return - */ @GET("user/getSimpleUser") diff --git a/core/src/main/java/com/yizhuan/xchat_android_core/user/bean/BaseUserInfo.java b/core/src/main/java/com/yizhuan/xchat_android_core/user/bean/BaseUserInfo.java index e46fef51e..3a4482fa4 100644 --- a/core/src/main/java/com/yizhuan/xchat_android_core/user/bean/BaseUserInfo.java +++ b/core/src/main/java/com/yizhuan/xchat_android_core/user/bean/BaseUserInfo.java @@ -31,6 +31,22 @@ public class BaseUserInfo implements Serializable { private int defUser; private boolean newUser; + + // 财富等级 + private String experLevelPic; + + // 魅力等级 + private String charmLevelPic; + + // 铭牌图片 + private String nameplatePic; + + // 铭牌文字 + private String nameplateWord; + + // 在哪个房间id + private Long inRoomId; + /** * 贵族头饰 */ diff --git a/core/src/main/java/com/yizhuan/xchat_android_core/user/bean/RecommendationUserInfo.java b/core/src/main/java/com/yizhuan/xchat_android_core/user/bean/RecommendationUserInfo.java index 1f8de744e..edbbf9c9c 100644 --- a/core/src/main/java/com/yizhuan/xchat_android_core/user/bean/RecommendationUserInfo.java +++ b/core/src/main/java/com/yizhuan/xchat_android_core/user/bean/RecommendationUserInfo.java @@ -32,7 +32,7 @@ public class RecommendationUserInfo implements Serializable { * recommendRoom : false * liveTag : false * status : 0 - * description : 她在66陪玩魅力四射... + * description : 她在66星球魅力四射... */ private int uid; diff --git a/core/src/model_community/java/com/yizhuan/xchat_android_core/community/dynamic/DynamicModel.java b/core/src/model_community/java/com/yizhuan/xchat_android_core/community/dynamic/DynamicModel.java index 7b360e754..2eac7a8da 100644 --- a/core/src/model_community/java/com/yizhuan/xchat_android_core/community/dynamic/DynamicModel.java +++ b/core/src/model_community/java/com/yizhuan/xchat_android_core/community/dynamic/DynamicModel.java @@ -43,6 +43,13 @@ public class DynamicModel extends BaseModel implements IDynamicModel { .compose(RxHelper.handleCommon()); } + @Override + public Single getLatestDynamicList(long worldId, String dynamicId) { + //此版本仅支持图文 固定传0,2 + return api.apiGetLatestDynamicList(AuthModel.get().getCurrentUid(), worldId, dynamicId, 10, CommunityConstant.VERSION_VALID_TYPE) + .compose(RxHelper.handleCommon()); + } + /** * @param likedUid 被赞用户uid * @param status 状态,0-取消赞,1-赞 @@ -86,7 +93,7 @@ public class DynamicModel extends BaseModel implements IDynamicModel { private interface Api { /** - * + *推荐 * @param dynamicId 动态id,本次从该id开始取(不包括当前id对应的记录),不传从最新开始取 * @return - */ @@ -98,6 +105,19 @@ public class DynamicModel extends BaseModel implements IDynamicModel { @Query("pageSize") int pageSize, @Query("types") String types); + /** + *最新 + * @param dynamicId 动态id,本次从该id开始取(不包括当前id对应的记录),不传从最新开始取 + * @return - + */ + @POST("dynamic/latestList") + Single> apiGetLatestDynamicList( + @Query("uid") long uid, + @Query("worldId") long worldId, + @Query("dynamicId") String dynamicId, + @Query("pageSize") int pageSize, + @Query("types") String types); + /** * @param likedUid 被赞用户uid * @param status 状态,0-取消赞,1-赞 diff --git a/core/src/model_community/java/com/yizhuan/xchat_android_core/community/dynamic/IDynamicModel.java b/core/src/model_community/java/com/yizhuan/xchat_android_core/community/dynamic/IDynamicModel.java index 407b24f42..a4c15de23 100644 --- a/core/src/model_community/java/com/yizhuan/xchat_android_core/community/dynamic/IDynamicModel.java +++ b/core/src/model_community/java/com/yizhuan/xchat_android_core/community/dynamic/IDynamicModel.java @@ -12,6 +12,8 @@ public interface IDynamicModel { Single getDynamicList(long worldId, String dynamicId); + Single getLatestDynamicList(long worldId, String dynamicId); + Single like(long worldId, long dynamicId, long likedUid, int status, int event); Single delete(long worldId, long dynamicId); diff --git a/core/src/model_community/java/com/yizhuan/xchat_android_core/community/square/ISquareModel.java b/core/src/model_community/java/com/yizhuan/xchat_android_core/community/square/ISquareModel.java index f26ac81e8..1616b5149 100644 --- a/core/src/model_community/java/com/yizhuan/xchat_android_core/community/square/ISquareModel.java +++ b/core/src/model_community/java/com/yizhuan/xchat_android_core/community/square/ISquareModel.java @@ -21,5 +21,9 @@ public interface ISquareModel { * 关注动态列表 */ Single getFollowerDynamics(String dynamicId, int pageSize); + /** + * 最新动态 + */ + Single getLatestDynamics(int page, int pageSize,String dynamicId); } diff --git a/core/src/model_community/java/com/yizhuan/xchat_android_core/community/square/SquareModel.java b/core/src/model_community/java/com/yizhuan/xchat_android_core/community/square/SquareModel.java index 0858cca96..a79f19ca2 100644 --- a/core/src/model_community/java/com/yizhuan/xchat_android_core/community/square/SquareModel.java +++ b/core/src/model_community/java/com/yizhuan/xchat_android_core/community/square/SquareModel.java @@ -39,6 +39,16 @@ public class SquareModel extends BaseModel implements ISquareModel { .compose(RxHelper.handleCommon(ArrayList::new)); } + /** + * 最新动态 + */ + @Override + public Single getLatestDynamics(int page, int pageSize,String dynamicId) { + return api.apiLatestDynamics(page, pageSize,dynamicId, CommunityConstant.VERSION_VALID_TYPE) + .compose(RxHelper.handleCommon()); + } + + /** * 关注动态列表 */ @@ -48,6 +58,7 @@ public class SquareModel extends BaseModel implements ISquareModel { .compose(RxHelper.handleCommon()); } + private interface Api { /** @@ -63,6 +74,20 @@ public class SquareModel extends BaseModel implements ISquareModel { @Query("types") String types ); + /** + * 最新动态 + * @param page 页数,1表示取首页,其他表示取其他页 + * @param pageSize 请求返回的记录数 + * @return - + */ + @GET("/dynamic/square/latestDynamics") + Single> apiLatestDynamics( + @Query("page") int page, + @Query("pageSize") int pageSize, + @Query("dynamicId") String dynamicId, + @Query("types") String types + ); + /** * 关注的动态列表 * @param pageSize 请求返回的记录数 diff --git a/core/src/model_mentoring_relationship/java/com/yizhuan/xchat_android_core/mentoring_relationship/bean/GrabApprenticesInfo.java b/core/src/model_mentoring_relationship/java/com/yizhuan/xchat_android_core/mentoring_relationship/bean/GrabApprenticesInfo.java index 8e45a20a7..e059185be 100644 --- a/core/src/model_mentoring_relationship/java/com/yizhuan/xchat_android_core/mentoring_relationship/bean/GrabApprenticesInfo.java +++ b/core/src/model_mentoring_relationship/java/com/yizhuan/xchat_android_core/mentoring_relationship/bean/GrabApprenticesInfo.java @@ -10,7 +10,7 @@ public class GrabApprenticesInfo { private Long uid; /** - * 66陪玩号 + * 66星球号 */ private Long erbanNo; diff --git a/core/src/model_mentoring_relationship/java/com/yizhuan/xchat_android_core/mentoring_relationship/bean/SimpleUserVo.java b/core/src/model_mentoring_relationship/java/com/yizhuan/xchat_android_core/mentoring_relationship/bean/SimpleUserVo.java index 966bd49d0..2c582325c 100644 --- a/core/src/model_mentoring_relationship/java/com/yizhuan/xchat_android_core/mentoring_relationship/bean/SimpleUserVo.java +++ b/core/src/model_mentoring_relationship/java/com/yizhuan/xchat_android_core/mentoring_relationship/bean/SimpleUserVo.java @@ -14,7 +14,7 @@ public class SimpleUserVo implements Serializable { */ private Long uid; /** - * 66陪玩号 + * 66星球号 */ private Long erbanNo; /** diff --git a/nim_uikit/res/values/colors.xml b/nim_uikit/res/values/colors.xml index f4fe6e270..fad58bc96 100644 --- a/nim_uikit/res/values/colors.xml +++ b/nim_uikit/res/values/colors.xml @@ -1,8 +1,8 @@ - #34EBDE - #34EBDE + #7154EE + #7154EE #00000000 #FFFFFF @@ -69,7 +69,7 @@ #248DFA #FAFAFA #B3B3B3 - #34EBDE + #7154EE #BAB0FF \ No newline at end of file diff --git a/nim_uikit/src/com/netease/nim/uikit/business/session/fragment/MessageFragment.java b/nim_uikit/src/com/netease/nim/uikit/business/session/fragment/MessageFragment.java index 56b2edc01..aa5d208e1 100644 --- a/nim_uikit/src/com/netease/nim/uikit/business/session/fragment/MessageFragment.java +++ b/nim_uikit/src/com/netease/nim/uikit/business/session/fragment/MessageFragment.java @@ -451,8 +451,8 @@ public class MessageFragment extends TFragment implements ModuleProxy, MessageLi @Subscribe(threadMode = ThreadMode.MAIN) public void onAntiSpamEvent(AntiSpamEvent event) { -// Toast.makeText(getContext(), "发送失败,66陪玩提醒您文明用语~", Toast.LENGTH_SHORT).show(); - SingleToastUtil.showToastShort("发送失败,66陪玩提醒您文明用语~"); +// Toast.makeText(getContext(), "发送失败,66星球提醒您文明用语~", Toast.LENGTH_SHORT).show(); + SingleToastUtil.showToastShort("发送失败,66星球提醒您文明用语~"); } private int moreCustomDrawable;