Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
YDL-Component-Medical
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
杨凯
YDL-Component-Medical
Commits
4f7e47e8
Commit
4f7e47e8
authored
Dec 27, 2019
by
徐健
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
UI基本完成
parent
aaf081b2
Hide whitespace changes
Inline
Side-by-side
Showing
35 changed files
with
1593 additions
and
324 deletions
+1593
-324
YDLMessageFragment.java
m-im/src/main/java/com/yidianling/uikit/business/session/fragment/YDLMessageFragment.java
+99
-116
ExpertInfoDialog.kt
m-im/src/main/java/com/yidianling/uikit/custom/widget/ExpertInfoDialog.kt
+36
-0
ConsultServiceViewCallback.kt
m-im/src/main/java/com/yidianling/uikit/custom/widget/expertConsultService/callback/ConsultServiceViewCallback.kt
+8
-0
ExpertConsultServiceDetailView.kt
m-im/src/main/java/com/yidianling/uikit/custom/widget/expertConsultService/view/ExpertConsultServiceDetailView.kt
+52
-0
ExpertConsultServiceItemView.kt
m-im/src/main/java/com/yidianling/uikit/custom/widget/expertConsultService/view/ExpertConsultServiceItemView.kt
+60
-0
ExpertConsultServiceListDialog.kt
m-im/src/main/java/com/yidianling/uikit/custom/widget/expertConsultService/view/ExpertConsultServiceListDialog.kt
+122
-0
ExpertConsultServiceTypeItemView.kt
m-im/src/main/java/com/yidianling/uikit/custom/widget/expertConsultService/view/ExpertConsultServiceTypeItemView.kt
+79
-0
ExpertConsultServiceView.kt
m-im/src/main/java/com/yidianling/uikit/custom/widget/expertConsultService/view/ExpertConsultServiceView.kt
+117
-0
bottom_pop_hidden_anim.xml
m-im/src/main/res/anim/bottom_pop_hidden_anim.xml
+12
-0
bottom_pop_show_anim.xml
m-im/src/main/res/anim/bottom_pop_show_anim.xml
+13
-0
expert_consult_service_icon_jieting.png
m-im/src/main/res/drawable-xhdpi/expert_consult_service_icon_jieting.png
+0
-0
expert_consult_service_icon_queren.png
m-im/src/main/res/drawable-xhdpi/expert_consult_service_icon_queren.png
+0
-0
expert_consult_service_icon_xiadan.png
m-im/src/main/res/drawable-xhdpi/expert_consult_service_icon_xiadan.png
+0
-0
expert_consult_service_icon_zixun.png
m-im/src/main/res/drawable-xhdpi/expert_consult_service_icon_zixun.png
+0
-0
im_expert_service_list_left_back.png
m-im/src/main/res/drawable-xhdpi/im_expert_service_list_left_back.png
+0
-0
im_expert_service_list_left_delete.png
m-im/src/main/res/drawable-xhdpi/im_expert_service_list_left_delete.png
+0
-0
im_more_info_icon.png
m-im/src/main/res/drawable-xhdpi/im_more_info_icon.png
+0
-0
im_expert_conslt_service_list_top_bg.xml
m-im/src/main/res/drawable/im_expert_conslt_service_list_top_bg.xml
+11
-0
im_expert_info_dialog_type_item_selected_bg.xml
m-im/src/main/res/drawable/im_expert_info_dialog_type_item_selected_bg.xml
+10
-0
im_expert_info_dialog_type_item_unselected_bg.xml
m-im/src/main/res/drawable/im_expert_info_dialog_type_item_unselected_bg.xml
+10
-0
im_expert_service_detail_btn_bg.xml
m-im/src/main/res/drawable/im_expert_service_detail_btn_bg.xml
+10
-0
im_expert_service_list_btn_bg.xml
m-im/src/main/res/drawable/im_expert_service_list_btn_bg.xml
+10
-0
im_expert_consult_service_detail_view.xml
m-im/src/main/res/layout/im_expert_consult_service_detail_view.xml
+360
-0
im_expert_consult_service_item_view.xml
m-im/src/main/res/layout/im_expert_consult_service_item_view.xml
+107
-0
im_expert_consult_service_list_dialog_layout.xml
m-im/src/main/res/layout/im_expert_consult_service_list_dialog_layout.xml
+19
-0
im_expert_consult_service_type_item_view.xml
m-im/src/main/res/layout/im_expert_consult_service_type_item_view.xml
+22
-0
im_expert_consult_service_view.xml
m-im/src/main/res/layout/im_expert_consult_service_view.xml
+63
-0
styles.xml
m-im/src/main/res/values/styles.xml
+138
-131
im_expert_info_dialog_close_icon.png
m-im/src/main/res_uikit/drawable-xhdpi/im_expert_info_dialog_close_icon.png
+0
-0
im_expert_info_dialog_top_bg.png
m-im/src/main/res_uikit/drawable-xhdpi/im_expert_info_dialog_top_bg.png
+0
-0
im_bg_im_confide_action.xml
m-im/src/main/res_uikit/drawable/im_bg_im_confide_action.xml
+12
-8
im_expert_info_dialog_bg.xml
m-im/src/main/res_uikit/drawable/im_expert_info_dialog_bg.xml
+12
-0
im_more_info_red_point.xml
m-im/src/main/res_uikit/drawable/im_more_info_red_point.xml
+12
-0
im_expert_info_dialog_layout.xml
m-im/src/main/res_uikit/layout/im_expert_info_dialog_layout.xml
+139
-0
im_ydl_nim_message_fragment.xml
m-im/src/main/res_uikit/layout/im_ydl_nim_message_fragment.xml
+60
-69
No files found.
m-im/src/main/java/com/yidianling/uikit/business/session/fragment/YDLMessageFragment.java
View file @
4f7e47e8
package
com
.
yidianling
.
uikit
.
business
.
session
.
fragment
;
import
android.animation.Animator
;
import
android.animation.ObjectAnimator
;
import
android.animation.ValueAnimator
;
import
android.annotation.SuppressLint
;
import
android.content.Intent
;
import
android.graphics.Color
;
import
android.graphics.drawable.StateListDrawable
;
import
android.media.AudioManager
;
import
android.os.Bundle
;
import
android.os.Handler
;
import
android.os.Message
;
import
android.support.constraint.ConstraintLayout
;
import
android.support.v4.content.ContextCompat
;
import
android.support.v7.widget.RecyclerView
;
import
android.text.TextUtils
;
import
android.util.Log
;
import
android.view.LayoutInflater
;
import
android.view.View
;
import
android.view.ViewGroup
;
import
android.view.ViewTreeObserver
;
import
android.view.animation.Animation
;
import
android.view.animation.DecelerateInterpolator
;
import
android.view.animation.TranslateAnimation
;
import
android.widget.FrameLayout
;
import
android.widget.ImageView
;
import
android.widget.LinearLayout
;
...
...
@@ -81,12 +73,11 @@ import com.yidianling.uikit.custom.http.response.CommonQuestionBean;
import
com.yidianling.uikit.custom.http.response.SubmitUserInfoBean
;
import
com.yidianling.uikit.custom.http.response.UserQuestInfoBean
;
import
com.yidianling.uikit.custom.widget.ConfideOrderInfoView
;
import
com.yidianling.uikit.custom.widget.HalfCircleDrawable
;
import
com.yidianling.uikit.custom.widget.expertConsultService.view.ExpertConsultServiceListDialog
;
import
com.yidianling.uikit.custom.widget.ExpertInfoDialog
;
import
com.yidianling.user.api.service.IUserService
;
import
org.jetbrains.annotations.NotNull
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
java.util.ArrayList
;
import
java.util.Calendar
;
...
...
@@ -147,11 +138,6 @@ public class YDLMessageFragment extends TFragment implements ModuleProxy {
private
TextView
server_num_tv
;
//服务时长
private
TextView
good_num_tv
;
//好评率
private
TextView
qingshu
;
//即时倾诉
private
Boolean
canConsultBtnClick
=
true
;
//即时倾诉按钮是否可点击
private
ImageView
qingshuImg
;
//预约咨询
private
LinearLayout
top_expert_info_ll
;
private
int
expertInfoViewHeight
=
0
;
// 专家信息栏高度
private
RecyclerView
messageListView
;
...
...
@@ -173,7 +159,10 @@ public class YDLMessageFragment extends TFragment implements ModuleProxy {
private
Boolean
expertInfoViewIsIn
=
true
;
private
Boolean
expertInfoViewIsAnimating
=
false
;
private
int
IN_OUT_DURATION
=
1000
;
private
ExpertInfoDialog
expertInfoDialog
;
private
ExpertConsultServiceListDialog
expertConsultServiceListDialog
;
private
int
IN_OUT_DURATION
=
400
;
private
Boolean
hasUpScroll
=
false
;
...
...
@@ -209,8 +198,6 @@ public class YDLMessageFragment extends TFragment implements ModuleProxy {
tv_all_comment_desc
=
rootView
.
findViewById
(
R
.
id
.
tv_all_comment_desc
);
tv_all_comment_go
=
rootView
.
findViewById
(
R
.
id
.
tv_all_comment_go
);
comment_banner_view
=
rootView
.
findViewById
(
R
.
id
.
comment_banner_view
);
qingshu
=
rootView
.
findViewById
(
R
.
id
.
action_qingshu
);
qingshuImg
=
rootView
.
findViewById
(
R
.
id
.
action_qingshu_img
);
messageListView
=
rootView
.
findViewById
(
R
.
id
.
messageListView
);
// 消息列表
top_view_container
=
rootView
.
findViewById
(
R
.
id
.
top_view_container
);
// 消息列表
constraint_ll
=
rootView
.
findViewById
(
R
.
id
.
constraint_ll
);
...
...
@@ -306,13 +293,10 @@ public class YDLMessageFragment extends TFragment implements ModuleProxy {
// 监听消息发送状态的变化通知
NIMClient
.
getService
(
MsgServiceObserve
.
class
).
observeMsgStatus
(
new
Observer
<
IMMessage
>()
{
@Override
public
void
onEvent
(
IMMessage
imMessage
)
{
// 参数为有状态发生改变的消息对象,其 msgStatus 和 attachStatus 均为最新状态。
// 发送消息和接收消息的状态监听均可以通过此接口完成。
Log
.
e
(
"hzs"
,
"接收到消息状态变化-------MessageFragment"
);
}
(
Observer
<
IMMessage
>)
imMessage
->
{
// 参数为有状态发生改变的消息对象,其 msgStatus 和 attachStatus 均为最新状态。
// 发送消息和接收消息的状态监听均可以通过此接口完成。
Log
.
e
(
"hzs"
,
"接收到消息状态变化-------MessageFragment"
);
},
true
);
...
...
@@ -343,7 +327,6 @@ public class YDLMessageFragment extends TFragment implements ModuleProxy {
@Override
public
void
onScrolled
(
RecyclerView
recyclerView
,
int
dx
,
int
dy
)
{
super
.
onScrolled
(
recyclerView
,
dx
,
dy
);
Log
.
i
(
"dy="
,
String
.
valueOf
(
dy
));
if
(
dy
<
0
&&
Math
.
abs
(
dy
)
>
15
)
{
...
...
@@ -373,11 +356,11 @@ public class YDLMessageFragment extends TFragment implements ModuleProxy {
private
void
initAnimation
()
{
anim_out
=
newAnimation
(
0
f
,
1
f
);
anim_out
.
setDuration
(
300
);
anim_out
.
setDuration
(
IN_OUT_DURATION
);
anim_in
=
newAnimation
(
1
f
,
0
f
);
anim_in
.
setDuration
(
300
);
anim_in
.
setDuration
(
IN_OUT_DURATION
);
anim_in
.
addUpdateListener
(
animation
->
{
if
(
expertInfoViewHeight
!=
0
)
{
if
(
expertInfoViewHeight
!=
0
&&
constraint_ll
!=
null
)
{
ViewGroup
.
MarginLayoutParams
params
=
(
ViewGroup
.
MarginLayoutParams
)
constraint_ll
.
getLayoutParams
();
...
...
@@ -408,7 +391,7 @@ public class YDLMessageFragment extends TFragment implements ModuleProxy {
}
});
anim_out
.
addUpdateListener
(
animation
->
{
if
(
expertInfoViewHeight
!=
0
)
{
if
(
expertInfoViewHeight
!=
0
&&
constraint_ll
!=
null
)
{
ViewGroup
.
MarginLayoutParams
params
=
(
ViewGroup
.
MarginLayoutParams
)
constraint_ll
.
getLayoutParams
();
params
.
topMargin
=
(
int
)
(-
expertInfoViewHeight
*
Float
.
valueOf
(
animation
.
getAnimatedValue
().
toString
()));
...
...
@@ -442,8 +425,8 @@ public class YDLMessageFragment extends TFragment implements ModuleProxy {
}
private
ValueAnimator
newAnimation
(
float
fromYValue
,
float
toYValue
)
{
ValueAnimator
anim
1
=
ValueAnimator
.
ofFloat
(
fromYValue
,
toYValue
);
return
anim
1
;
ValueAnimator
anim
=
ValueAnimator
.
ofFloat
(
fromYValue
,
toYValue
);
return
anim
;
}
/**
...
...
@@ -477,6 +460,16 @@ public class YDLMessageFragment extends TFragment implements ModuleProxy {
}
}
}
top_expert_info_cl
.
setOnClickListener
(
v
->
{
//todo show dialog
if
(
null
!=
getActivity
())
{
if
(
expertInfoDialog
==
null
)
{
expertInfoDialog
=
new
ExpertInfoDialog
(
getActivity
());
}
expertInfoDialog
.
show
();
}
});
}
/**
...
...
@@ -502,96 +495,86 @@ public class YDLMessageFragment extends TFragment implements ModuleProxy {
//初始化聊天顶部快捷菜单
private
void
initMenu
()
{
View
rela_zixun
=
rootView
.
findViewById
(
R
.
id
.
rela_zixun
);
StateListDrawable
consultDrawable
=
new
StateListDrawable
();
consultDrawable
.
addState
(
new
int
[]{
android
.
R
.
attr
.
state_pressed
},
new
HalfCircleDrawable
(
getContext
(),
false
,
ContextCompat
.
getColor
(
getContext
(),
R
.
color
.
platform_color_F7F7F7
)));
consultDrawable
.
addState
(
new
int
[]{},
new
HalfCircleDrawable
(
getContext
(),
false
,
Color
.
WHITE
));
rela_zixun
.
setBackground
(
consultDrawable
);
TextView
yuyue
=
(
TextView
)
rootView
.
findViewById
(
R
.
id
.
action_yuyue
);
rela_zixun
.
setOnClickListener
(
new
View
.
OnClickListener
()
{
@Override
public
void
onClick
(
View
view
)
{
LogHelper
.
Companion
.
getInstance
().
writeLogSync
(
"聊天界面点击预约"
);
if
(
ActionHandlerStorage
.
getL
(
sessionId
)
!=
null
)
{
try
{
JSONObject
jsb
=
new
JSONObject
();
jsb
.
put
(
"button_name"
,
"预约"
);
ActionHandlerStorage
.
getL
(
sessionId
).
buryPoint
(
"messageClick"
,
jsb
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
rela_zixun
.
setOnClickListener
(
view
->
{
if
(
ActionHandlerStorage
.
getL
(
sessionId
)
!=
null
)
{
if
(
expertConsultServiceListDialog
==
null
)
{
if
(
getActivity
()!=
null
)
{
expertConsultServiceListDialog
=
new
ExpertConsultServiceListDialog
(
getActivity
());
}
ActionHandlerStorage
.
getL
(
sessionId
).
showZhuanjPage
();
}
else
{
ToastUtil
.
toastShort
(
"请退出聊天重试"
);
}
}
});
expertConsultServiceListDialog
.
show
();
//倾诉
RelativeLayout
rela_qingsu
=
rootView
.
findViewById
(
R
.
id
.
rela_qingsu
);
StateListDrawable
confideDrawable
=
new
StateListDrawable
();
confideDrawable
.
addState
(
new
int
[]{
android
.
R
.
attr
.
state_pressed
},
new
HalfCircleDrawable
(
getContext
(),
true
,
ContextCompat
.
getColor
(
getContext
(),
R
.
color
.
platform_color_F7F7F7
)));
confideDrawable
.
addState
(
new
int
[]{},
new
HalfCircleDrawable
(
getContext
(),
true
,
Color
.
WHITE
));
rela_qingsu
.
setBackground
(
confideDrawable
);
if
(
ActionHandlerStorage
.
getL
(
sessionId
)
!=
null
&&
ActionHandlerStorage
.
getL
(
sessionId
).
getInfo
().
listenerIsOpen
==
1
)
{
//开通倾诉
int
status
=
ActionHandlerStorage
.
getL
(
sessionId
).
getInfo
().
isChatOnline
;
if
(
status
==
5
)
{
qingshu
.
setText
(
"倾诉通话中..."
);
qingshu
.
setTextColor
(
Color
.
parseColor
(
"#BFBFBF"
));
qingshuImg
.
setImageResource
(
R
.
mipmap
.
im_chat_ico_calling
);
canConsultBtnClick
=
false
;
}
else
if
(
status
==
3
||
status
==
4
||
status
==
6
)
{
qingshu
.
setText
(
"即时倾诉"
);
qingshu
.
setTextColor
(
Color
.
parseColor
(
"#BFBFBF"
));
qingshuImg
.
setImageResource
(
R
.
mipmap
.
im_chat_ico_calling
);
canConsultBtnClick
=
false
;
}
else
{
qingshu
.
setText
(
"即时倾诉"
);
qingshu
.
setTextColor
(
Color
.
parseColor
(
"#242424"
));
qingshuImg
.
setImageResource
(
R
.
mipmap
.
im_chat_ico_can_call
);
canConsultBtnClick
=
true
;
}
if
(
ActionHandlerStorage
.
getL
(
sessionId
).
getInfo
().
hasAvailableListenOrder
==
2
)
{
//有未完成订单
qingshu
.
setText
(
"继续倾诉"
);
qingshu
.
setTextColor
(
Color
.
parseColor
(
"#242424"
));
qingshuImg
.
setImageResource
(
R
.
mipmap
.
im_chat_ico_calling
);
canConsultBtnClick
=
true
;
}
}
else
{
qingshu
.
setText
(
"即时倾诉"
);
qingshu
.
setTextColor
(
Color
.
parseColor
(
"#242424"
));
qingshuImg
.
setImageResource
(
R
.
mipmap
.
im_chat_ico_can_call
);
canConsultBtnClick
=
true
;
}
rela_qingsu
.
setOnClickListener
(
new
View
.
OnClickListener
()
{
@Override
public
void
onClick
(
View
view
)
{
if
(
canConsultBtnClick
)
{
LogHelper
.
Companion
.
getInstance
().
writeLogSync
(
"聊天界面点击电话倾诉"
);
if
(
ActionHandlerStorage
.
getL
(
sessionId
)
!=
null
)
{
try
{
JSONObject
jsb
=
new
JSONObject
();
jsb
.
put
(
"button_name"
,
"电话倾诉"
);
ActionHandlerStorage
.
getL
(
sessionId
).
buryPoint
(
"messageClick"
,
jsb
);
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"expert_id"
,
ActionHandlerStorage
.
getL
(
sessionId
).
getInfo
().
doctorId
);
jsonObject
.
put
(
"expert_name"
,
ActionHandlerStorage
.
getL
(
sessionId
).
getInfo
().
name
);
jsonObject
.
put
(
"listen_entrance"
,
"私聊窗口"
);
ActionHandlerStorage
.
getL
(
sessionId
).
buryPoint
(
"Listen_expert"
,
jsonObject
);
}
catch
(
JSONException
e
)
{
e
.
printStackTrace
();
}
ActionHandlerStorage
.
getL
(
sessionId
).
confide
();
}
else
{
ToastUtil
.
toastShort
(
"请退出聊天重试"
);
}
}
ToastUtil
.
toastShort
(
"请退出聊天重试"
);
}
});
//倾诉,不确定是否还要使用,暂留
// RelativeLayout rela_qingsu = rootView.findViewById(R.id.rela_qingsu);
// StateListDrawable confideDrawable = new StateListDrawable();
// confideDrawable.addState(new int[]{android.R.attr.state_pressed}, new HalfCircleDrawable(getContext(), true, ContextCompat.getColor(getContext(), R.color.platform_color_F7F7F7)));
// confideDrawable.addState(new int[]{}, new HalfCircleDrawable(getContext(), true, Color.WHITE));
// rela_qingsu.setBackground(confideDrawable);
//
// if (ActionHandlerStorage.getL(sessionId) != null && ActionHandlerStorage.getL(sessionId).getInfo().listenerIsOpen == 1) {//开通倾诉
// int status = ActionHandlerStorage.getL(sessionId).getInfo().isChatOnline;
// if (status == 5) {
// qingshu.setText("倾诉通话中...");
// qingshu.setTextColor(Color.parseColor("#BFBFBF"));
// qingshuImg.setImageResource(R.mipmap.im_chat_ico_calling);
// canConsultBtnClick = false;
// } else if (status == 3 || status == 4 || status == 6) {
// qingshu.setText("即时倾诉");
// qingshu.setTextColor(Color.parseColor("#BFBFBF"));
// qingshuImg.setImageResource(R.mipmap.im_chat_ico_calling);
// canConsultBtnClick = false;
// } else {
// qingshu.setText("即时倾诉");
// qingshu.setTextColor(Color.parseColor("#242424"));
// qingshuImg.setImageResource(R.mipmap.im_chat_ico_can_call);
// canConsultBtnClick = true;
// }
// if (ActionHandlerStorage.getL(sessionId).getInfo().hasAvailableListenOrder == 2) {//有未完成订单
// qingshu.setText("继续倾诉");
// qingshu.setTextColor(Color.parseColor("#242424"));
// qingshuImg.setImageResource(R.mipmap.im_chat_ico_calling);
// canConsultBtnClick = true;
// }
// } else {
// qingshu.setText("即时倾诉");
// qingshu.setTextColor(Color.parseColor("#242424"));
// qingshuImg.setImageResource(R.mipmap.im_chat_ico_can_call);
// canConsultBtnClick = true;
// }
//
//
// rela_qingsu.setOnClickListener(new View.OnClickListener() {
// @Override
// public void onClick(View view) {
// if (canConsultBtnClick) {
// LogHelper.Companion.getInstance().writeLogSync("聊天界面点击电话倾诉");
// if (ActionHandlerStorage.getL(sessionId) != null) {
// try {
// JSONObject jsb = new JSONObject();
// jsb.put("button_name", "电话倾诉");
// ActionHandlerStorage.getL(sessionId).buryPoint("messageClick", jsb);
//
// JSONObject jsonObject = new JSONObject();
// jsonObject.put("expert_id", ActionHandlerStorage.getL(sessionId).getInfo().doctorId);
// jsonObject.put("expert_name", ActionHandlerStorage.getL(sessionId).getInfo().name);
// jsonObject.put("listen_entrance", "私聊窗口");
// ActionHandlerStorage.getL(sessionId).buryPoint("Listen_expert", jsonObject);
// } catch (JSONException e) {
// e.printStackTrace();
// }
// ActionHandlerStorage.getL(sessionId).confide();
// } else {
// ToastUtil.toastShort("请退出聊天重试");
// }
// }
// }
// });
}
private
void
initYiMenu
()
{
...
...
m-im/src/main/java/com/yidianling/uikit/custom/widget/ExpertInfoDialog.kt
0 → 100644
View file @
4f7e47e8
package
com.yidianling.uikit.custom.widget
import
android.app.Dialog
import
android.content.Context
import
android.os.Bundle
import
android.view.Gravity
import
android.view.WindowManager
import
com.yidianling.im.R
import
kotlinx.android.synthetic.main.im_expert_info_dialog_layout.*
import
kotlinx.android.synthetic.main.im_safe_help_remind_dialog_layout.*
/**
* 专家信息弹窗
* Created by xj on 2019/8/7.
*/
class
ExpertInfoDialog
(
val
mContext
:
Context
):
Dialog
(
mContext
,
R
.
style
.
dialog_default_style
)
{
override
fun
onCreate
(
savedInstanceState
:
Bundle
?)
{
super
.
onCreate
(
savedInstanceState
)
setContentView
(
R
.
layout
.
im_expert_info_dialog_layout
)
val
params
=
window
.
attributes
params
.
width
=
WindowManager
.
LayoutParams
.
MATCH_PARENT
params
.
height
=
WindowManager
.
LayoutParams
.
WRAP_CONTENT
window
.
setGravity
(
Gravity
.
CENTER
)
window
.
attributes
=
params
expert_info_close
.
setOnClickListener
{
if
(
null
!=
mContext
)
{
dismiss
()
}
}
}
}
\ No newline at end of file
m-im/src/main/java/com/yidianling/uikit/custom/widget/expertConsultService/callback/ConsultServiceViewCallback.kt
0 → 100644
View file @
4f7e47e8
package
com.yidianling.uikit.custom.widget.expertConsultService.callback
interface
ConsultServiceViewCallback
{
fun
onCloseClick
()
{}
//关闭按钮点击
fun
onBackClick
()
{}
//返回列表点击
fun
onItemClick
(
serviceId
:
Int
)
{}
//服务列表点击
}
\ No newline at end of file
m-im/src/main/java/com/yidianling/uikit/custom/widget/expertConsultService/view/ExpertConsultServiceDetailView.kt
0 → 100644
View file @
4f7e47e8
package
com.yidianling.uikit.custom.widget.expertConsultService.view
import
android.content.Context
import
android.util.AttributeSet
import
android.view.View
import
android.widget.LinearLayout
import
android.widget.RelativeLayout
import
com.yidianling.common.tools.RxDeviceTool
import
com.yidianling.im.R
import
com.yidianling.uikit.custom.widget.expertConsultService.callback.ConsultServiceViewCallback
import
kotlinx.android.synthetic.main.im_expert_consult_service_detail_view.view.*
class
ExpertConsultServiceDetailView
:
RelativeLayout
{
constructor
(
context
:
Context
,
listener
:
ConsultServiceViewCallback
)
:
super
(
context
)
{
mListener
=
listener
mContext
=
context
initView
()
}
private
var
mListener
:
ConsultServiceViewCallback
?
=
null
private
var
mContext
:
Context
?
=
null
private
fun
initView
()
{
val
mWidth
:
Int
=
RxDeviceTool
.
getScreenWidth
(
mContext
)
val
mHeight
:
Int
=
LayoutParams
.
MATCH_PARENT
val
params
=
LayoutParams
(
mWidth
,
mHeight
)
params
.
height
=
mHeight
layoutParams
=
params
View
.
inflate
(
mContext
,
R
.
layout
.
im_expert_consult_service_detail_view
,
this
)
im_expert_service_list_left_back_btn
.
setOnClickListener
{
mListener
?.
onBackClick
()
}
}
/**
* 设置数据
*/
fun
setData
(
bean
:
String
)
{
}
}
\ No newline at end of file
m-im/src/main/java/com/yidianling/uikit/custom/widget/expertConsultService/view/ExpertConsultServiceItemView.kt
0 → 100644
View file @
4f7e47e8
package
com.yidianling.uikit.custom.widget.expertConsultService.view
import
android.content.Context
import
android.util.AttributeSet
import
android.view.View
import
android.widget.LinearLayout
import
com.yidianling.im.R
import
com.yidianling.uikit.custom.widget.expertConsultService.callback.ConsultServiceViewCallback
import
kotlinx.android.synthetic.main.im_expert_consult_service_item_view.view.*
class
ExpertConsultServiceItemView
:
LinearLayout
{
constructor
(
context
:
Context
,
listener
:
ConsultServiceViewCallback
?)
:
super
(
context
)
{
mListener
=
listener
mContext
=
context
initView
()
}
private
var
mContext
:
Context
?
=
null
private
var
mListener
:
ConsultServiceViewCallback
?
=
null
private
fun
initView
()
{
val
mWidth
:
Int
=
LayoutParams
.
MATCH_PARENT
val
mHeight
:
Int
=
LayoutParams
.
WRAP_CONTENT
val
params
=
LayoutParams
(
mWidth
,
mHeight
)
params
.
height
=
mHeight
layoutParams
=
params
orientation
=
HORIZONTAL
View
.
inflate
(
mContext
,
R
.
layout
.
im_expert_consult_service_item_view
,
this
)
setOnClickListener
{
//todo xj 接接口的时候修改成服务id
mListener
?.
onItemClick
(
0
)
}
im_expert_service_list_btn
.
setOnClickListener
{
//todo 去咨询
}
}
/**
* 设置数据
*/
fun
setData
(
bean
:
String
)
{
}
}
\ No newline at end of file
m-im/src/main/java/com/yidianling/uikit/custom/widget/expertConsultService/view/ExpertConsultServiceListDialog.kt
0 → 100644
View file @
4f7e47e8
package
com.yidianling.uikit.custom.widget.expertConsultService.view
import
android.animation.ObjectAnimator
import
android.animation.ValueAnimator
import
android.app.Dialog
import
android.content.Context
import
android.os.Bundle
import
android.support.v4.view.PagerAdapter
import
android.view.Gravity
import
android.view.View
import
android.view.ViewGroup
import
android.view.WindowManager
import
android.view.animation.TranslateAnimation
import
android.widget.LinearLayout
import
android.widget.ScrollView
import
com.yidianling.common.tools.RxDeviceTool
import
com.yidianling.common.tools.RxImageTool
import
com.yidianling.im.R
import
com.yidianling.uikit.custom.widget.expertConsultService.callback.ConsultServiceViewCallback
import
kotlinx.android.synthetic.main.im_expert_consult_service_list_dialog_layout.*
/**
* 专家咨询服务列表弹框
* Created by xj on 2019/8/7.
*/
class
ExpertConsultServiceListDialog
(
val
mContext
:
Context
):
Dialog
(
mContext
,
R
.
style
.
dialog_default_style
)
{
private
var
mConsultServiceListView
:
View
?
=
null
private
var
mConsultServiceDetailView
:
View
?
=
null
private
var
mViewList
:
ArrayList
<
View
>
=
ArrayList
()
override
fun
onCreate
(
savedInstanceState
:
Bundle
?)
{
super
.
onCreate
(
savedInstanceState
)
setContentView
(
R
.
layout
.
im_expert_consult_service_list_dialog_layout
)
val
params
=
window
.
attributes
params
.
width
=
WindowManager
.
LayoutParams
.
MATCH_PARENT
params
.
height
=
RxDeviceTool
.
getScreenHeight
(
mContext
)
-
RxImageTool
.
dp2px
(
100f
)
params
.
gravity
=
Gravity
.
BOTTOM
window
.
setWindowAnimations
(
R
.
style
.
bottom_to_top_dialog_style
)
window
.
attributes
=
params
var
typeList
:
ArrayList
<
String
>
=
ArrayList
()
typeList
.
add
(
"全部"
)
typeList
.
add
(
"婚姻家庭"
)
typeList
.
add
(
"恋爱情感"
)
typeList
.
add
(
"性心理"
)
typeList
.
add
(
"亲子关系"
)
typeList
.
add
(
"人际社交"
)
typeList
.
add
(
"精神疾病"
)
var
serviceList
:
ArrayList
<
String
>
=
ArrayList
()
serviceList
.
add
(
"全部"
)
serviceList
.
add
(
"婚姻家庭"
)
serviceList
.
add
(
"恋爱情感"
)
serviceList
.
add
(
"性心理"
)
serviceList
.
add
(
"亲子关系"
)
serviceList
.
add
(
"人际社交"
)
serviceList
.
add
(
"精神疾病"
)
mConsultServiceListView
=
ExpertConsultServiceView
(
mContext
)
(
mConsultServiceListView
as
ExpertConsultServiceView
).
setDataAndClick
(
typeList
,
serviceList
,
object
:
ConsultServiceViewCallback
{
override
fun
onCloseClick
()
{
dismiss
()
}
override
fun
onItemClick
(
serviceId
:
Int
)
{
// todo 执行右滑动画和接口请求
dialog_bottom_scroll_view
.
currentItem
=
1
}
})
mViewList
.
add
(
mConsultServiceListView
as
View
)
mConsultServiceDetailView
=
ExpertConsultServiceDetailView
(
mContext
,
object
:
ConsultServiceViewCallback
{
override
fun
onBackClick
()
{
// todo 执行左滑动画
dialog_bottom_scroll_view
.
currentItem
=
0
}
})
mViewList
.
add
(
mConsultServiceDetailView
as
View
)
dialog_bottom_scroll_view
.
adapter
=
ConsultServicePagerAdapter
()
dialog_bottom_scroll_view
.
currentItem
=
0
setCanceledOnTouchOutside
(
true
)
}
internal
inner
class
ConsultServicePagerAdapter
:
PagerAdapter
()
{
override
fun
getCount
():
Int
{
return
mViewList
.
size
}
override
fun
isViewFromObject
(
view
:
View
,
`object`
:
Any
):
Boolean
{
return
view
===
`object`
}
override
fun
instantiateItem
(
container
:
ViewGroup
,
position
:
Int
):
Any
{
val
view
=
mViewList
[
position
]
container
.
addView
(
view
)
return
view
}
override
fun
destroyItem
(
container
:
ViewGroup
,
position
:
Int
,
`object`
:
Any
)
{
container
.
removeView
(
`object`
as
View
)
}
}
}
\ No newline at end of file
m-im/src/main/java/com/yidianling/uikit/custom/widget/expertConsultService/view/ExpertConsultServiceTypeItemView.kt
0 → 100644
View file @
4f7e47e8
package
com.yidianling.uikit.custom.widget.expertConsultService.view
import
android.content.Context
import
android.graphics.Color
import
android.util.AttributeSet
import
android.view.View
import
android.widget.LinearLayout
import
com.yidianling.im.R
import
kotlinx.android.synthetic.main.im_expert_consult_service_type_item_view.view.*
class
ExpertConsultServiceTypeItemView
:
LinearLayout
{
constructor
(
context
:
Context
)
:
super
(
context
)
{
mContext
=
context
initView
()
}
constructor
(
context
:
Context
,
attrs
:
AttributeSet
)
:
super
(
context
,
attrs
)
{
mContext
=
context
initView
()
}
constructor
(
context
:
Context
,
attrs
:
AttributeSet
,
defStyle
:
Int
)
:
super
(
context
,
attrs
,
defStyle
)
{
mContext
=
context
initView
()
}
private
var
mContext
:
Context
?
=
null
private
fun
initView
()
{
val
mWidth
:
Int
=
LayoutParams
.
WRAP_CONTENT
val
mHeight
:
Int
=
LayoutParams
.
WRAP_CONTENT
val
params
=
LayoutParams
(
mWidth
,
mHeight
)
params
.
height
=
mHeight
layoutParams
=
params
View
.
inflate
(
mContext
,
R
.
layout
.
im_expert_consult_service_type_item_view
,
this
)
}
/**
* 设置数据
*/
fun
setData
(
typeString
:
String
,
isSelected
:
Boolean
)
{
im_expert_info_dialog_type_item_text
.
text
=
typeString
if
(
isSelected
)
{
im_expert_info_dialog_type_item_text
.
setTextColor
((
Color
.
parseColor
(
"#1DA1F2"
)))
im_expert_info_dialog_type_item_text
.
setBackgroundResource
(
R
.
drawable
.
im_expert_info_dialog_type_item_selected_bg
)
}
else
{
im_expert_info_dialog_type_item_text
.
setTextColor
((
Color
.
parseColor
(
"#999999"
)))
im_expert_info_dialog_type_item_text
.
setBackgroundResource
(
R
.
drawable
.
im_expert_info_dialog_type_item_unselected_bg
)
}
}
/**
* 更新状态
*/
fun
updateStatus
(
isSelected
:
Boolean
)
{
if
(
isSelected
)
{
im_expert_info_dialog_type_item_text
.
setTextColor
((
Color
.
parseColor
(
"#1DA1F2"
)))
im_expert_info_dialog_type_item_text
.
setBackgroundResource
(
R
.
drawable
.
im_expert_info_dialog_type_item_selected_bg
)
}
else
{
im_expert_info_dialog_type_item_text
.
setTextColor
((
Color
.
parseColor
(
"#999999"
)))
im_expert_info_dialog_type_item_text
.
setBackgroundResource
(
R
.
drawable
.
im_expert_info_dialog_type_item_unselected_bg
)
}
}
}
\ No newline at end of file
m-im/src/main/java/com/yidianling/uikit/custom/widget/expertConsultService/view/ExpertConsultServiceView.kt
0 → 100644
View file @
4f7e47e8
package
com.yidianling.uikit.custom.widget.expertConsultService.view
import
android.content.Context
import
android.util.AttributeSet
import
android.view.View
import
android.widget.LinearLayout
import
com.yidianling.common.tools.RxDeviceTool
import
com.yidianling.im.R
import
com.yidianling.uikit.custom.widget.expertConsultService.callback.ConsultServiceViewCallback
import
kotlinx.android.synthetic.main.im_expert_consult_service_view.view.*
class
ExpertConsultServiceView
:
LinearLayout
{
private
var
typeSelectedIndex
:
Int
=
0
private
var
mTypeList
:
ArrayList
<
String
>
=
ArrayList
()
private
var
mServiceList
:
ArrayList
<
String
>
=
ArrayList
()
constructor
(
context
:
Context
)
:
super
(
context
)
{
mContext
=
context
initView
()
}
constructor
(
context
:
Context
,
attrs
:
AttributeSet
)
:
super
(
context
,
attrs
)
{
mContext
=
context
initView
()
}
constructor
(
context
:
Context
,
attrs
:
AttributeSet
,
defStyle
:
Int
)
:
super
(
context
,
attrs
,
defStyle
)
{
mContext
=
context
initView
()
}
private
var
mContext
:
Context
?
=
null
private
fun
initView
()
{
val
mWidth
:
Int
=
RxDeviceTool
.
getScreenWidth
(
mContext
)
val
mHeight
:
Int
=
LayoutParams
.
MATCH_PARENT
val
params
=
LayoutParams
(
mWidth
,
mHeight
)
params
.
height
=
mHeight
layoutParams
=
params
orientation
=
VERTICAL
View
.
inflate
(
mContext
,
R
.
layout
.
im_expert_consult_service_view
,
this
)
}
/**
* typeList 类型列表
* serviceList 服务列表
*/
fun
setDataAndClick
(
typeList
:
ArrayList
<
String
>,
serviceList
:
ArrayList
<
String
>,
listener
:
ConsultServiceViewCallback
?
)
{
consult_service_dialog_close
.
setOnClickListener
{
listener
?.
onCloseClick
()
}
// 设置顶部滚动类型数据
if
(
typeList
==
null
||
typeList
.
size
==
0
)
{
expert_consult_service_top_scroll
.
visibility
=
View
.
GONE
}
else
{
mTypeList
.
clear
()
mTypeList
.
addAll
(
typeList
)
mContext
?.
let
{
mTypeList
.
forEachIndexed
{
index
,
str
->
val
item
=
ExpertConsultServiceTypeItemView
(
mContext
!!
)
item
.
setData
(
str
,
index
==
typeSelectedIndex
)
item
.
setOnClickListener
{
resetSelected
(
index
)
}
expert_consult_service_type_list
.
addView
(
item
)
}
}
}
// 设置服务列表数据
if
(
serviceList
!=
null
&&
serviceList
.
size
!=
0
)
{
mServiceList
.
clear
()
mServiceList
.
addAll
(
serviceList
)
mServiceList
.
forEachIndexed
{
index
,
str
->
val
item
=
ExpertConsultServiceItemView
(
mContext
!!
,
listener
)
expert_consult_service_service_list
.
addView
(
item
)
}
}
}
private
fun
resetSelected
(
index
:
Int
)
{
typeSelectedIndex
=
index
for
(
index
in
0
until
expert_consult_service_type_list
.
childCount
)
{
var
view
=
expert_consult_service_type_list
.
getChildAt
(
index
)
if
(
view
is
ExpertConsultServiceTypeItemView
)
{
view
.
updateStatus
(
index
==
typeSelectedIndex
)
}
}
}
}
\ No newline at end of file
m-im/src/main/res/anim/bottom_pop_hidden_anim.xml
0 → 100644
View file @
4f7e47e8
<?xml version="1.0" encoding="utf-8"?>
<set
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<translate
android:duration=
"300"
android:fromYDelta=
"0"
android:toYDelta=
"50%p"
/>
<alpha
android:duration=
"300"
android:fromAlpha=
"1.0"
android:toAlpha=
"0.0"
/>
</set>
\ No newline at end of file
m-im/src/main/res/anim/bottom_pop_show_anim.xml
0 → 100644
View file @
4f7e47e8
<?xml version="1.0" encoding="utf-8"?>
<set
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<translate
android:duration=
"300"
android:fromYDelta=
"100%p"
android:toYDelta=
"0"
/>
<alpha
android:duration=
"300"
android:fromAlpha=
"0.0"
android:toAlpha=
"1.0"
/>
</set>
\ No newline at end of file
m-im/src/main/res/drawable-xhdpi/expert_consult_service_icon_jieting.png
0 → 100644
View file @
4f7e47e8
7.11 KB
m-im/src/main/res/drawable-xhdpi/expert_consult_service_icon_queren.png
0 → 100644
View file @
4f7e47e8
6.04 KB
m-im/src/main/res/drawable-xhdpi/expert_consult_service_icon_xiadan.png
0 → 100644
View file @
4f7e47e8
4.96 KB
m-im/src/main/res/drawable-xhdpi/expert_consult_service_icon_zixun.png
0 → 100644
View file @
4f7e47e8
5.67 KB
m-im/src/main/res/drawable-xhdpi/im_expert_service_list_left_back.png
0 → 100644
View file @
4f7e47e8
502 Bytes
m-im/src/main/res/drawable-xhdpi/im_expert_service_list_left_delete.png
0 → 100644
View file @
4f7e47e8
775 Bytes
m-im/src/main/res/drawable-xhdpi/im_more_info_icon.png
0 → 100644
View file @
4f7e47e8
1.09 KB
m-im/src/main/res/drawable/im_expert_conslt_service_list_top_bg.xml
0 → 100644
View file @
4f7e47e8
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:shape=
"rectangle"
>
<corners
android:topLeftRadius=
"15dp"
android:topRightRadius=
"15dp"
/>
<solid
android:color=
"#ffffff"
/>
</shape>
\ No newline at end of file
m-im/src/main/res/drawable/im_expert_info_dialog_type_item_selected_bg.xml
0 → 100644
View file @
4f7e47e8
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:shape=
"rectangle"
>
<corners
android:radius=
"12dp"
/>
<solid
android:color=
"#EBF7FF"
/>
</shape>
\ No newline at end of file
m-im/src/main/res/drawable/im_expert_info_dialog_type_item_unselected_bg.xml
0 → 100644
View file @
4f7e47e8
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:shape=
"rectangle"
>
<corners
android:radius=
"12dp"
/>
<solid
android:color=
"#F7F7F7"
/>
</shape>
\ No newline at end of file
m-im/src/main/res/drawable/im_expert_service_detail_btn_bg.xml
0 → 100644
View file @
4f7e47e8
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:shape=
"rectangle"
>
<corners
android:radius=
"19dp"
/>
<gradient
android:startColor=
"#FF7A5C"
android:endColor=
"#FF406C"
/>
</shape>
\ No newline at end of file
m-im/src/main/res/drawable/im_expert_service_list_btn_bg.xml
0 → 100644
View file @
4f7e47e8
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:shape=
"rectangle"
>
<corners
android:radius=
"14dp"
/>
<gradient
android:startColor=
"#FF7A5C"
android:endColor=
"#FF406C"
/>
</shape>
\ No newline at end of file
m-im/src/main/res/layout/im_expert_consult_service_detail_view.xml
0 → 100644
View file @
4f7e47e8
<?xml version="1.0" encoding="utf-8"?>
<merge
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
tools:parentTag=
"android.widget.RelativeLayout"
>
<LinearLayout
android:id=
"@+id/consult_service_title_ll"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginBottom=
"15dp"
android:orientation=
"horizontal"
android:paddingRight=
"15dp"
>
<ImageView
android:id=
"@+id/im_expert_service_list_left_back_btn"
android:layout_width=
"36dp"
android:layout_height=
"36.5dp"
android:paddingTop=
"4.5dp"
android:paddingBottom=
"16dp"
android:paddingLeft=
"15dp"
android:paddingRight=
"5dp"
android:scaleType=
"centerCrop"
android:src=
"@drawable/im_expert_service_list_left_back"
/>
<TextView
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:text=
"调节孕期情绪烦躁,建立积极心态面对新生活"
android:textColor=
"#1A1A1A"
android:textSize=
"20dp"
android:textStyle=
"bold"
/>
</LinearLayout>
<View
android:id=
"@+id/consult_service_line_1"
android:layout_width=
"match_parent"
android:layout_height=
"6dp"
android:layout_below=
"@+id/consult_service_title_ll"
android:background=
"#F5F7F7"
/>
<ScrollView
android:layout_below=
"@+id/consult_service_line_1"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:orientation=
"vertical"
>
<TextView
android:id=
"@+id/consult_service_desc_title"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"15dp"
android:layout_marginTop=
"15dp"
android:layout_marginBottom=
"10dp"
android:text=
"服务介绍"
android:textColor=
"#242424"
android:textSize=
"18dp"
android:textStyle=
"bold"
/>
<TextView
android:id=
"@+id/consult_service_desc"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"15dp"
android:layout_marginRight=
"15dp"
android:layout_marginBottom=
"15dp"
android:text=
"相互了解,初步建立咨访关系,解答你心中关于咨询本身的一切疑惑,解答你心中关于咨询本身的一切疑惑,解答你心中关于咨询本身的一切疑惑,为你的困扰解决明确咨询目标与方案。相互了解,初步建立咨访关系,解答你心中关于咨询本身的一切疑惑,为你的困扰解决明确咨询目标与方案。相互了解,初步建立咨访关系,解答你心中关于咨询"
android:textColor=
"#666666"
android:textSize=
"14dp"
android:textStyle=
"bold"
/>
<View
android:id=
"@+id/consult_service_line_2"
android:layout_width=
"match_parent"
android:layout_height=
"6dp"
android:background=
"#F5F7F7"
/>
<TextView
android:id=
"@+id/consult_service_shuoming_title"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"15dp"
android:layout_marginTop=
"15dp"
android:layout_marginBottom=
"8dp"
android:text=
"服务说明"
android:textColor=
"#242424"
android:textSize=
"18dp"
android:textStyle=
"bold"
/>
<LinearLayout
android:id=
"@+id/consult_service_shuoming_1l_1"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"15dp"
android:orientation=
"horizontal"
>
<TextView
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_weight=
"1"
android:text=
"类型:"
android:textColor=
"#999999"
android:textSize=
"12dp"
/>
<TextView
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_weight=
"1"
android:text=
"次数:"
android:textColor=
"#999999"
android:textSize=
"12dp"
/>
</LinearLayout>
<LinearLayout
android:id=
"@+id/consult_service_shuoming_1l_2"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"15dp"
android:layout_marginTop=
"2dp"
android:orientation=
"horizontal"
>
<TextView
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_weight=
"1"
android:text=
"单次"
android:textColor=
"#242424"
android:textSize=
"14dp"
/>
<TextView
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_weight=
"1"
android:text=
"1次"
android:textColor=
"#242424"
android:textSize=
"14dp"
/>
</LinearLayout>
<LinearLayout
android:id=
"@+id/consult_service_shuoming_1l_3"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"15dp"
android:layout_marginTop=
"8dp"
android:orientation=
"horizontal"
>
<TextView
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_weight=
"1"
android:text=
"单次可选时长:"
android:textColor=
"#999999"
android:textSize=
"12dp"
/>
<TextView
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_weight=
"1"
android:text=
"支持方式:"
android:textColor=
"#999999"
android:textSize=
"12dp"
/>
</LinearLayout>
<LinearLayout
android:id=
"@+id/consult_service_shuoming_1l_4"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"15dp"
android:layout_marginTop=
"2dp"
android:orientation=
"horizontal"
>
<TextView
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_weight=
"1"
android:text=
"30分钟/60分钟"
android:textColor=
"#242424"
android:textSize=
"14dp"
/>
<TextView
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_weight=
"1"
android:text=
"电话/文字/视频/面对面"
android:textColor=
"#242424"
android:textSize=
"14dp"
/>
</LinearLayout>
<View
android:id=
"@+id/consult_service_line_3"
android:layout_width=
"match_parent"
android:layout_height=
"6dp"
android:layout_marginTop=
"18dp"
android:background=
"#F5F7F7"
/>
<TextView
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"15dp"
android:layout_marginTop=
"18dp"
android:layout_marginBottom=
"8dp"
android:text=
"咨询流程说明"
android:textColor=
"#242424"
android:textSize=
"18dp"
android:textStyle=
"bold"
/>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:orientation=
"horizontal"
android:layout_marginBottom=
"70dp"
>
<LinearLayout
android:layout_width=
"0dp"
android:layout_weight=
"1"
android:layout_height=
"wrap_content"
android:orientation=
"vertical"
android:gravity=
"center"
>
<ImageView
android:layout_width=
"48dp"
android:layout_height=
"48dp"
android:src=
"@drawable/expert_consult_service_icon_xiadan"
android:scaleType=
"fitXY"
android:layout_marginBottom=
"8dp"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"下单预约"
android:textColor=
"#242424"
android:textSize=
"14dp"
/>
</LinearLayout>
<LinearLayout
android:layout_width=
"0dp"
android:layout_weight=
"1"
android:layout_height=
"wrap_content"
android:orientation=
"vertical"
android:gravity=
"center"
>
<ImageView
android:layout_width=
"48dp"
android:layout_height=
"48dp"
android:src=
"@drawable/expert_consult_service_icon_queren"
android:scaleType=
"fitXY"
android:layout_marginBottom=
"8dp"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"咨询师确认"
android:textColor=
"#242424"
android:textSize=
"14dp"
/>
</LinearLayout>
<LinearLayout
android:layout_width=
"0dp"
android:layout_weight=
"1"
android:layout_height=
"wrap_content"
android:orientation=
"vertical"
android:gravity=
"center"
>
<ImageView
android:layout_width=
"48dp"
android:layout_height=
"48dp"
android:src=
"@drawable/expert_consult_service_icon_jieting"
android:scaleType=
"fitXY"
android:layout_marginBottom=
"8dp"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"接听电话"
android:textColor=
"#242424"
android:textSize=
"14dp"
/>
</LinearLayout>
<LinearLayout
android:layout_width=
"0dp"
android:layout_weight=
"1"
android:layout_height=
"wrap_content"
android:orientation=
"vertical"
android:gravity=
"center"
>
<ImageView
android:layout_width=
"48dp"
android:layout_height=
"48dp"
android:src=
"@drawable/expert_consult_service_icon_zixun"
android:scaleType=
"fitXY"
android:layout_marginBottom=
"8dp"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"开始咨询"
android:textColor=
"#242424"
android:textSize=
"14dp"
/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</ScrollView>
<LinearLayout
android:id=
"@+id/detail_bottom_ll"
android:layout_width=
"match_parent"
android:layout_height=
"50dp"
android:layout_alignParentBottom=
"true"
android:gravity=
"center_vertical"
android:orientation=
"horizontal"
android:paddingLeft=
"10dp"
android:paddingRight=
"10dp"
android:background=
"#ffffff"
>
<LinearLayout
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_weight=
"1"
android:orientation=
"horizontal"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"match_parent"
android:text=
"¥"
android:textColor=
"#FF5040"
android:textSize=
"10dp"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"320"
android:textColor=
"#FF5040"
android:textSize=
"16dp"
android:textStyle=
"bold"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"/次"
android:textColor=
"#666666"
android:textSize=
"10dp"
android:textStyle=
"bold"
/>
</LinearLayout>
<TextView
android:layout_width=
"125dp"
android:layout_height=
"38dp"
android:background=
"@drawable/im_expert_service_detail_btn_bg"
android:gravity=
"center"
android:text=
"立即预约"
android:textColor=
"#ffffff"
android:textSize=
"14dp"
android:textStyle=
"bold"
/>
</LinearLayout>
<View
android:layout_width=
"match_parent"
android:layout_height=
"0.5dp"
android:background=
"#EBEBEB"
android:layout_alignTop=
"@+id/detail_bottom_ll"
/>
</merge>
\ No newline at end of file
m-im/src/main/res/layout/im_expert_consult_service_item_view.xml
0 → 100644
View file @
4f7e47e8
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:orientation=
"horizontal"
>
<LinearLayout
android:layout_width=
"0dp"
android:layout_weight=
"1"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"18dp"
android:orientation=
"vertical"
android:paddingTop=
"10dp"
android:paddingBottom=
"18dp"
>
<TextView
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:text=
"调节孕期情绪烦躁,建立积极心态面对新生活"
android:textColor=
"#1A1A1A"
android:textSize=
"16dp"
android:textStyle=
"bold"
/>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"8dp"
android:gravity=
"center_vertical"
android:orientation=
"horizontal"
>
<LinearLayout
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:gravity=
"top"
android:orientation=
"horizontal"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"match_parent"
android:text=
"¥"
android:textColor=
"#FF5040"
android:textSize=
"10dp"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"320"
android:textColor=
"#FF5040"
android:textSize=
"16dp"
android:textStyle=
"bold"
/>
</LinearLayout>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"/60分钟"
android:textColor=
"#999999"
android:textSize=
"12dp"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"好评率"
android:textColor=
"#999999"
android:textSize=
"12dp"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"99.9%"
android:textColor=
"#1A1A1A"
android:textSize=
"12dp"
/>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width=
"wrap_content"
android:layout_height=
"match_parent"
android:gravity=
"center_vertical|center"
android:paddingLeft=
"31dp"
android:paddingRight=
"18dp"
android:orientation=
"vertical"
>
<TextView
android:id=
"@+id/im_expert_service_list_btn"
android:layout_width=
"68dp"
android:layout_height=
"27dp"
android:background=
"@drawable/im_expert_service_list_btn_bg"
android:gravity=
"center"
android:text=
"预约"
android:textColor=
"#ffffff"
android:textSize=
"14dp"
android:textStyle=
"bold"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"2dp"
android:text=
"销量2244"
android:textColor=
"#999999"
android:textSize=
"10dp"
/>
</LinearLayout>
</LinearLayout>
\ No newline at end of file
m-im/src/main/res/layout/im_expert_consult_service_list_dialog_layout.xml
0 → 100644
View file @
4f7e47e8
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:orientation=
"vertical"
>
<View
android:layout_width=
"match_parent"
android:layout_height=
"15dp"
android:background=
"@drawable/im_expert_conslt_service_list_top_bg"
/>
<com.ydl.ydlcommon.view.NoScrollViewPager
android:id=
"@+id/dialog_bottom_scroll_view"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"#ffffff"
>
</com.ydl.ydlcommon.view.NoScrollViewPager>
</LinearLayout>
\ No newline at end of file
m-im/src/main/res/layout/im_expert_consult_service_type_item_view.xml
0 → 100644
View file @
4f7e47e8
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:tools=
"http://schemas.android.com/tools"
android:orientation=
"vertical"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginRight=
"6dp"
>
<TextView
android:id=
"@+id/im_expert_info_dialog_type_item_text"
android:layout_width=
"wrap_content"
android:layout_height=
"24dp"
android:paddingLeft=
"14dp"
android:paddingRight=
"14dp"
android:gravity=
"center"
tools:text=
"婚姻家庭"
android:textColor=
"#999999"
android:text=
"12dp"
android:background=
"@drawable/im_expert_info_dialog_type_item_unselected_bg"
/>
</LinearLayout>
\ No newline at end of file
m-im/src/main/res/layout/im_expert_consult_service_view.xml
0 → 100644
View file @
4f7e47e8
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:orientation=
"vertical"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
>
<RelativeLayout
android:layout_width=
"match_parent"
android:layout_height=
"24dp"
>
<ImageView
android:id=
"@+id/consult_service_dialog_close"
android:layout_width=
"16dp"
android:layout_height=
"16dp"
android:src=
"@drawable/im_expert_service_list_left_delete"
android:layout_marginLeft=
"14dp"
android:scaleType=
"centerCrop"
android:layout_centerVertical=
"true"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"咨询服务"
android:textColor=
"#242424"
android:textSize=
"18dp"
android:textStyle=
"bold"
android:layout_centerInParent=
"true"
/>
</RelativeLayout>
<HorizontalScrollView
android:id=
"@+id/expert_consult_service_top_scroll"
android:layout_width=
"match_parent"
android:layout_height=
"44dp"
android:paddingLeft=
"15dp"
android:clipToPadding=
"false"
android:scrollbars=
"none"
>
<LinearLayout
android:id=
"@+id/expert_consult_service_type_list"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:orientation=
"horizontal"
android:gravity=
"center_vertical"
>
</LinearLayout>
</HorizontalScrollView>
<View
android:layout_width=
"match_parent"
android:layout_height=
"0.5dp"
android:background=
"#EBEBEB"
/>
<ScrollView
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
>
<LinearLayout
android:id=
"@+id/expert_consult_service_service_list"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:orientation=
"vertical"
>
</LinearLayout>
</ScrollView>
</LinearLayout>
\ No newline at end of file
m-im/src/main/res/values/styles.xml
View file @
4f7e47e8
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style
name=
"dialog_button_text_style"
>
<item
name=
"android:textSize"
>
@dimen/im_big_text_size
</item>
<item
name=
"android:textColor"
>
@color/im_black
</item>
<item
name=
"android:background"
>
@drawable/im_nim_list_item_selector
</item>
<item
name=
"android:paddingTop"
>
@dimen/im_custom_dialog_padding_vertical
</item>
<item
name=
"android:paddingBottom"
>
@dimen/im_custom_dialog_padding_vertical
</item>
</style>
<style
name=
"custom_dialog_message_text_style"
>
<item
name=
"android:textSize"
>
@dimen/im_normal_text_size
</item>
<item
name=
"android:textColor"
>
@color/im_color_black_333333
</item>
<item
name=
"android:paddingLeft"
>
@dimen/im_dialog_text_margin_horizontal
</item>
<item
name=
"android:paddingRight"
>
@dimen/im_dialog_text_margin_horizontal
</item>
<item
name=
"android:paddingTop"
>
@dimen/im_custom_dialog_padding_vertical
</item>
<item
name=
"android:paddingBottom"
>
@dimen/im_custom_dialog_padding_vertical
</item>
<item
name=
"android:background"
>
@drawable/im_nim_list_item_selector
</item>
</style>
<style
name=
"easy_dialog_style"
parent=
"@android:style/Theme.Dialog"
>
<item
name=
"android:windowFrame"
>
@null
</item>
<!-- 边框 -->
<item
name=
"android:windowIsFloating"
>
true
</item>
<!-- 是否浮现在activity之上 -->
<item
name=
"android:windowIsTranslucent"
>
true
</item>
<!-- 半透明 -->
<item
name=
"android:windowNoTitle"
>
true
</item>
<!-- 无标题 -->
<item
name=
"android:windowBackground"
>
@color/im_transparent
</item>
<!-- 背景透明 -->
<item
name=
"android:backgroundDimEnabled"
>
true
</item>
<!-- 后面的activity变暗 -->
</style>
<style
name=
"dialog_default_style"
parent=
"@android:style/Theme.Dialog"
>
<item
name=
"android:windowBackground"
>
@color/im_transparent
</item>
<item
name=
"android:windowFrame"
>
@null
</item>
<item
name=
"android:windowNoTitle"
>
true
</item>
<item
name=
"android:windowIsFloating"
>
true
</item>
<item
name=
"android:windowIsTranslucent"
>
true
</item>
<item
name=
"android:backgroundDimEnabled"
>
true
</item>
</style>
<style
name=
"dialog_title_text_style"
>
<item
name=
"android:textSize"
>
@dimen/im_big_text_size
</item>
<item
name=
"android:textColor"
>
@color/im_color_activity_blue_bg
</item>
<item
name=
"android:textStyle"
>
bold
</item>
<item
name=
"android:paddingLeft"
>
@dimen/im_dialog_text_margin_horizontal
</item>
<item
name=
"android:paddingRight"
>
@dimen/im_dialog_text_margin_horizontal
</item>
<item
name=
"android:paddingTop"
>
@dimen/im_dialog_padding_vertical
</item>
<item
name=
"android:paddingBottom"
>
@dimen/im_dialog_padding_vertical
</item>
</style>
<!-- view -->
<style
name=
"dialog_message_text_style"
>
<item
name=
"android:textSize"
>
@dimen/im_normal_text_size
</item>
<item
name=
"android:textColor"
>
@color/im_grey
</item>
<item
name=
"android:paddingLeft"
>
@dimen/im_dialog_text_margin_horizontal
</item>
<item
name=
"android:paddingRight"
>
@dimen/im_dialog_text_margin_horizontal
</item>
<item
name=
"android:paddingTop"
>
@dimen/im_dialog_padding_vertical
</item>
<item
name=
"android:paddingBottom"
>
@dimen/im_dialog_padding_vertical
</item>
</style>
<style
name=
"grid_view"
parent=
"@android:style/Widget.GridView"
>
<item
name=
"android:scrollbarThumbVertical"
>
@drawable/im_nim_scrollbar_handle_holo_dark
</item>
<item
name=
"android:scrollbarThumbHorizontal"
>
@drawable/im_nim_scrollbar_handle_holo_dark
</item>
</style>
<style
name=
"list_view"
parent=
"@android:style/Widget.ListView"
>
<item
name=
"android:scrollbarThumbVertical"
>
@drawable/im_nim_scrollbar_handle_holo_dark
</item>
<item
name=
"android:scrollbarThumbHorizontal"
>
@drawable/im_nim_scrollbar_handle_holo_dark
</item>
</style>
<style
name=
"scroll_view"
parent=
"@android:style/Widget.ScrollView"
>
<item
name=
"android:scrollbarThumbVertical"
>
@drawable/im_nim_scrollbar_handle_holo_dark
</item>
<item
name=
"android:scrollbarThumbHorizontal"
>
@drawable/im_nim_scrollbar_handle_holo_dark
</item>
</style>
<style
name=
"blue_bottom_line_edit_text_style"
parent=
"@android:style/Widget.EditText"
>
<item
name=
"android:background"
>
@drawable/im_nim_blue_edit_text_bg
</item>
<item
name=
"android:paddingLeft"
>
6dp
</item>
<item
name=
"android:paddingRight"
>
6dp
</item>
<item
name=
"android:paddingBottom"
>
6dp
</item>
<item
name=
"android:paddingTop"
>
6dp
</item>
<item
name=
"android:includeFontPadding"
>
false
</item>
<item
name=
"android:gravity"
>
center_vertical
</item>
</style>
<style
name=
"horizontal_light_thin_divider"
>
<item
name=
"android:layout_height"
>
2px
</item>
<item
name=
"android:layout_width"
>
fill_parent
</item>
<item
name=
"android:background"
>
@color/im_color_gray_d9d9d9
</item>
</style>
<!--====================RES_AVCHAT====================-->
<!--====================RES_AVCHAT====================-->
<!--====================RES_AVCHAT====================-->
<!--====================RES_UIKIT====================-->
<!--====================RES_UIKIT====================-->
<!--====================RES_UIKIT====================-->
<style
name=
"horizontal_deep_thick_divider"
>
<item
name=
"android:layout_height"
>
@dimen/im_split_one_dip
</item>
<item
name=
"android:layout_width"
>
fill_parent
</item>
<item
name=
"android:background"
>
@color/im_color_gray_d9d9d9
</item>
</style>
<declare-styleable
name=
"TitleBarBottom"
>
<attr
name=
"left_text"
format=
"string"
/>
<attr
name=
"left_start_icon"
format=
"reference"
/>
<attr
name=
"left_end_icon"
format=
"reference"
/>
<attr
name=
"title_text"
format=
"string"
/>
<attr
name=
"title_color"
format=
"color"
/>
<attr
name=
"right_text"
format=
"string"
/>
<attr
name=
"right_start_icon"
format=
"reference"
/>
<attr
name=
"right_end_icon"
format=
"reference"
/>
<attr
name=
"side_text_color"
format=
"color"
/>
<attr
name=
"title_bar_text_color"
format=
"color|reference"
/>
<attr
name=
"title_bar_bg"
format=
"color|reference"
/>
<attr
name=
"right_iv"
format=
"reference"
/>
<attr
name=
"show_bottom_title"
format=
"boolean"
/>
</declare-styleable>
</resources>
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style
name=
"dialog_button_text_style"
>
<item
name=
"android:textSize"
>
@dimen/im_big_text_size
</item>
<item
name=
"android:textColor"
>
@color/im_black
</item>
<item
name=
"android:background"
>
@drawable/im_nim_list_item_selector
</item>
<item
name=
"android:paddingTop"
>
@dimen/im_custom_dialog_padding_vertical
</item>
<item
name=
"android:paddingBottom"
>
@dimen/im_custom_dialog_padding_vertical
</item>
</style>
<style
name=
"custom_dialog_message_text_style"
>
<item
name=
"android:textSize"
>
@dimen/im_normal_text_size
</item>
<item
name=
"android:textColor"
>
@color/im_color_black_333333
</item>
<item
name=
"android:paddingLeft"
>
@dimen/im_dialog_text_margin_horizontal
</item>
<item
name=
"android:paddingRight"
>
@dimen/im_dialog_text_margin_horizontal
</item>
<item
name=
"android:paddingTop"
>
@dimen/im_custom_dialog_padding_vertical
</item>
<item
name=
"android:paddingBottom"
>
@dimen/im_custom_dialog_padding_vertical
</item>
<item
name=
"android:background"
>
@drawable/im_nim_list_item_selector
</item>
</style>
<style
name=
"easy_dialog_style"
parent=
"@android:style/Theme.Dialog"
>
<item
name=
"android:windowFrame"
>
@null
</item>
<!-- 边框 -->
<item
name=
"android:windowIsFloating"
>
true
</item>
<!-- 是否浮现在activity之上 -->
<item
name=
"android:windowIsTranslucent"
>
true
</item>
<!-- 半透明 -->
<item
name=
"android:windowNoTitle"
>
true
</item>
<!-- 无标题 -->
<item
name=
"android:windowBackground"
>
@color/im_transparent
</item>
<!-- 背景透明 -->
<item
name=
"android:backgroundDimEnabled"
>
true
</item>
<!-- 后面的activity变暗 -->
</style>
<style
name=
"dialog_default_style"
parent=
"@android:style/Theme.Dialog"
>
<item
name=
"android:windowBackground"
>
@color/im_transparent
</item>
<item
name=
"android:windowFrame"
>
@null
</item>
<item
name=
"android:windowNoTitle"
>
true
</item>
<item
name=
"android:windowIsFloating"
>
true
</item>
<item
name=
"android:windowIsTranslucent"
>
true
</item>
<item
name=
"android:backgroundDimEnabled"
>
true
</item>
</style>
<style
name=
"dialog_title_text_style"
>
<item
name=
"android:textSize"
>
@dimen/im_big_text_size
</item>
<item
name=
"android:textColor"
>
@color/im_color_activity_blue_bg
</item>
<item
name=
"android:textStyle"
>
bold
</item>
<item
name=
"android:paddingLeft"
>
@dimen/im_dialog_text_margin_horizontal
</item>
<item
name=
"android:paddingRight"
>
@dimen/im_dialog_text_margin_horizontal
</item>
<item
name=
"android:paddingTop"
>
@dimen/im_dialog_padding_vertical
</item>
<item
name=
"android:paddingBottom"
>
@dimen/im_dialog_padding_vertical
</item>
</style>
<!-- view -->
<style
name=
"dialog_message_text_style"
>
<item
name=
"android:textSize"
>
@dimen/im_normal_text_size
</item>
<item
name=
"android:textColor"
>
@color/im_grey
</item>
<item
name=
"android:paddingLeft"
>
@dimen/im_dialog_text_margin_horizontal
</item>
<item
name=
"android:paddingRight"
>
@dimen/im_dialog_text_margin_horizontal
</item>
<item
name=
"android:paddingTop"
>
@dimen/im_dialog_padding_vertical
</item>
<item
name=
"android:paddingBottom"
>
@dimen/im_dialog_padding_vertical
</item>
</style>
<style
name=
"grid_view"
parent=
"@android:style/Widget.GridView"
>
<item
name=
"android:scrollbarThumbVertical"
>
@drawable/im_nim_scrollbar_handle_holo_dark
</item>
<item
name=
"android:scrollbarThumbHorizontal"
>
@drawable/im_nim_scrollbar_handle_holo_dark
</item>
</style>
<style
name=
"list_view"
parent=
"@android:style/Widget.ListView"
>
<item
name=
"android:scrollbarThumbVertical"
>
@drawable/im_nim_scrollbar_handle_holo_dark
</item>
<item
name=
"android:scrollbarThumbHorizontal"
>
@drawable/im_nim_scrollbar_handle_holo_dark
</item>
</style>
<style
name=
"scroll_view"
parent=
"@android:style/Widget.ScrollView"
>
<item
name=
"android:scrollbarThumbVertical"
>
@drawable/im_nim_scrollbar_handle_holo_dark
</item>
<item
name=
"android:scrollbarThumbHorizontal"
>
@drawable/im_nim_scrollbar_handle_holo_dark
</item>
</style>
<style
name=
"blue_bottom_line_edit_text_style"
parent=
"@android:style/Widget.EditText"
>
<item
name=
"android:background"
>
@drawable/im_nim_blue_edit_text_bg
</item>
<item
name=
"android:paddingLeft"
>
6dp
</item>
<item
name=
"android:paddingRight"
>
6dp
</item>
<item
name=
"android:paddingBottom"
>
6dp
</item>
<item
name=
"android:paddingTop"
>
6dp
</item>
<item
name=
"android:includeFontPadding"
>
false
</item>
<item
name=
"android:gravity"
>
center_vertical
</item>
</style>
<style
name=
"horizontal_light_thin_divider"
>
<item
name=
"android:layout_height"
>
2px
</item>
<item
name=
"android:layout_width"
>
fill_parent
</item>
<item
name=
"android:background"
>
@color/im_color_gray_d9d9d9
</item>
</style>
<!--====================RES_AVCHAT====================-->
<!--====================RES_AVCHAT====================-->
<!--====================RES_AVCHAT====================-->
<!--====================RES_UIKIT====================-->
<!--====================RES_UIKIT====================-->
<!--====================RES_UIKIT====================-->
<style
name=
"horizontal_deep_thick_divider"
>
<item
name=
"android:layout_height"
>
@dimen/im_split_one_dip
</item>
<item
name=
"android:layout_width"
>
fill_parent
</item>
<item
name=
"android:background"
>
@color/im_color_gray_d9d9d9
</item>
</style>
<declare-styleable
name=
"TitleBarBottom"
>
<attr
name=
"left_text"
format=
"string"
/>
<attr
name=
"left_start_icon"
format=
"reference"
/>
<attr
name=
"left_end_icon"
format=
"reference"
/>
<attr
name=
"title_text"
format=
"string"
/>
<attr
name=
"title_color"
format=
"color"
/>
<attr
name=
"right_text"
format=
"string"
/>
<attr
name=
"right_start_icon"
format=
"reference"
/>
<attr
name=
"right_end_icon"
format=
"reference"
/>
<attr
name=
"side_text_color"
format=
"color"
/>
<attr
name=
"title_bar_text_color"
format=
"color|reference"
/>
<attr
name=
"title_bar_bg"
format=
"color|reference"
/>
<attr
name=
"right_iv"
format=
"reference"
/>
<attr
name=
"show_bottom_title"
format=
"boolean"
/>
</declare-styleable>
<style
name=
"bottom_to_top_dialog_style"
>
<item
name=
"android:windowEnterAnimation"
>
@anim/bottom_pop_show_anim
</item>
<!-- 指定显示的动画xml -->
<item
name=
"android:windowExitAnimation"
>
@anim/bottom_pop_hidden_anim
</item>
<!-- 指定消失的动画xml -->
</style>
</resources>
m-im/src/main/res_uikit/drawable-xhdpi/im_expert_info_dialog_close_icon.png
0 → 100644
View file @
4f7e47e8
2.84 KB
m-im/src/main/res_uikit/drawable-xhdpi/im_expert_info_dialog_top_bg.png
0 → 100644
View file @
4f7e47e8
519 KB
m-im/src/main/res_uikit/drawable/im_bg_im_confide_action.xml
View file @
4f7e47e8
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<corners
android:radius=
"6dp"
/>
<solid
android:color=
"@color/im_white"
/>
</shape>
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<corners
android:topLeftRadius=
"18dp"
android:bottomLeftRadius=
"18dp"
/>
<gradient
android:angle=
"180"
android:startColor=
"#FF406C"
android:endColor=
"#FF7A5C"
/>
</shape>
m-im/src/main/res_uikit/drawable/im_expert_info_dialog_bg.xml
0 → 100644
View file @
4f7e47e8
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:shape=
"rectangle"
>
<solid
android:color=
"#ffffff"
/>
<corners
android:radius=
"6dp"
/>
</shape>
\ No newline at end of file
m-im/src/main/res_uikit/drawable/im_more_info_red_point.xml
0 → 100644
View file @
4f7e47e8
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:shape=
"rectangle"
>
<corners
android:radius=
"3dp"
></corners>
<gradient
android:angle=
"270"
android:startColor=
"#FF406C"
android:endColor=
"#FF7A5C"
/>
</shape>
\ No newline at end of file
m-im/src/main/res_uikit/layout/im_expert_info_dialog_layout.xml
0 → 100644
View file @
4f7e47e8
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
xmlns:tools=
"http://schemas.android.com/tools"
android:gravity=
"center_horizontal"
android:orientation=
"vertical"
>
<View
android:layout_width=
"0dp"
android:layout_height=
"0dp"
android:layout_weight=
"1"
/>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"30dp"
android:layout_marginRight=
"30dp"
android:background=
"@drawable/im_expert_info_dialog_bg"
android:orientation=
"vertical"
>
<ImageView
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:src=
"@drawable/im_expert_info_dialog_top_bg"
android:scaleType=
"centerCrop"
/>
<TextView
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:text=
"雷水寿咨询师在壹点灵平台已服务2648人,累计1634小时的心理服务经验,99.9%的用户给予满意好评,具体包含:"
android:textSize=
"@dimen/im_text_size_16"
android:textColor=
"@color/im_color_242424"
android:textStyle=
"bold"
android:layout_marginLeft=
"@dimen/platform_dp_20"
android:layout_marginRight=
"@dimen/platform_dp_20"
android:layout_marginTop=
"16dp"
android:layout_marginBottom=
"11dp"
/>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"28dp"
android:layout_marginLeft=
"20dp"
android:layout_marginRight=
"20dp"
android:orientation=
"horizontal"
android:gravity=
"center_vertical"
>
<View
android:layout_width=
"6dp"
android:layout_height=
"6dp"
android:background=
"@drawable/im_more_info_red_point"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:maxLines=
"1"
android:ellipsize=
"end"
android:text=
"心理咨询1214小时"
android:layout_marginLeft=
"6dp"
android:textSize=
"14dp"
android:textColor=
"#242424"
/>
</LinearLayout>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"28dp"
android:layout_marginLeft=
"20dp"
android:layout_marginRight=
"20dp"
android:orientation=
"horizontal"
android:gravity=
"center_vertical"
>
<View
android:layout_width=
"6dp"
android:layout_height=
"6dp"
android:background=
"@drawable/im_more_info_red_point"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:maxLines=
"1"
android:ellipsize=
"end"
android:text=
"即时倾诉420小时"
android:layout_marginLeft=
"6dp"
android:textSize=
"14dp"
android:textColor=
"#242424"
/>
</LinearLayout>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"28dp"
android:layout_marginLeft=
"20dp"
android:layout_marginRight=
"20dp"
android:orientation=
"horizontal"
android:gravity=
"center_vertical"
>
<View
android:layout_width=
"6dp"
android:layout_height=
"6dp"
android:background=
"@drawable/im_more_info_red_point"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:maxLines=
"1"
android:ellipsize=
"end"
android:text=
"用户好评共1258条,占比99.9%"
android:layout_marginLeft=
"6dp"
android:textSize=
"14dp"
android:textColor=
"#242424"
/>
</LinearLayout>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:maxLines=
"1"
android:ellipsize=
"end"
android:text=
"* 数据统计至2019年12月24日"
android:layout_marginLeft=
"20dp"
android:layout_marginTop=
"26dp"
android:textSize=
"14dp"
android:textColor=
"#999999"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"壹点灵通过严谨数据统计机制,对咨询师的数据进行持续的监督管理,确保提供真实有效的数据参考。"
android:layout_marginLeft=
"20dp"
android:layout_marginRight=
"20dp"
android:layout_marginBottom=
"20dp"
android:layout_marginTop=
"8dp"
android:textSize=
"14dp"
android:textColor=
"#999999"
/>
</LinearLayout>
<ImageView
android:id=
"@+id/expert_info_close"
android:layout_width=
"28dp"
android:layout_height=
"28dp"
android:layout_marginTop=
"30dp"
android:src=
"@drawable/im_expert_info_dialog_close_icon"
/>
<View
android:layout_width=
"0dp"
android:layout_height=
"0dp"
android:layout_weight=
"1"
/>
</LinearLayout>
m-im/src/main/res_uikit/layout/im_ydl_nim_message_fragment.xml
View file @
4f7e47e8
...
...
@@ -126,18 +126,33 @@
android:textSize=
"@dimen/platform_dp_20"
tools:text=
"1634"
/>
<
TextView
<
LinearLayout
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentBottom=
"true"
android:layout_centerHorizontal=
"true"
android:text=
"服务时长 (小时)"
android:textColor=
"@color/platform_color_999999"
android:textSize=
"@dimen/platform_dp_10"
/>
android:orientation=
"horizontal"
android:gravity=
"center"
android:layout_alignParentBottom=
"true"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerHorizontal=
"true"
android:text=
"服务时长 (小时)"
android:textColor=
"@color/platform_color_999999"
android:textSize=
"@dimen/platform_dp_10"
/>
<ImageView
android:layout_width=
"10dp"
android:layout_height=
"10dp"
android:src=
"@drawable/im_more_info_icon"
android:scaleType=
"fitXY"
android:layout_marginLeft=
"2dp"
/>
</LinearLayout>
</RelativeLayout>
</android.support.constraint.ConstraintLayout>
<!--用户评论banner-->
<LinearLayout
android:id=
"@+id/comment_banner_view_ll"
android:layout_width=
"match_parent"
...
...
@@ -176,8 +191,10 @@
<ImageView
android:id=
"@+id/tv_all_comment_go"
android:layout_width=
"4dp"
android:layout_height=
"
8
dp"
android:layout_height=
"
37
dp"
android:layout_marginLeft=
"8dp"
android:paddingTop=
"14.5dp"
android:paddingBottom=
"14.5dp"
android:scaleType=
"fitXY"
android:src=
"@drawable/im_comment_list_right_icon"
/>
...
...
@@ -308,7 +325,7 @@
android:divider=
"@null"
android:fadingEdge=
"none"
android:listSelector=
"@android:color/transparent"
android:scrollbars=
"vertical"
/>
android:scrollbars=
"vertical"
/>
<!--右边的两个快捷回复按钮-->
<RelativeLayout
...
...
@@ -319,82 +336,57 @@
android:layout_alignParentRight=
"true"
android:layout_gravity=
"right"
android:layout_marginTop=
"10dp"
android:layout_marginRight=
"@dimen/platform_dp_10"
android:visibility=
"visible"
>
<RelativeLayout
android:id=
"@+id/rela_qingsu"
android:layout_width=
"wrap_content"
android:layout_height=
"36dp"
android:background=
"@drawable/im_bg_im_confide_action"
android:gravity=
"center"
android:paddingLeft=
"14dp"
android:paddingRight=
"17dp"
>
<ImageView
android:id=
"@+id/action_qingshu_img"
android:layout_width=
"12dp"
android:layout_height=
"12dp"
android:layout_centerVertical=
"true"
android:src=
"@mipmap/im_chat_ico_call"
/
>
<TextView
android:id=
"@+id/action_qingshu"
android:layout_width=
"wrap_content"
android:layout_height=
"match_parent"
android:layout_toRightOf=
"@+id/action_qingshu_img"
android:gravity=
"center"
android:paddingLeft=
"5dp"
android:text=
"即时倾诉"
android:textColor=
"@color/platform_google_blue"
android:textSize=
"12dp"
android:textStyle=
"bold"
/
>
</RelativeLayout
>
<!-- <RelativeLayout-->
<!-- android:id="@+id/rela_qingsu"-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="36dp"-->
<!-- android:background="@drawable/im_bg_im_confide_action"-->
<!-- android:gravity="center"-->
<!-- android:paddingLeft="14dp"-->
<!-- android:paddingRight="17dp">--
>
<!-- <ImageView-->
<!-- android:id="@+id/action_qingshu_img"-->
<!-- android:layout_width="12dp"-->
<!-- android:layout_height="12dp"-->
<!-- android:layout_centerVertical="true"-->
<!-- android:src="@mipmap/im_chat_ico_call" />--
>
<!-- <TextView-->
<!-- android:id="@+id/action_qingshu"-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="match_parent"-->
<!-- android:layout_toRightOf="@+id/action_qingshu_img"-->
<!-- android:gravity="center"-->
<!-- android:paddingLeft="5dp"-->
<!-- android:text="即时倾诉"-->
<!-- android:textColor="@color/platform_google_blue"-->
<!-- android:textSize="12dp"-->
<!-- android:textStyle="bold" />--
>
<!-- </RelativeLayout>--
>
<RelativeLayout
android:id=
"@+id/rela_zixun"
android:layout_width=
"wrap_content"
android:layout_height=
"36dp"
android:layout_marginLeft=
"-4dp"
android:layout_toRightOf=
"@+id/rela_qingsu"
android:background=
"@drawable/im_bg_im_confide_action"
android:gravity=
"center"
android:paddingLeft=
"17dp"
android:paddingRight=
"14dp"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:background=
"@drawable/im_bg_im_confide_top_tips"
android:paddingLeft=
"5dp"
android:paddingTop=
"1dp"
android:paddingRight=
"5dp"
android:paddingBottom=
"1dp"
android:text=
"立减20元"
android:textColor=
"@color/im_white"
android:textSize=
"9sp"
android:visibility=
"gone"
/>
<ImageView
android:id=
"@+id/img_zixun"
android:layout_width=
"12dp"
android:layout_height=
"12dp"
android:layout_centerVertical=
"true"
android:src=
"@mipmap/im_chat_pre_zixun"
/>
android:paddingRight=
"11dp"
>
<TextView
android:id=
"@+id/action_yuyue"
android:layout_width=
"wrap_content"
android:layout_height=
"match_parent"
android:layout_toRightOf=
"@+id/img_zixun"
android:gravity=
"center"
android:paddingLeft=
"5dp"
android:text=
"
预约
咨询"
android:textColor=
"
@color/platform_google_green
"
android:textSize=
"1
2
dp"
android:text=
"
立即
咨询"
android:textColor=
"
#ffffff
"
android:textSize=
"1
4
dp"
android:textStyle=
"bold"
/>
</RelativeLayout>
...
...
@@ -499,7 +491,6 @@
android:visibility=
"gone"
/>
<include
layout=
"@layout/im_nim_message_activity_bottom_layout"
/>
<include
layout=
"@layout/im_nim_message_activity_bottom_layout"
/>
</LinearLayout>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment