Commit 7815a1d6 authored by jyx's avatar jyx

优化产品样式

parent faf6db49
......@@ -8,7 +8,8 @@
<com.tencent.qcloud.tuikit.timcommon.component.TitleBarLayout
android:id="@+id/chat_title_bar"
android:layout_width="match_parent"
android:layout_height="@dimen/page_title_height" />
android:layout_height="@dimen/page_title_height"
android:background="@color/black" />
<View
android:id="@+id/view_line"
......
......@@ -55,10 +55,12 @@ public class TUIConversationFragment extends Fragment {
private ConversationPresenter presenter;
// private ChatAc
protected void setCustomSetting() {
protected void setChatActivity() {
}
protected ConversationPresenter getPresenter() {
return presenter;
}
@Nullable
......@@ -67,6 +69,7 @@ public class TUIConversationFragment extends Fragment {
TUIConversationLog.d(TAG, "TUIConversationFragment onCreateView");
mBaseView = inflater.inflate(R.layout.conversation_fragment, container, false);
initView();
setCustomSetting();
return mBaseView;
}
......@@ -82,7 +85,6 @@ public class TUIConversationFragment extends Fragment {
}
private void initView() {
mConversationLayout = mBaseView.findViewById(R.id.conversation_layout);
presenter = new ConversationPresenter();
......
......@@ -4,7 +4,9 @@ import android.content.Context;
import android.content.Intent;
import android.text.TextUtils;
import android.util.Pair;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import com.tencent.imsdk.v2.V2TIMConversation;
import com.tencent.imsdk.v2.V2TIMConversationListFilter;
import com.tencent.imsdk.v2.V2TIMMessage;
......@@ -30,6 +32,7 @@ import com.tencent.qcloud.tuikit.tuiconversation.config.TUIConversationConfig;
import com.tencent.qcloud.tuikit.tuiconversation.interfaces.ConversationEventListener;
import com.tencent.qcloud.tuikit.tuiconversation.interfaces.IConversationListAdapter;
import com.tencent.qcloud.tuikit.tuiconversation.model.ConversationProvider;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
......@@ -201,7 +204,8 @@ public class ConversationPresenter {
});
}
public void reLoadConversation() {}
public void reLoadConversation() {
}
protected void onLoadConversationCompleted(List<ConversationInfo> conversationInfoList) {
onNewConversation(conversationInfoList, false);
......@@ -221,7 +225,8 @@ public class ConversationPresenter {
}
@Override
public void onError(String module, int errCode, String errMsg) {}
public void onError(String module, int errCode, String errMsg) {
}
});
}
......@@ -744,7 +749,8 @@ public class ConversationPresenter {
}
@Override
public void onError(String module, int errCode, String errMsg) {}
public void onError(String module, int errCode, String errMsg) {
}
});
// if new message is belong to one of the foldedConversationInfoList, then show fold item
......@@ -860,8 +866,6 @@ public class ConversationPresenter {
}
/**
*
*
* @param unreadTotal
*/
public void updateUnreadTotal(long unreadTotal) {
......@@ -895,7 +899,8 @@ public class ConversationPresenter {
}
@Override
public void onError(String module, int errCode, String errMsg) {}
public void onError(String module, int errCode, String errMsg) {
}
});
}
......@@ -1014,7 +1019,8 @@ public class ConversationPresenter {
}
@Override
public void onError(String module, int errCode, String errMsg) {}
public void onError(String module, int errCode, String errMsg) {
}
});
}
......@@ -1051,20 +1057,24 @@ public class ConversationPresenter {
provider.clearHistoryMessage(conversation.getId(), conversation.isGroup(), new IUIKitCallback<Void>() {
@Override
public void onSuccess(Void data) {}
public void onSuccess(Void data) {
}
@Override
public void onError(String module, int errCode, String errMsg) {}
public void onError(String module, int errCode, String errMsg) {
}
});
}
public void clearConversationMessage(String chatId, boolean isGroup) {
provider.clearHistoryMessage(chatId, isGroup, new IUIKitCallback<Void>() {
@Override
public void onSuccess(Void data) {}
public void onSuccess(Void data) {
}
@Override
public void onError(String module, int errCode, String errMsg) {}
public void onError(String module, int errCode, String errMsg) {
}
});
}
......@@ -1235,10 +1245,12 @@ public class ConversationPresenter {
public void clearAllUnreadMessage() {
provider.clearAllUnreadMessage(new IUIKitCallback<Void>() {
@Override
public void onSuccess(Void data) {}
public void onSuccess(Void data) {
}
@Override
public void onError(String module, int errCode, String errMsg) {}
public void onError(String module, int errCode, String errMsg) {
}
});
}
......
......@@ -72,7 +72,7 @@
android:ellipsize="end"
android:gravity="top|start"
android:singleLine="true"
android:textColor="@color/black_font_color"
android:textColor="#FFFFFF"
android:lineHeight="23.04sp"
android:textSize="17.28sp" />
......@@ -250,13 +250,13 @@
android:src="@drawable/ic_disturb"
android:visibility="gone" />
<View
android:id="@+id/view_line"
android:layout_width="match_parent"
android:layout_height="@dimen/conversation_list_divide_line_height"
android:layout_alignParentBottom="true"
android:layout_marginTop="12dp"
android:background="@color/conversation_divide_line_color" />
<!-- <View-->
<!-- android:id="@+id/view_line"-->
<!-- android:layout_width="match_parent"-->
<!-- android:layout_height="@dimen/conversation_list_divide_line_height"-->
<!-- android:layout_alignParentBottom="true"-->
<!-- android:layout_marginTop="12dp"-->
<!-- android:background="@color/conversation_divide_line_color" />-->
</RelativeLayout>
</LinearLayout>
\ No newline at end of file
......@@ -134,7 +134,7 @@ public final class TUIConstants {
public static final String EVENT_SUB_KEY_MESSAGE_INFO_CHANGED = "eventSubKeyMessageInfoChanged";
// public static final String C2C_CHAT_ACTIVITY_NAME = "TUIC2CChatActivity";
public static final String C2C_CHAT_ACTIVITY_NAME = "IMActivity";
public static final String C2C_CHAT_ACTIVITY_NAME = "C2CIMActivity";
public static final String GROUP_CHAT_ACTIVITY_NAME = "TUIGroupChatActivity";
public static final String CHAT_ID = "chatId";
......
......@@ -270,7 +270,7 @@
android:screenOrientation="portrait" />
<activity
android:name=".ui.activitys.IMActivity"
android:name=".ui.activitys.C2CIMActivity"
android:exported="false"
android:screenOrientation="portrait" />
......
[
{
"sort": "无",
"name": [
"无"
]
},
{
"sort": "娱乐体育",
"name": [
......@@ -87,11 +93,5 @@
"装修/装潢",
"侦探"
]
},
{
"sort": "无",
"name": [
"无"
]
}
]
\ No newline at end of file
......@@ -229,7 +229,6 @@ object GlideUtils {
.into(imageView)
}
fun loadThumbImageView(context: Context, path: String?, mImageView: ImageView) {
Glide.with(context).load("$path?x-oss-process=image/resize,p_20").into(mImageView)
}
......
......@@ -10,7 +10,7 @@ import com.duben.library.net.neterror.Throwable
import com.duben.roseplaylet.MintsApplication
import com.duben.roseplaylet.R
import com.duben.roseplaylet.mvp.model.BaseResponse
import com.duben.roseplaylet.ui.activitys.IMActivity
import com.duben.roseplaylet.ui.activitys.C2CIMActivity
import com.duben.roseplaylet.utils.LogUtil
import com.duben.roseplaylet.utils.ToastUtil
import com.duben.roseplaylet.utils.UcropUtils
......@@ -75,8 +75,8 @@ class IMHelper private constructor() {
TUIConversationConfigClassic.setPinnedCellBackground(
ColorDrawable(appContext.resources.getColor(R.color.color_07060C))
)
//展示在线状态
TUIConversationConfigClassic.setShowUserOnlineStatusIcon(true)
//展示在线状态 -旗舰版能用
//TUIConversationConfigClassic.setShowUserOnlineStatusIcon(true)
//展示未读红点
TUIConversationConfigClassic.setShowCellUnreadCount(true)
......@@ -95,28 +95,8 @@ class IMHelper private constructor() {
TUIConfigClassic.setReceiveBubbleBackground(appContext.resources.getDrawable(R.drawable.shape_bg_market))
TUIChatConfigClassic.setSendTextMessageColor(Color.WHITE)
TUIChatConfigClassic.setReceiveTextMessageColor(Color.BLACK)
}
private fun setCustomTopView(wxCode: String) {
val tipsView = LayoutInflater.from(MintsApplication.getContext())
.inflate(R.layout.custom_tips_view, null)
val tvTips = tipsView.findViewById<TextView>(R.id.tv_tips)
tvTips.text = "请勿轻易通过第三方账户进行红包、转账、借款等金钱往来以免上当受骗"
tvTips.isSelected = true
val tvWxNo = tipsView.findViewById<TextView>(R.id.tv_wx_no)
val tvCopy = tipsView.findViewById<TextView>(R.id.tv_copy)
val tvSend = tipsView.findViewById<TextView>(R.id.tv_send)
tvWxNo.text = wxCode
tvCopy.setOnClickListener {
ToastUtil.show(MintsApplication.getContext(), "微信已复制到剪切板!")
UcropUtils.clipData(tvWxNo.text.toString())
}
tvSend.setOnClickListener {
// TODO
}
TUIChatConfigClassic.setCustomTopView(tipsView)
setCustomTopView("")
}
private fun loginIm() {
......@@ -146,13 +126,25 @@ class IMHelper private constructor() {
})
}
private fun setCustomTopView(wxCode: String) {
val tipsView = LayoutInflater.from(MintsApplication.getContext())
.inflate(R.layout.custom_tips_view, null)
val tvTips = tipsView.findViewById<TextView>(R.id.tv_tips)
tvTips.text = "请勿轻易通过第三方账户进行红包、转账、借款等金钱往来以免上当受骗"
tvTips.isSelected = true
fun startChatActivity(chatId: String, wechatCode: String?) {
if (!wechatCode.isNullOrEmpty()){
setCustomTopView(wechatCode)
val tvWxNo = tipsView.findViewById<TextView>(R.id.tv_wx_no)
val tvCopy = tipsView.findViewById<TextView>(R.id.tv_copy)
tvWxNo.text = wxCode
tvCopy.setOnClickListener {
ToastUtil.show(MintsApplication.getContext(), "微信已复制到剪切板!")
UcropUtils.clipData(tvWxNo.text.toString())
}
TUIChatConfigClassic.setCustomTopView(tipsView)
}
val intent = Intent(MintsApplication.getContext(), IMActivity::class.java)
fun startChatActivity(chatId: String) {
val intent = Intent(MintsApplication.getContext(), C2CIMActivity::class.java)
intent.putExtra(TUIConstants.TUIChat.CHAT_TYPE, V2TIMConversation.V2TIM_C2C)
intent.putExtra(TUIConstants.TUIChat.CHAT_ID, chatId)
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
......
......@@ -41,8 +41,35 @@ public class HallList implements Serializable {
private String lastCity;
private String headerUrl;
private String hallTime;
private String images;
private String age;
private int likeStatus;
private boolean vip;
private boolean online;
public boolean isOnline() {
return online;
}
public void setOnline(boolean online) {
this.online = online;
}
public boolean isVip() {
return vip;
}
public void setVip(boolean vip) {
this.vip = vip;
}
public String getImages() {
return images;
}
public void setImages(String images) {
this.images = images;
}
public String getBirthday() {
return birthday;
......
......@@ -36,6 +36,7 @@ class UserProfilePresenter : BasePresenter<UserProfileView>() {
view.toLikeSuc(toLikeStatus)
}
else -> {
view.toLikeFail()
view.showToast(message)
}
}
......@@ -45,6 +46,7 @@ class UserProfilePresenter : BasePresenter<UserProfileView>() {
if (isLinkView) return
view.hideLoading()
view.showToast(e?.message)
view.toLikeFail()
}
})
......@@ -162,13 +164,13 @@ class UserProfilePresenter : BasePresenter<UserProfileView>() {
vo["toUid"] = toUid
AppHttpManager.getInstance(loanApplication)
.call(loanService.unlockWechat(vo),
object : BaseSubscriber<BaseResponse<NineListBean>>() {
object : BaseSubscriber<BaseResponse<JsonObject>>() {
override fun onCompleted() {
if (isLinkView) return
view.hideLoading()
}
override fun onNext(baseResponse: BaseResponse<NineListBean>) {
override fun onNext(baseResponse: BaseResponse<JsonObject>) {
if (isLinkView) return
view.hideLoading()
......
......@@ -20,6 +20,7 @@ interface UserProfileView : BaseView {
fun toBlackSuc()
fun toLikeSuc(status: Int)
fun toLikeFail()
fun getShareUrlSuc(data: String)
fun getShareUrlSucFail()
......
......@@ -6,6 +6,8 @@ import android.content.Intent
import android.content.pm.ActivityInfo
import android.graphics.Color
import android.os.Bundle
import android.os.Handler
import android.os.Looper
import android.text.TextUtils
import android.view.View
import com.duben.library.utils.GlideUtils
......@@ -72,7 +74,7 @@ class BasicUserProfileActivity : BaseActivity(), View.OnClickListener, BasicUser
private fun initView() {
rg_sex.setOnCheckedChangeListener { _, checkedId ->
sex = if (checkedId == rb_female.id) {
sex = if (checkedId == R.id.rb_female) {
2
} else {
1
......@@ -88,18 +90,18 @@ class BasicUserProfileActivity : BaseActivity(), View.OnClickListener, BasicUser
R.id.iv_avatar -> {
showAlbum()
}
R.id.tv_age -> {
Handler(Looper.getMainLooper()).postDelayed({
showAgePickDialog()
}, 100)
}
R.id.tv_save -> {
val nickname = et_nickname.text.toString()
val age = tv_age.text.toString()
if (TextUtils.isEmpty(avatarUrl)) {
showToast("请上传头像!")
return
}
// if (TextUtils.isEmpty(avatarUrl)) {
// showToast("请上传头像!")
// return
// }
if (TextUtils.isEmpty(nickname)) {
showToast("请输入昵称!")
return
......@@ -108,7 +110,7 @@ class BasicUserProfileActivity : BaseActivity(), View.OnClickListener, BasicUser
showToast("请输入年龄!")
return
}
if (sex != 1 || sex != 2) {
if (sex == -1) {
showToast("请选择性别!")
return
}
......@@ -129,7 +131,7 @@ class BasicUserProfileActivity : BaseActivity(), View.OnClickListener, BasicUser
mSinglePickDialog = SinglePickDialog(
this, UserProfile.PROFILE_NL.str,
getAgePickerData(),
""
"1990"
)
mSinglePickDialog?.setPickResultListener(object :
SinglePickDialog.OnPickResultListener {
......
package com.duben.roseplaylet.ui.activitys
import android.app.Dialog
import android.content.Intent
import android.graphics.Color
import android.os.Bundle
import android.os.Handler
import android.os.Looper
import android.view.View
import android.view.WindowManager
import android.widget.RelativeLayout
import android.widget.TextView
import com.duben.library.net.neterror.BaseSubscriber
import com.duben.library.net.neterror.Throwable
import com.duben.roseplaylet.MintsApplication
import com.duben.roseplaylet.R
import com.duben.roseplaylet.manager.AppHttpManager
import com.duben.roseplaylet.manager.UserManager
import com.duben.roseplaylet.mvp.model.BaseResponse
import com.duben.roseplaylet.mvp.model.SeeWechat
import com.duben.roseplaylet.ui.widgets.DialogListener
import com.duben.roseplaylet.ui.widgets.SeeWechatDialog
import com.duben.roseplaylet.ui.widgets.UnlockWechatDialog
import com.duben.roseplaylet.utils.ToastUtil
import com.duben.roseplaylet.utils.UcropUtils
import com.tencent.qcloud.tuikit.tuichat.bean.C2CChatInfo
import com.tencent.qcloud.tuikit.tuichat.bean.ChatInfo
import com.tencent.qcloud.tuikit.tuichat.classicui.page.TUIBaseChatActivity
import com.tencent.qcloud.tuikit.tuichat.classicui.page.TUIC2CChatFragment
import com.tencent.qcloud.tuikit.tuichat.config.TUIChatConfigs
import com.tencent.qcloud.tuikit.tuichat.presenter.C2CChatPresenter
import com.tencent.qcloud.tuikit.tuichat.util.TUIChatLog
/**
* @author Assen
* @date 2025/1/12
* @desc
*/
class IMActivity : TUIBaseChatActivity() {
class C2CIMActivity : TUIBaseChatActivity() {
companion object {
private val TAG = IMActivity::class.java.simpleName
private val TAG = C2CIMActivity::class.java.simpleName
}
private lateinit var chatFragment: TUIC2CChatFragment
......@@ -55,32 +65,169 @@ class IMActivity : TUIBaseChatActivity() {
.replace(R.id.chat_fragment_container, chatFragment)
.commitAllowingStateLoss()
loadHaveWechat()
initChatSetting()
}
private fun initChatSetting() {
Handler(Looper.getMainLooper()).postDelayed({
val chatView = chatFragment.chatView
chatView.viewline.visibility = View.GONE
// chatView.inputView.setInterceptTouchEvent(true)
chatView.inputView.setBgColor(resources.getColor(R.color.color_171619))
chatView.inputView.setOnClickListener {
if (UserManager.getInstance().userSex == 1) {
// 默认不能聊天
chatView.inputView.setInterceptTouchEvent(true)
chatView.inputView.setOnClickListener {
showUnlockWechatDialog()
}
}
val titleBarLayout = chatView.titleBar
titleBarLayout.setBgColor(resources.getColor(R.color.color_15141A))
titleBarLayout.middleTitle.setTextColor(Color.WHITE)
// titleBarLayout.setTitle("哈哈哈", ITitleBarLayout.Position.MIDDLE)
titleBarLayout.setRightIcon(R.mipmap.ic_alipay)
titleBarLayout.rightGroup.setOnClickListener {
ToastUtil.show(MintsApplication.getContext(), "OOOOOOO")
}
titleBarLayout.setRightIcon(R.mipmap.ic_profile_more)
titleBarLayout.rightGroup.setOnClickListener {}
}, 100)
}
private fun loadHaveWechat() {
if (UserManager.getInstance().userSex == 1) {
val vo = hashMapOf<String, Any>()
vo["toUid"] = chatFragment.chatInfo.id
val application = MintsApplication.getContext() as MintsApplication
AppHttpManager.getInstance(application)
.call(application.loanService.seeWechat(vo),
object : BaseSubscriber<BaseResponse<SeeWechat>>() {
override fun onCompleted() {}
override fun onNext(baseResponse: BaseResponse<SeeWechat>) {
when (baseResponse.status) {
200 -> {
val data = baseResponse.data
if (data.canSee) {
setCustomTopView(data.wechat)
} else {
setCustomTopView(data.wechat)
}
setUserCanChat(data.canSee)
}
else -> {
setCustomTopView("****")
}
}
}
override fun onError(e: Throwable?) {}
})
}
}
private fun unlockWechat() {
val vo = hashMapOf<String, Any>()
vo["toUid"] = chatFragment.chatInfo.id
val application = MintsApplication.getContext() as MintsApplication
AppHttpManager.getInstance(application)
.call(application.loanService.unlockWechat(vo),
object : BaseSubscriber<BaseResponse<SeeWechat>>() {
override fun onCompleted() {}
override fun onNext(baseResponse: BaseResponse<SeeWechat>) {
when (baseResponse.status) {
200 -> {
loadHaveWechat()
}
500 -> {
loadHaveWechat()
}
else -> {}
}
}
override fun onError(e: Throwable?) {}
})
}
private fun setUserCanChat(canChat: Boolean) {
val chatView = chatFragment.chatView
if (!canChat) {
// 不能聊天
chatView.inputView.setInterceptTouchEvent(true)
chatView.inputView.setOnClickListener {
showUnlockWechatDialog()
}
} else {
chatView.inputView.setInterceptTouchEvent(false)
}
}
private fun setCustomTopView(wxCode: String) {
val customNoticeLayout = TUIChatConfigs.getNoticeLayoutConfig().customNoticeLayout
val tvWxNo = customNoticeLayout.findViewById<TextView>(R.id.tv_wx_no)
val tvInfo = customNoticeLayout.findViewById<TextView>(R.id.tv_info)
val rlWxInfo = customNoticeLayout.findViewById<RelativeLayout>(R.id.rl_wx_info)
if (wxCode.isEmpty()) {
tvWxNo.text = "保密"
} else {
tvWxNo.text = wxCode
}
if (UserManager.getInstance().userSex == 1) {
tvInfo.visibility = View.VISIBLE
rlWxInfo.visibility = View.VISIBLE
} else {
tvInfo.visibility = View.GONE
rlWxInfo.visibility = View.GONE
}
}
private fun showSeeWechatDialog(wechatCode: String) {
SeeWechatDialog(this,
chatFragment.chatInfo.faceUrl,
chatFragment.chatInfo.chatName,
wechatCode,
object : DialogListener() {
override fun onClick(dialog: Dialog?, v: View?) {
super.onClick(dialog, v)
dialog?.dismiss()
when (v?.id) {
R.id.tv_send_btn -> {
//
}
R.id.tv_copy -> {
ToastUtil.show(MintsApplication.getContext(), "微信已复制到剪切板!")
UcropUtils.clipData(wechatCode)
}
}
}
}).show()
}
private fun showUnlockWechatDialog() {
UnlockWechatDialog(
this,
chatFragment.chatInfo.faceUrl,
UserManager.getInstance().vipFlag,
object : DialogListener() {
override fun onClick(dialog: Dialog?, v: View?) {
super.onClick(dialog, v)
dialog?.dismiss()
when (v?.id) {
R.id.tv_vip_btn -> {
val intent = Intent(this@C2CIMActivity, VipActivity::class.java)
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
startActivity(intent)
}
R.id.tv_vip_coin -> {
unlockWechat()
}
else -> {}
}
}
}).show()
}
override fun onDestroy() {
val chatPresenter: C2CChatPresenter? = chatFragment.presenter
chatPresenter?.removeC2CChatEventListener()
......
......@@ -18,6 +18,7 @@ import com.scwang.smartrefresh.layout.api.RefreshLayout
import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener
import com.scwang.smartrefresh.layout.listener.OnRefreshListener
import kotlinx.android.synthetic.main.activity_common_data.*
import kotlinx.android.synthetic.main.fragment_square_list.*
import kotlinx.android.synthetic.main.header_layout.*
class CommonDataActivity : BaseActivity(), View.OnClickListener, OnRefreshListener, CommonView,
......@@ -189,6 +190,10 @@ class CommonDataActivity : BaseActivity(), View.OnClickListener, OnRefreshListen
tv_tips.visibility = View.VISIBLE
}
if (data.list.size < pageSize) {
srl_square.finishLoadMoreWithNoMoreData()
}
srl_data.finishRefresh(true)
commonListAdapter.setNewInstance(data.list)
} else {
......
......@@ -61,6 +61,8 @@ class MainActivity : BaseActivity(), View.OnClickListener {
}
tab_iv_video.isSelected = true
tab_tv_video.isSelected = true
// tab_iv_invite.isSelected = true
// tab_tv_invite.isSelected = true
}
override fun isApplyKitKatTranslucency(): Boolean {
......
package com.duben.roseplaylet.ui.activitys
import android.annotation.SuppressLint
import android.app.Dialog
import android.graphics.Color
import android.os.Handler
......@@ -20,7 +19,6 @@ import com.duben.library.utils.nodoubleclick.AntiShake
import com.duben.roseplaylet.common.AppConfig
import kotlinx.android.synthetic.main.activity_settings.*
import kotlinx.android.synthetic.main.header_layout.*
import java.util.*
class SettingsActivity : BaseActivity(), View.OnClickListener {
......@@ -49,8 +47,8 @@ class SettingsActivity : BaseActivity(), View.OnClickListener {
}
}
@SuppressLint("CutPasteId")
private fun initLayout() {
iv_left_icon.setOnClickListener(this)
layout_phone.setOnClickListener(this)
layout_cancel.setOnClickListener(this)
layout_cache.setOnClickListener(this)
......
......@@ -79,11 +79,11 @@ class UserProfileActivity : BaseActivity(), View.OnClickListener, UserProfileVie
initListener()
userProfilePresenter.getShareUrl()
userProfilePresenter.getMorePage(toUid)
}
override fun onResume() {
super.onResume()
userProfilePresenter.getMorePage(toUid)
}
private fun initView() {
......@@ -163,11 +163,12 @@ class UserProfileActivity : BaseActivity(), View.OnClickListener, UserProfileVie
}
R.id.tv_chat -> {
userProfileData?.let {
userSeeWechat = false
// 自己是不是男性
if (UserManager.getInstance().userSex == 1) {
if (UserManager.getInstance().vipFlag) {
// 直接聊
IMHelper.instance.startChatActivity("" + it.uid, it.infoWechat)
IMHelper.instance.startChatActivity("" + it.uid)
} else {
// 男性 非VIP 弹解锁聊天弹框
// showUnlockWechatDialog()
......@@ -176,7 +177,7 @@ class UserProfileActivity : BaseActivity(), View.OnClickListener, UserProfileVie
} else {
if (UserManager.getInstance().idcardStatus == 1) {
// 直接聊
IMHelper.instance.startChatActivity("" + it.uid, it.infoWechat)
IMHelper.instance.startChatActivity("" + it.uid)
} else {
// 女性 弹出认证弹框
UserHelper.instance.showRealAuthDialog()
......@@ -185,6 +186,7 @@ class UserProfileActivity : BaseActivity(), View.OnClickListener, UserProfileVie
}
}
R.id.tv_wechat -> {
userSeeWechat = true
userProfilePresenter.seeWechat(toUid)
}
}
......@@ -306,11 +308,19 @@ class UserProfileActivity : BaseActivity(), View.OnClickListener, UserProfileVie
if (!TextUtils.isEmpty(it.distance)) {
if (userIsMale) {
tv_label_distance_male.visibility = View.VISIBLE
tv_label_distance_male.text = it.distance + "km"
if (it.distance.isNullOrEmpty()) {
tv_label_distance_male.text = "未知"
} else {
tv_label_distance_male.text = "距你" + it.distance + "km"
}
tv_label_distance_female.visibility = View.GONE
} else {
tv_label_distance_female.visibility = View.VISIBLE
if (it.distance.isNullOrEmpty()) {
tv_label_distance_female.text = "未知"
} else {
tv_label_distance_female.text = "距你" + it.distance + "km"
}
tv_label_distance_male.visibility = View.GONE
}
}
......@@ -398,7 +408,7 @@ class UserProfileActivity : BaseActivity(), View.OnClickListener, UserProfileVie
} else {
// 用户想聊天 直接聊
userProfileData?.let {
IMHelper.instance.startChatActivity("" + it.uid, it.infoWechat)
IMHelper.instance.startChatActivity("" + it.uid)
}
}
} else {
......@@ -424,7 +434,7 @@ class UserProfileActivity : BaseActivity(), View.OnClickListener, UserProfileVie
}
override fun unlockWechatSuc() {
userProfilePresenter.seeWechat(toUid)
}
override fun unlockWechatFail() {
......@@ -448,6 +458,22 @@ class UserProfileActivity : BaseActivity(), View.OnClickListener, UserProfileVie
}
}
override fun toLikeFail() {
if (!UserManager.getInstance().vipFlag && UserManager.getInstance().userSex == 1) {
// 是男性且未开通VIP
val bundle = Bundle()
bundle.putString(VipActivity.OTHER_USER_ID, "" + userProfileData?.uid)
readyGo(VipActivity::class.java, bundle)
return
}
if (UserManager.getInstance().userSex == 2) {
// 女性 弹出认证弹框
UserHelper.instance.showRealAuthDialog()
return
}
}
override fun onDestroy() {
userProfilePresenter.detachView()
super.onDestroy()
......@@ -548,11 +574,9 @@ class UserProfileActivity : BaseActivity(), View.OnClickListener, UserProfileVie
bundle.putString(VipActivity.OTHER_USER_ID, "" + userProfileData?.uid)
readyGo(VipActivity::class.java, bundle)
}
R.id.tv_vip_coin -> {
userProfilePresenter.unlockInfoByCoin(toUid)
}
else -> {}
}
}
......
......@@ -38,7 +38,7 @@ public abstract class BaseActivity extends BaseAppCompatActivity implements Base
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 禁止截图
getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE);
// getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE);
if (android.os.Build.VERSION.SDK_INT != Build.VERSION_CODES.O) {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
......
......@@ -4,7 +4,6 @@ import androidx.fragment.app.Fragment
import androidx.viewpager2.adapter.FragmentStateAdapter
import com.duben.roseplaylet.mvp.model.HotStyleTypesBean
import com.duben.roseplaylet.ui.fragment.CsjMovieFragment
import com.duben.roseplaylet.ui.fragment.MovieFragment
class CsjVideoPageAdapter(
private val data: List<HotStyleTypesBean>,
......
......@@ -3,7 +3,9 @@ package com.duben.roseplaylet.ui.adapter
import android.content.Intent
import android.os.Bundle
import android.view.View
import android.widget.FrameLayout
import android.widget.ImageView
import android.widget.LinearLayout
import android.widget.TextView
import com.airbnb.lottie.LottieAnimationView
import com.airbnb.lottie.LottieComposition
......@@ -14,55 +16,166 @@ import com.chad.library.adapter.base.viewholder.BaseViewHolder
import com.duben.library.utils.GlideUtils
import com.duben.roseplaylet.R
import com.duben.roseplaylet.common.Constant
import com.duben.roseplaylet.manager.UserManager
import com.duben.roseplaylet.mvp.model.HallList
import com.duben.roseplaylet.ui.activitys.UserProfileActivity
import com.google.gson.Gson
import kotlinx.android.synthetic.main.activity_user_profile.*
import net.center.blurview.ShapeBlurView
import net.center.blurview.enu.BlurMode
class SquareAdapter : BaseQuickAdapter<HallList.ListDTO, BaseViewHolder>(R.layout.item_square) {
private val gson by lazy { Gson() }
private var isBlur = false
override fun convert(holder: BaseViewHolder, item: HallList.ListDTO) {
holder.getView<TextView>(R.id.tv_recommend_name).text = item.nickName
holder.getView<TextView>(R.id.tv_status).text = item.hallTime
if (item.distance.isEmpty()) {
holder.getView<TextView>(R.id.tv_recommend_location).text = "" + item.distance + "km"
} else {
holder.getView<TextView>(R.id.tv_recommend_location).text = "无"
}
val tvRealLabel = holder.getView<TextView>(R.id.tv_real_label)
if (item.idcardStatus == 1) {
tvRealLabel.visibility = View.VISIBLE
if (UserManager.getInstance().userSex == 2) {
// 用户是男的,看的只有女的
if (item.isVip) {
holder.getView<TextView>(R.id.tv_recommend_vip).visibility = View.VISIBLE
} else {
tvRealLabel.visibility = View.GONE
holder.getView<TextView>(R.id.tv_recommend_vip).visibility = View.GONE
}
if (isBlur) {
GlideUtils.loadBlurImageView(
if (item.isOnline) {
holder.getView<TextView>(R.id.tv_recommend_online).visibility = View.VISIBLE
} else {
holder.getView<TextView>(R.id.tv_recommend_online).visibility = View.GONE
}
GlideUtils.loadThumbRoundImageView(
holder.itemView.context,
item.headerUrl,
holder.getView(R.id.iv_recommend_header)
)
holder.getView<TextView>(R.id.tv_recommend_age).visibility = View.VISIBLE
holder.getView<TextView>(R.id.tv_recommend_age).text = "" + item.age + "岁"
holder.getView<TextView>(R.id.tv_recommend_label1).text = item.birthday
// if (item.)
if (item.career.isEmpty()) {
holder.getView<TextView>(R.id.tv_recommend_label2).text = item.career
} else {
GlideUtils.loadImageViewNoAnim2(
holder.getView<TextView>(R.id.tv_recommend_label2).text = "无"
}
} else {
if (isBlur) {
val blurView = holder.getView<ShapeBlurView>(R.id.item_blurview)
blurView.visibility = View.VISIBLE
blurView.post {
blurView.refreshView(
ShapeBlurView.build(context)
.setBlurMode(BlurMode.MODE_RECTANGLE)
.setCornerRadius(10f)
)
}
}
GlideUtils.loadThumbRoundImageView(
holder.itemView.context,
item.headerUrl,
holder.getView(R.id.iv_recommend_header)
)
holder.getView<LinearLayout>(R.id.ll_album).visibility = View.VISIBLE
holder.getView<TextView>(R.id.tv_status).text = item.hallTime
if (item.age.isNotEmpty()) {
holder.getView<TextView>(R.id.tv_recommend_label1).text = item.age
} else {
holder.getView<TextView>(R.id.tv_recommend_label1).visibility = View.GONE
}
if (item.career.isNotEmpty()) {
holder.getView<TextView>(R.id.tv_recommend_label2).text = item.career
} else {
holder.getView<TextView>(R.id.tv_recommend_label2).visibility = View.GONE
}
val tvRealLabel = holder.getView<TextView>(R.id.tv_real_label)
if (item.idcardStatus == 1) {
tvRealLabel.visibility = View.VISIBLE
} else {
tvRealLabel.visibility = View.GONE
}
val view = holder.getView<LottieAnimationView>(R.id.iv_heart)
view.visibility = View.VISIBLE
if (item.likeStatus == 0) {
playCancelCollectAnim(view)
} else {
playCollectAnim(view)
}
val array: Array<String> = gson.fromJson(item.images, Array<String>::class.java)
if (array.isNotEmpty()) {
val view1 = holder.getView<ImageView>(R.id.iv_photo1)
val view2 = holder.getView<ImageView>(R.id.iv_photo2)
val view3 = holder.getView<FrameLayout>(R.id.fl_photo_more)
if (array.size > 3) {
view1.visibility = View.VISIBLE
view2.visibility = View.VISIBLE
view3.visibility = View.VISIBLE
GlideUtils.loadThumbRoundImageView(context, array[0], view1)
GlideUtils.loadThumbRoundImageView(context, array[1], view2)
GlideUtils.loadThumbRoundImageView(
context,
array[2],
holder.getView(R.id.iv_photo_more)
)
holder.getView<TextView>(R.id.tv_more).text = "+${array.size}"
} else if (array.size == 3) {
view1.visibility = View.VISIBLE
view2.visibility = View.VISIBLE
view3.visibility = View.VISIBLE
GlideUtils.loadThumbRoundImageView(context, array[0], view1)
GlideUtils.loadThumbRoundImageView(context, array[1], view2)
GlideUtils.loadThumbRoundImageView(
context,
array[2],
holder.getView(R.id.iv_photo_more)
)
holder.getView<TextView>(R.id.tv_more).visibility = View.GONE
} else if (array.size == 2) {
view1.visibility = View.VISIBLE
view2.visibility = View.VISIBLE
GlideUtils.loadThumbRoundImageView(context, array[0], view1)
GlideUtils.loadThumbRoundImageView(context, array[1], view2)
view3.visibility = View.GONE
} else if (array.size == 1) {
view1.visibility = View.VISIBLE
GlideUtils.loadThumbRoundImageView(context, array[0], view1)
view2.visibility = View.GONE
view3.visibility = View.GONE
}
} else {
holder.getView<ImageView>(R.id.iv_photo1).visibility = View.GONE
holder.getView<ImageView>(R.id.iv_photo2).visibility = View.GONE
holder.getView<FrameLayout>(R.id.fl_photo_more).visibility = View.GONE
}
}
if (UserManager.getInstance().userSex == 1) {
// 用户是男的,看的只有女的,女的只有喜欢
holder.getView<ImageView>(R.id.iv_heart).setOnClickListener {
mOnClickLikeListener?.onClickLike(holder.adapterPosition)
if (item.likeStatus == 0) {
playCollectAnim(holder.getView(R.id.iv_heart))
} else {
playCancelCollectAnim(holder.getView(R.id.iv_heart))
}
}
}
holder.itemView.setOnClickListener {
val intent = Intent(it.context, UserProfileActivity::class.java)
......@@ -102,7 +215,6 @@ class SquareAdapter : BaseQuickAdapter<HallList.ListDTO, BaseViewHolder>(R.layou
view.setImageDrawable(lottieDrawable)
}
private var mOnClickLikeListener: OnClickLikeListener? = null
fun setOnClickLikeListener(onClickLikeListener: OnClickLikeListener) {
......
......@@ -3,7 +3,6 @@ package com.duben.roseplaylet.ui.adapter
import androidx.fragment.app.Fragment
import androidx.viewpager2.adapter.FragmentStateAdapter
import com.duben.roseplaylet.ui.fragment.SquareListFragment
import com.duben.roseplaylet.utils.LogUtil
class SquarePageAdapter(
private val data: List<String>,
......
......@@ -3,7 +3,6 @@ package com.duben.roseplaylet.ui.fragment
import android.os.Bundle
import androidx.fragment.app.Fragment
import com.duben.roseplaylet.R
import com.duben.roseplaylet.mvp.model.HallList
import com.duben.roseplaylet.mvp.model.UserList
import com.duben.roseplaylet.mvp.presenters.CommonPresenter
import com.duben.roseplaylet.mvp.views.CommonView
......@@ -65,11 +64,7 @@ class CommonListFragment : LazyLoadBaseFragment(), OnRefreshListener, CommonView
}
override fun getCommonDataSuc(data: UserList) {
TODO("Not yet implemented")
}
override fun getCommonDataFail() {
override fun getCommonDataSuc(data: UserList) {}
}
override fun getCommonDataFail() {}
}
\ No newline at end of file
......@@ -6,8 +6,6 @@ import android.view.View
import android.widget.FrameLayout
import androidx.fragment.app.Fragment
import androidx.recyclerview.widget.LinearLayoutManager
import com.bytedance.sdk.djx.DJXSdk
import com.bytedance.sdk.djx.model.DJXDramaUnlockAdMode
import com.bytedance.sdk.djx.params.DJXWidgetDramaDetailParams
import com.duben.library.utils.json.JsonUtil
import com.duben.roseplaylet.R
......@@ -16,7 +14,6 @@ import com.duben.roseplaylet.ad.express.MainExpressManager
import com.duben.roseplaylet.common.AppConfig
import com.duben.roseplaylet.common.Constant
import com.duben.roseplaylet.manager.CsjDJXSdkManager
import com.duben.roseplaylet.manager.LocalVedioManager
import com.duben.roseplaylet.manager.UserManager
import com.duben.roseplaylet.mvp.model.MULTI_ITEM_1
import com.duben.roseplaylet.mvp.model.MULTI_ITEM_3
......@@ -26,7 +23,6 @@ import com.duben.roseplaylet.ui.activitys.CsjDetailActivity
import com.duben.roseplaylet.ui.adapter.NewHotStyleAdapter
import com.duben.roseplaylet.ui.fragment.base.LazyLoadBaseFragment
import com.duben.roseplaylet.utils.CommonUtils
import com.duben.roseplaylet.video.tx.newrecommend.NewTxVideoActivity
import com.scwang.smartrefresh.layout.api.RefreshLayout
import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener
import kotlinx.android.synthetic.main.fragment_csjmovie.*
......
package com.duben.roseplaylet.ui.fragment
import com.tencent.qcloud.tuikit.tuiconversation.classicui.page.TUIConversationFragment
class CustomConversationFragment : TUIConversationFragment() {
override fun setCustomSetting() {
super.setCustomSetting()
}
}
\ No newline at end of file
package com.duben.roseplaylet.ui.fragment
import android.view.View
import com.duben.library.utils.nodoubleclick.AntiShake
import com.duben.roseplaylet.R
import com.duben.roseplaylet.manager.UserManager
import com.tencent.qcloud.tuikit.tuiconversation.classicui.page.TUIConversationFragment
class IMConversationFragment : TUIConversationFragment(), View.OnClickListener {
private val userManager by lazy { UserManager.getInstance() }
override fun onClick(v: View?) {
if (AntiShake.check(v?.id)) return
when (v?.id) {
R.id.tv_clear_noread -> {
// 清除未读
}
R.id.tv_clear_list -> {
// 清除列表
}
}
}
}
\ No newline at end of file
......@@ -9,7 +9,6 @@ import com.duben.roseplaylet.manager.UserManager
import com.duben.roseplaylet.mvp.model.VedioBean
import com.duben.roseplaylet.ui.adapter.InviteAdapter
import com.duben.roseplaylet.ui.fragment.base.LazyLoadBaseFragment
import com.duben.roseplaylet.ui.widgets.ShareDialog
import kotlinx.android.synthetic.main.fragment_main_invite.*
/**
......
......@@ -12,7 +12,6 @@ import com.duben.roseplaylet.mvp.model.*
import com.duben.roseplaylet.mvp.presenters.HomePresenter
import com.duben.roseplaylet.mvp.views.HomeView
import com.duben.roseplaylet.ui.adapter.ImageTitleAdapter
import com.duben.roseplaylet.ui.adapter.TopAdapter
import com.duben.roseplaylet.ui.fragment.base.LazyLoadBaseFragment
import com.scwang.smartrefresh.layout.api.RefreshLayout
import com.scwang.smartrefresh.layout.listener.OnRefreshListener
......
......@@ -9,12 +9,10 @@ import com.duben.library.utils.nodoubleclick.AntiShake
import com.duben.roseplaylet.R
import com.duben.roseplaylet.common.AppConfig
import com.duben.roseplaylet.common.Constant
import com.duben.roseplaylet.manager.UserManager
import com.duben.roseplaylet.ui.adapter.MsgPageAdapter
import com.duben.roseplaylet.ui.fragment.base.LazyLoadBaseFragment
import com.google.android.material.tabs.TabLayout
import com.google.android.material.tabs.TabLayoutMediator
import com.tencent.qcloud.tuikit.tuiconversation.classicui.page.TUIConversationFragment
import kotlinx.android.synthetic.main.fragment_main_message.*
class MessageFragment : LazyLoadBaseFragment(), View.OnClickListener {
......@@ -36,7 +34,7 @@ class MessageFragment : LazyLoadBaseFragment(), View.OnClickListener {
tabsData.add(String.format("聊天"))
// tabsData.add(String.format("系统消息"))
fragmentsData.add(IMConversationFragment())
fragmentsData.add(CustomConversationFragment())
// fragmentsData.add(SystemMsgFragment())
vpAdapter = MsgPageAdapter(tabsData, fragmentsData, requireActivity())
......@@ -95,7 +93,6 @@ class MessageFragment : LazyLoadBaseFragment(), View.OnClickListener {
return view
}
override fun onFragmentResume() {
super.onFragmentResume()
if (AppConfig.fragmentClickFlag == Constant.FRAGMENT_CLICK_FOUR) {
......
......@@ -43,20 +43,12 @@ class SquareListFragment : LazyLoadBaseFragment(), SquareView, OnLoadMoreListene
override fun initViewsAndEvents() {
squarePresenter.attachView(this)
arguments?.let {
mType = it.getInt(SQUARE_TYPE, 1)
}
arguments?.let { mType = it.getInt(SQUARE_TYPE, 1) }
initListener()
initRecy()
}
override fun onResume() {
super.onResume()
// onRefresh()
}
override fun onDestroy() {
super.onDestroy()
squarePresenter.detachView()
......@@ -71,13 +63,13 @@ class SquareListFragment : LazyLoadBaseFragment(), SquareView, OnLoadMoreListene
}
}
// fun onRefresh() {
// if (AppConfig.fragmentClickFlag == Constant.FRAGMENT_CLICK_TWO) {
// hotPage = 1
// srl_square.resetNoMoreData()
// squarePresenter.getHallList(mType, hotPage, hotPageSize)
// }
// }
fun onRefresh() {
if (AppConfig.fragmentClickFlag == Constant.FRAGMENT_CLICK_TWO) {
hotPage = 1
srl_square.resetNoMoreData()
squarePresenter.getHallList(mType, hotPage, hotPageSize)
}
}
override fun onLoadMore(refreshLayout: RefreshLayout) {
hotPage = ++hotPage
......@@ -133,6 +125,9 @@ class SquareListFragment : LazyLoadBaseFragment(), SquareView, OnLoadMoreListene
if (hotPage == 1) {
srl_square.finishRefresh(true)
squareAdapter.setNewInstance(data.list)
if (data.list.size < hotPageSize) {
srl_square.finishLoadMoreWithNoMoreData()
}
} else {
if (data.list.size < hotPageSize) {
srl_square.finishLoadMoreWithNoMoreData()
......
......@@ -13,7 +13,6 @@ import android.view.View;
import com.duben.roseplaylet.MintsApplication;
import com.duben.roseplaylet.R;
import com.duben.roseplaylet.common.AppConfig;
import com.duben.roseplaylet.ui.widgets.LoadingDialog;
import com.duben.roseplaylet.utils.ToastUtil;
import com.duben.library.base.BaseAppFragment;
......
......@@ -48,7 +48,9 @@ class ProfileCountDialog(
.append("" + count + "次")
.setForegroundColor(context.resources.getColor(R.color.color_E8C46E))
.create()
tv_vip_coin.visibility = View.GONE
} else {
tv_vip_coin.visibility = View.VISIBLE
tv_free_count.text = "你今天免费的查看次数已用完"
}
iv_close = findViewById<View>(R.id.iv_close) as ImageView
......
......@@ -8,7 +8,6 @@ import com.duben.roseplaylet.ad.draw.HomeDrawExpressManager
import com.duben.roseplaylet.common.AppConfig
import com.duben.roseplaylet.common.Constant
import com.duben.roseplaylet.manager.LocalVedioManager
import com.duben.roseplaylet.manager.UserManager
import com.duben.roseplaylet.mvp.model.BannerList
import com.duben.roseplaylet.mvp.presenters.RecommendPresenter
import com.duben.roseplaylet.mvp.views.RecommendView
......
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@mipmap/ic_tab_home_selected" android:state_selected="true" />
<item android:drawable="@mipmap/ic_tab_home_unselected" android:state_selected="false" />
<item android:drawable="@mipmap/ic_tab_msg_selected" android:state_selected="true" />
<item android:drawable="@mipmap/ic_tab_msg_unselected" android:state_selected="false" />
</selector>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@mipmap/ic_tab_my_selected" android:state_selected="true" />
<item android:drawable="@mipmap/ic_tab_my_unselected" android:state_selected="false" />
</selector>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@mipmap/ic_tab_share_selected" android:state_selected="true" />
<item android:drawable="@mipmap/ic_tab_share_unselected" android:state_selected="false" />
</selector>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@mipmap/ic_tab_square_selected" android:state_selected="true" />
<item android:drawable="@mipmap/ic_tab_square_unselected" android:state_selected="false" />
</selector>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@mipmap/ic_tab_video_selected" android:state_selected="true" />
<item android:drawable="@mipmap/ic_tab_video_unselected" android:state_selected="false" />
</selector>
\ No newline at end of file
......@@ -38,6 +38,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end|bottom"
android:layout_marginEnd="15dp"
android:src="@mipmap/ic_upload_img" />
</FrameLayout>
......
......@@ -42,7 +42,7 @@
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
android:contentDescription="@null"
android:src="@drawable/selector_tab_home" />
android:src="@drawable/selector_tab_video" />
<TextView
android:id="@+id/tab_tv_video"
......@@ -67,7 +67,7 @@
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
android:contentDescription="@null"
android:src="@drawable/selector_tab_home" />
android:src="@drawable/selector_tab_share" />
<TextView
android:id="@+id/tab_tv_square"
......@@ -92,7 +92,7 @@
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
android:contentDescription="@null"
android:src="@drawable/selector_tab_home" />
android:src="@drawable/selector_tab_share" />
<TextView
android:id="@+id/tab_tv_invite"
......@@ -117,7 +117,7 @@
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
android:contentDescription="@null"
android:src="@drawable/selector_tab_home" />
android:src="@drawable/selector_tab_msg" />
<TextView
android:id="@+id/tab_tv_msg"
......@@ -142,7 +142,7 @@
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
android:contentDescription="@null"
android:src="@drawable/selector_tab_home" />
android:src="@drawable/selector_tab_my" />
<TextView
android:id="@+id/tab_tv_my"
......
......@@ -27,11 +27,10 @@
android:layout_height="wrap_content"
android:orientation="vertical">
<RelativeLayout
<FrameLayout
android:id="@+id/rl_top_female"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="visible">
android:layout_height="wrap_content">
<ImageView
android:id="@+id/iv_avatar_female"
......@@ -43,10 +42,10 @@
android:id="@+id/tv_active"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_gravity="bottom"
android:layout_marginStart="10dp"
android:layout_marginBottom="20dp"
android:background="@drawable/shape_bg_black"
android:layout_marginBottom="10dp"
android:background="@drawable/shape_half_trans"
android:paddingStart="10dp"
android:paddingTop="2dp"
android:paddingEnd="10dp"
......@@ -54,7 +53,7 @@
android:text="近日活跃"
android:textColor="@color/white" />
</RelativeLayout>
</FrameLayout>
<View
android:id="@+id/view_male"
......@@ -85,7 +84,7 @@
<androidx.core.widget.NestedScrollView
android:id="@+id/nsv"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_height="wrap_content"
android:background="@color/color_232122"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
......@@ -335,7 +334,7 @@
android:gravity="center"
android:text="喜欢"
android:textColor="@color/color_0B0907"
android:textSize="16sp" />
android:textSize="14sp" />
<ImageView
......
......@@ -8,26 +8,28 @@
android:id="@+id/tv_tips"
android:layout_width="match_parent"
android:layout_height="25dp"
android:background="@color/color_48484C"
android:background="@color/color_15141A"
android:ellipsize="marquee"
android:focusable="true"
android:focusableInTouchMode="true"
android:gravity="center"
android:marqueeRepeatLimit="marquee_forever"
android:paddingStart="10dp"
android:paddingEnd="10dp"
android:scrollHorizontally="true"
android:singleLine="true"
android:textColor="@color/color_8F8E94"
android:textSize="14sp" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/rl_wx_info"
android:layout_margin="10dp"
android:background="@drawable/shape_chat_tips"
android:elevation="2dp"
android:paddingStart="20dp"
android:paddingTop="10dp"
android:paddingEnd="10dp"
android:paddingEnd="20dp"
android:paddingBottom="10dp">
<ImageView
......@@ -47,43 +49,32 @@
android:gravity="center_vertical"
android:text="33343434"
android:textColor="@color/black"
android:textSize="18sp" />
android:textSize="18sp"
android:textStyle="bold" />
<TextView
android:id="@+id/tv_wx_info"
android:layout_width="wrap_content"
android:layout_height="26dp"
android:layout_alignTop="@id/tv_send"
android:layout_alignBottom="@id/tv_send"
android:layout_height="wrap_content"
android:layout_below="@id/iv_wx"
android:layout_marginTop="10dp"
android:gravity="center_vertical"
android:src="@mipmap/ic_call_wx"
android:text="微信仅保留24小时"
android:textColor="@color/black"
android:textSize="16sp" />
android:textColor="@color/color_0F0913"
android:textSize="14sp" />
<TextView
android:id="@+id/tv_copy"
android:layout_width="110dp"
android:layout_height="28dp"
android:layout_width="80dp"
android:layout_height="30dp"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:background="@drawable/shape_chat_black"
android:gravity="center"
android:text="复制"
android:textColor="@color/color_FDEEC8" />
<TextView
android:id="@+id/tv_send"
android:layout_width="110dp"
android:layout_height="28dp"
android:layout_below="@id/tv_copy"
android:layout_alignParentEnd="true"
android:layout_marginTop="5dp"
android:background="@drawable/shape_chat_black"
android:gravity="center"
android:text="发送微信给TA"
android:textColor="@color/color_FDEEC8"
android:visibility="invisible" />
</RelativeLayout>
<TextView
......@@ -99,7 +90,7 @@
android:paddingEnd="15dp"
android:paddingBottom="5dp"
android:text="她已通过(真人认证),验证是本人"
android:textColor="@color/color_F9F9F9"
android:textSize="16sp" />
android:textColor="@color/white"
android:textSize="14sp" />
</LinearLayout>
\ No newline at end of file
......@@ -18,7 +18,8 @@
android:layout_height="wrap_content"
android:background="@drawable/shape_bg_profile_count"
android:gravity="center_horizontal"
android:orientation="vertical">
android:orientation="vertical"
android:paddingBottom="20dp">
<TextView
android:id="@+id/tv_free_count"
......@@ -47,7 +48,7 @@
android:layout_marginTop="40dp"
android:background="@drawable/shape_bg_hall_btn2"
android:gravity="center"
android:text="会员免费"
android:text="开通会员"
android:textColor="@color/color_9F6A32"
android:textSize="14sp" />
......@@ -55,13 +56,13 @@
android:id="@+id/tv_vip_coin"
android:layout_width="260dp"
android:layout_height="45dp"
android:layout_marginTop="10dp"
android:layout_marginBottom="30dp"
android:layout_marginTop="15dp"
android:background="@drawable/shape_bg_hall_btn3"
android:gravity="center"
android:text="直接联系(200金币)"
android:text="直接查看(200金币)"
android:textColor="@color/color_FCE8BA"
android:textSize="14sp" />
android:textSize="14sp"
android:visibility="visible" />
</LinearLayout>
......
......@@ -510,7 +510,7 @@
<com.duben.roseplaylet.ui.widgets.RoundRectLayout
android:id="@+id/fl_ad"
android:layout_width="match_parent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/shape_bg_write" />
</LinearLayout>
......
......@@ -30,14 +30,15 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal|bottom"
android:background="@drawable/shape_square_tab"
android:background="@drawable/shape_share_btn"
android:paddingStart="6dp"
android:paddingTop="2dp"
android:paddingEnd="6dp"
android:paddingBottom="2dp"
android:text="在线"
android:textColor="@color/white"
android:textSize="12sp" />
android:textSize="12sp"
android:visibility="gone" />
</FrameLayout>
<LinearLayout
......@@ -59,12 +60,13 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/app_name"
android:textColor="@color/white" />
android:textColor="@color/white"
android:textSize="16sp" />
<ImageView
android:id="@+id/iv_real_label"
android:layout_width="55dp"
android:layout_height="20dp"
android:layout_width="40dp"
android:layout_height="17dp"
android:layout_marginStart="10dp"
android:src="@mipmap/ic_label_real"
android:visibility="gone" />
......@@ -177,7 +179,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:text="10人喜欢"
android:text="0人喜欢"
android:textColor="@color/white" />
</LinearLayout>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment