This commit is contained in:
huangjian
2023-03-16 15:19:31 +08:00
parent 20fded3771
commit 4490a5e54e
29 changed files with 152 additions and 131 deletions

View File

@@ -17,6 +17,7 @@ import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.View;
import android.view.animation.LinearInterpolator;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
@@ -153,17 +154,14 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
private DragLayout avatarLayout;
private TextView tvName;//最小化窗口名称
private TextView tvId;//最小化窗口ID
private CircleImageView avatarImage;
private ImageView avatarImage;
private LinearLayout llDragInfo;
private LivingIconView userLivingView;
private View viewClose;
private MainTabLayout mMainTabLayout;
private AnchorCardView anchorCardView;
private int mCurrentTabType = MainTabType.TAB_TYPE_HOME;
/**
* 房间最小化动画换成属性动画原先的补间动画影响了activity的生命周期
*/
private ObjectAnimator roomMinAnim;
/**
* 管理限制进房
*/
@@ -293,7 +291,6 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
}
private void closeOpenRoomAnimation() {
stopRoomMinAnim();
avatarLayout.setVisibility(View.GONE);
}
@@ -425,7 +422,6 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
super.onDestroy();
ImInitHelper.get().unInit();
EventBus.getDefault().unregister(this);
stopRoomMinAnim();
if (limitEnterRoomHelper != null) {
limitEnterRoomHelper.release();
}
@@ -584,21 +580,6 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
}
}
private void startRoomMinAnim() {
roomMinAnim = ObjectAnimator.ofFloat(avatarImage, "rotation", 0f, 360f);
roomMinAnim.setDuration(10000);
roomMinAnim.setRepeatCount(-1);
roomMinAnim.setInterpolator(new LinearInterpolator());
roomMinAnim.start();
}
private void stopRoomMinAnim() {
if (roomMinAnim != null) {
roomMinAnim.cancel();
roomMinAnim = null;
}
}
@SuppressLint("SetTextI18n")
private void displayAvatarLayout(String avatar, String nickName, long uid) {
avatarLayout.clearAnimation();
@@ -606,8 +587,6 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
tvName.setText(nickName);
tvId.setText("ID:" + uid);
userLivingView.start();
stopRoomMinAnim();
startRoomMinAnim();
ImageLoadUtils.loadAvatar(MainActivity.this, avatar, avatarImage);
}

View File

@@ -2017,6 +2017,11 @@ public class MessageView extends FrameLayout {
return true;
});
}
viewHolder.ivAvatar.setOnClickListener(v -> {
if (clickConsumer != null) {
Single.just(chatRoomMessage.getFromAccount()).subscribe(clickConsumer);
}
});
}

View File

@@ -176,8 +176,7 @@ public class BindCodeActivity extends BaseLoginAct {
public void onSuccess(String s) {
tvDesc.setText(getString(R.string.str_send_code_success) + mPhone);
startCountDownTimer();
toast(s);
toast(getString(R.string.str_send_code_success) + mPhone);
}
@Override

View File

@@ -342,7 +342,8 @@ public class UserInfoActivity extends BaseBindingActivity<ActivityUserInfoBindin
mBinding.tvFansCount.setText(String.valueOf(userInfo.getFansNum()));
mBinding.tvErbanId.setText(getString(R.string.me_user_id, userInfo.getErbanNo()));
mBinding.ivGoodNumber.setVisibility(userInfo.isHasPrettyErbanNo() ? View.VISIBLE : View.GONE);
mBinding.ivNewUser.setVisibility(userInfo.isNewUser() ? View.VISIBLE : View.GONE);
mBinding.ivNewUser.setImageResource(userInfo.isFromSayHelloChannel() ? R.drawable.ic_new_user_hello : R.drawable.ic_new_user);
//等级魅力值
setUserLevel(userInfo.getUserLevelVo());
//铭牌

View File

@@ -108,7 +108,7 @@ class UserInfoInfoFragment : BaseViewBindingFragment<FragmentUserinfoUserinfoBin
override fun onClick(v: View) {
when (v.id) {
R.id.tv_gift_detail -> startActivity(Intent(mContext, UserGiftActivity::class.java))
R.id.iv_more_gift -> startActivity(Intent(mContext, UserGiftActivity::class.java))
}
}
@@ -141,7 +141,7 @@ class UserInfoInfoFragment : BaseViewBindingFragment<FragmentUserinfoUserinfoBin
vm.userInfoSkillData.observe(this) {
initSkillCardList(it)
}
binding.tvGiftDetail.setOnClickListener(this)
binding.ivMoreGift.setOnClickListener(this)
}
}

View File

@@ -3,6 +3,6 @@
<item android:color="@color/text_normal_282828" android:state_selected="true" />
<item android:color="@color/text_secondary_878b9c" />
<item android:color="@color/white" />
</selector>

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 336 B

After

Width:  |  Height:  |  Size: 298 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 941 B

After

Width:  |  Height:  |  Size: 848 B

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#161722" />
<solid android:color="#CC161722" />
<corners
android:bottomLeftRadius="0dp"

View File

@@ -10,7 +10,7 @@
<item>
<shape android:shape="rectangle">
<solid android:color="#FFD2D5D7" />
<solid android:color="#878B9C" />
<corners android:radius="100dp" />
</shape>
</item>

View File

@@ -44,6 +44,7 @@
android:text="验证码已发送\n+86 15565758987"
android:textColor="@color/white"
android:textSize="@dimen/sp_20"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="@id/iv_logo"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"

View File

@@ -26,8 +26,9 @@
app:layout_constraintStart_toStartOf="parent" />
<FrameLayout
android:layout_width="match_parent"
android:layout_width="@dimen/dp_drag_layout_bg_width"
android:layout_height="0dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintBottom_toTopOf="@+id/main_tab_layout"
app:layout_constraintTop_toTopOf="parent">
@@ -36,7 +37,6 @@
android:layout_width="@dimen/dp_drag_layout_bg_width"
android:layout_height="@dimen/dp_drag_layout_bg_height"
android:layout_gravity="bottom|end"
android:layout_marginEnd="@dimen/dp_15"
android:layout_marginBottom="50dp"
android:background="@drawable/bg_room_main_entrance"
android:visibility="visible">
@@ -45,20 +45,24 @@
android:id="@+id/fl_avatar"
android:layout_width="@dimen/dp_drag_layout_avatar_size"
android:layout_height="@dimen/dp_drag_layout_avatar_size"
android:layout_centerVertical="true"
android:layout_marginStart="12.5dp">
android:layout_marginStart="15dp"
android:layout_marginTop="13dp">
<com.nnbc123.app.common.widget.CircleImageView
<com.nnbc123.app.common.widget.RectRoundImageView
android:id="@+id/avatar_image"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:src="@drawable/default_avatar" />
app:borderRadius="7dp"
app:type="round"
tools:src="@drawable/default_cover" />
<com.nnbc123.app.common.widget.CircleImageView
<com.makeramen.roundedimageview.RoundedImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@color/black"
app:riv_corner_radius="7dp"
android:alpha="0.1"
android:src="@color/black" />
/>
<com.nnbc123.app.ui.widget.LivingIconView
android:id="@+id/liv_user"
@@ -76,9 +80,9 @@
android:layout_centerVertical="true"
android:layout_marginStart="@dimen/dp_5"
android:layout_toStartOf="@id/view_close"
android:visibility="gone"
android:layout_toEndOf="@id/fl_avatar"
android:orientation="vertical">
android:orientation="vertical"
android:visibility="gone">
<TextView
android:id="@+id/tv_name"
@@ -109,8 +113,9 @@
android:layout_width="@dimen/dp_22"
android:layout_height="@dimen/dp_22"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:layout_marginEnd="@dimen/dp_18"
android:layout_marginTop="24dp"
android:layout_marginEnd="5dp"
android:scaleType="center"
android:src="@drawable/ic_room_main_entrance_close" />
</com.nnbc123.app.common.widget.DragLayout>

View File

@@ -255,7 +255,7 @@
android:padding="10dp"
android:textColor="@color/text_secondary_878b9c"
android:textSize="@dimen/dp_12"
tools:text="关注我喜欢我就关注我喜欢我就关注我我就关注我" />
tools:text="关注我喜欢关注我喜欢我就关注我喜欢我就关注我我就关注我我就关注我喜欢我就关注我我就关注我" />
</LinearLayout>
@@ -301,10 +301,19 @@
android:layout_marginTop="189dp"
android:gravity="center">
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/iv_new_user"
android:layout_width="@dimen/dp_13"
android:layout_height="@dimen/dp_13"
android:layout_marginEnd="3dp"
android:src="@mipmap/ic_user_new_13dp"
android:visibility="gone"
tools:visibility="visible" />
<ImageView
android:id="@+id/iv_good_number"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_width="@dimen/dp_13"
android:layout_height="@dimen/dp_13"
android:src="@mipmap/ic_good_num"
android:visibility="gone"
tools:visibility="visible" />

View File

@@ -141,15 +141,34 @@
</LinearLayout>
<com.nnbc123.app.ui.widget.TopRoundLinearLayout
android:layout_width="0dp"
android:layout_height="0dp"
android:background="#01ffffff"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="@id/ll_dialog_bottom_gift">
<com.github.mmin18.widget.RealtimeBlurView
android:id="@+id/realtime_blur_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:realtimeBlurRadius="30dp"
app:realtimeDownsampleFactor="3"
app:realtimeOverlayColor="#CC161722" />
</com.nnbc123.app.ui.widget.TopRoundLinearLayout>
<LinearLayout
android:id="@+id/ll_dialog_bottom_gift"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:background="@drawable/bg_dialog_room_operation"
android:orientation="vertical"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent">
app:layout_constraintStart_toStartOf="parent"
tools:background="@drawable/bg_dialog_room_operation">
<LinearLayout
android:id="@+id/ll_draw_gift"
@@ -240,6 +259,18 @@
android:background="@drawable/shap_red_point"
android:visibility="gone" />
<View
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_weight="1" />
<com.nnbc123.app.ui.widget.rollviewpager.RollPagerView
android:id="@+id/pager_view_vip"
android:layout_width="58dp"
android:layout_height="23dp"
android:layout_marginStart="8dp"
android:layout_marginEnd="15dp" />
</LinearLayout>
<View
@@ -287,9 +318,9 @@
android:layout_width="match_parent"
android:layout_height="35dp"
android:layout_marginTop="10dp"
android:visibility="gone"
android:gravity="center_vertical"
android:orientation="horizontal">
android:orientation="horizontal"
android:visibility="gone">
<TextView
android:layout_width="wrap_content"
@@ -310,7 +341,7 @@
<FrameLayout
android:layout_width="66dp"
android:layout_height="35dp"
android:background="#ff21202f">
android:background="@drawable/bg_send_all_gift">
<TextView
android:id="@+id/tv_select_all"
@@ -528,14 +559,6 @@
</LinearLayout>
<com.nnbc123.app.ui.widget.rollviewpager.RollPagerView
android:id="@+id/pager_view_vip"
android:layout_width="58dp"
android:layout_height="23dp"
android:layout_centerVertical="true"
android:layout_marginStart="8dp"
android:layout_toEndOf="@id/ll_gold" />
<LinearLayout
android:id="@+id/send_container"
android:layout_width="wrap_content"

View File

@@ -57,7 +57,6 @@
android:layout_marginStart="15dp"
android:layout_marginTop="24dp"
android:layout_marginEnd="15dp"
android:drawableEnd="@drawable/ic_userinfo_arrow_right"
android:text="礼物墙"
android:textColor="@color/text_normal_282828"
android:textSize="@dimen/sp_14"
@@ -69,6 +68,16 @@
android:layout_height="25dp"
android:layout_gravity="center_horizontal" />
<ImageView
android:id="@+id/iv_more_gift"
android:layout_width="20dp"
android:layout_height="20dp"
android:layout_gravity="end"
android:layout_marginTop="-25dp"
android:scaleType="center"
android:layout_marginEnd="15dp"
android:src="@drawable/ic_userinfo_arrow_right" />
<androidx.viewpager.widget.ViewPager
android:id="@+id/view_pager_gift"
android:layout_width="match_parent"

View File

@@ -14,14 +14,5 @@
android:layout_height="match_parent"
android:background="@drawable/shape_dynamic_topic" />
<TextView
android:id="@+id/tv_topic"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:textColor="@color/white"
android:textSize="16sp"
tools:text="#话题话题" />
</FrameLayout>

View File

@@ -204,9 +204,9 @@
<dimen name="dp_me_icon_height">55dp</dimen>
<dimen name="dp_me_padding_left">12dp</dimen>
<dimen name="dp_me_text_padding_to_icon">15dp</dimen>
<dimen name="dp_drag_layout_bg_width">190dp</dimen>
<dimen name="dp_drag_layout_bg_height">63dp</dimen>
<dimen name="dp_drag_layout_avatar_size">38dp</dimen>
<dimen name="dp_drag_layout_bg_width">96dp</dimen>
<dimen name="dp_drag_layout_bg_height">78dp</dimen>
<dimen name="dp_drag_layout_avatar_size">45dp</dimen>
<dimen name="dp_setting_item_height">50dp</dimen>
<dimen name="dp_setting_sys_notice_item_height">70.5dp</dimen>

View File

@@ -93,7 +93,7 @@ public class SquareFragment extends BaseFragment implements MainMagicIndicatorAd
@BindView(R.id.fl_contact_list)
FrameLayout flContactList;
@BindView(R.id.msg_number)
TextView tvCommunityUnread;
View tvCommunityUnread;
@BindView(R.id.roll_view)
RollPagerView rollView;
@@ -192,8 +192,6 @@ public class SquareFragment extends BaseFragment implements MainMagicIndicatorAd
View flRoot = LayoutInflater.from(container.getContext()).inflate(R.layout.item_square_topic_banner, container, false);
ImageView imgBanner = flRoot.findViewById(R.id.iv_cover);
ImageLoadKt.load(imgBanner, worldInfo.getIcon(), 12);
TextView tvTopic = flRoot.findViewById(R.id.tv_topic);
tvTopic.setText("#" + worldInfo.getName());
flRoot.setOnClickListener(v -> TopicMainActivity.start(mContext, String.valueOf(worldInfo.getId())));
return flRoot;
}
@@ -261,18 +259,9 @@ public class SquareFragment extends BaseFragment implements MainMagicIndicatorAd
@SuppressLint("SetTextI18n")
public void setNumber(int number) {
if (tvCommunityUnread instanceof BubbleView) {
((BubbleView) tvCommunityUnread).setNumText(number);
return;
}
tvCommunityUnread.setVisibility(number <= 0 ? GONE : VISIBLE);
if (number > 99) {
tvCommunityUnread.setText("99+");
} else
tvCommunityUnread.setText(String.valueOf(number));
}
@Subscribe(threadMode = ThreadMode.MAIN)
public void onLoginUserInfoUpdateEvent(LoadLoginUserInfoEvent event) {
getUnReadCount();

View File

@@ -71,11 +71,12 @@
android:scaleType="center"
android:src="@drawable/ic_community_notice_rink" />
<com.netease.nim.uikit.common.ui.draggablebubbles.BubbleView
<View
android:id="@+id/msg_number"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_10"
android:layout_width="8dp"
android:layout_height="8dp"
android:background="@drawable/shape_circle_red_small"
android:layout_marginStart="@dimen/dp_12"
android:gravity="center"
android:visibility="visible"
tools:text="123"
@@ -96,19 +97,27 @@
</androidx.coordinatorlayout.widget.CoordinatorLayout>
<com.nnbc123.app.common.widget.DragLayout
android:id="@+id/iv_square_publish"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_marginEnd="@dimen/dp_15"
android:layout_marginBottom="90dp">
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
<com.nnbc123.app.common.widget.DragLayout
android:id="@+id/iv_square_publish"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_square_publish" />
android:layout_gravity="bottom|end"
android:layout_marginEnd="@dimen/dp_15"
android:layout_marginBottom="90dp">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_square_publish" />
</com.nnbc123.app.common.widget.DragLayout>
</FrameLayout>
</com.nnbc123.app.common.widget.DragLayout>
</FrameLayout>

View File

@@ -150,30 +150,30 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/tv_time_detail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/dp_24"
android:gravity="center"
android:textColor="@color/text_secondary_878b9c"
android:textSize="@dimen/sp_11"
android:visibility="visible"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:text="刚刚" />
</androidx.constraintlayout.widget.ConstraintLayout>
<TextView
android:id="@+id/tv_time_detail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_marginStart="25dp"
android:textColor="@color/text_secondary_878b9c"
android:textSize="@dimen/sp_11"
android:visibility="visible"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/layout_root_mini_world"
app:layout_constraintBottom_toTopOf="@id/cl_option"
android:text="刚刚" />
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/cl_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/layout_root_mini_world">
app:layout_constraintTop_toBottomOf="@id/tv_time_detail">
<ImageView
android:id="@+id/iv_like_pic"

View File

@@ -35,7 +35,7 @@
<ImageView
android:id="@+id/iv_bg"
android:layout_width="match_parent"
android:layout_height="225dp"
android:layout_height="80dp"
android:scaleType="centerCrop"
app:layout_collapseMode="parallax"
app:layout_collapseParallaxMultiplier="0.4"
@@ -44,20 +44,21 @@
<View
android:layout_width="match_parent"
android:layout_height="225dp"
android:layout_height="80dp"
android:background="#66000000" />
<TextView
android:id="@+id/tv_world_description"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_32"
android:layout_marginTop="112dp"
android:layout_marginEnd="20dp"
android:layout_marginStart="@dimen/dp_50"
android:layout_marginEnd="50dp"
android:layout_marginBottom="15dp"
android:layout_marginTop="20dp"
android:lineSpacingExtra="5dp"
android:textColor="#CCFFFFFF"
android:textSize="13sp"
android:lines="2"
app:layout_collapseMode="parallax"
app:layout_collapseParallaxMultiplier="0.4"
tools:text="故事的小黄花,从出生那年就飘着,童年的荡秋千,随记忆一直晃到现在故事的小黄花,从出生那年就飘着,童年的荡秋千,随记忆一直晃到现在~" />

View File

@@ -250,7 +250,7 @@
android:layout_marginBottom="6dp"
android:src="@drawable/icon_room_treasure_box"
android:visibility="gone"
tools:contentDescription="许愿池" />
tools:contentDescription="魔法帽" />
<ImageView
android:id="@+id/iv_queuing_micro"

View File

@@ -252,7 +252,7 @@
android:visibility="gone"
app:layout_constraintBottom_toTopOf="@id/iv_first_charge_enter"
app:layout_constraintEnd_toEndOf="parent"
tools:contentDescription="许愿池" />
tools:contentDescription="魔法帽" />
<com.nnbc123.app.avroom.widget.MessageView
android:id="@+id/message_view"

View File

@@ -41,7 +41,7 @@
android:layout_height="wrap_content"
android:layout_marginStart="2dp"
android:lineSpacingExtra="3dp"
android:text="通过许愿池许愿获得的礼物放到礼物包裹,点开礼物面板即可查看"
android:text="通过魔法帽许愿获得的礼物放到礼物包裹,点开礼物面板即可查看"
android:textColor="@color/white"
android:textSize="10sp" />

View File

@@ -47,7 +47,7 @@ public class InitInfo implements Serializable {
*/
private int openBoxSwitchLevelNo;
/**
* 梦幻许愿池开关
* 梦幻魔法帽开关
*/
private boolean diamondBoxSwitch;
/**
@@ -55,7 +55,7 @@ public class InitInfo implements Serializable {
*/
private int defaultHomeTab;
/**
* 许愿池图标
* 魔法帽图标
*/
private String openBoxIcon;
/**
@@ -291,7 +291,7 @@ public class InitInfo implements Serializable {
}
/**
* 梦幻许愿池开关
* 梦幻魔法帽开关
*/
@SuppressWarnings("all")
public boolean isDiamondBoxSwitch() {
@@ -307,7 +307,7 @@ public class InitInfo implements Serializable {
}
/**
* 许愿池图标
* 魔法帽图标
*/
@SuppressWarnings("all")
public String getOpenBoxIcon() {
@@ -574,7 +574,7 @@ public class InitInfo implements Serializable {
}
/**
* 梦幻许愿池开关
* 梦幻魔法帽开关
*/
@SuppressWarnings("all")
public void setDiamondBoxSwitch(final boolean diamondBoxSwitch) {
@@ -590,7 +590,7 @@ public class InitInfo implements Serializable {
}
/**
* 许愿池图标
* 魔法帽图标
*/
@SuppressWarnings("all")
public void setOpenBoxIcon(final String openBoxIcon) {

View File

@@ -8,11 +8,11 @@ import java.io.Serializable;
public class BoxSwitchVo implements Parcelable, Serializable {
/**宝箱开关*/
private boolean openBoxSwitch;
/**梦幻许愿池开关*/
/**梦幻魔法帽开关*/
private boolean diamondBoxSwitch;
/**许愿池图标*/
/**魔法帽图标*/
private String openBoxIcon;
/**梦幻许愿池开启时间*/
/**梦幻魔法帽开启时间*/
private String diamondBoxOpenTime;
public boolean isOpenBoxSwitch() {