Commit 6328d9be by 霍志良

feat:金刚位剩余功能困扰页面开发

parent 2a4f7cd1
......@@ -96,7 +96,7 @@ class ExpertSearchFragment : BaseMvpFragment<IExpertSearchView, ExpertSearchPres
private var locationRegionItem: RegionItem? = null
private var locationList: ArrayList<SubItem>? = arrayListOf()
private var locationHistoryList: ArrayList<RegionItem>? = arrayListOf()
private lateinit var eightcategoryPopup: EightCategoryPopupWindow
override fun layoutResId(): Int {
return R.layout.consultant_activity_expert_search_list
}
......@@ -908,7 +908,8 @@ class ExpertSearchFragment : BaseMvpFragment<IExpertSearchView, ExpertSearchPres
hideSoftInput()
appbar_layout.setExpanded(false)
appbar_layout.postDelayed({
showSubjectPopupWindow()
// showSubjectPopupWindow()
showeightCategoryPopupWindow()
}, 300)
}
......@@ -1518,10 +1519,27 @@ class ExpertSearchFragment : BaseMvpFragment<IExpertSearchView, ExpertSearchPres
}
/**
* 显示八大类弹窗
*/
private fun showeightCategoryPopupWindow() {
eightcategoryPopup = EightCategoryPopupWindow(mActivity, allFilter)
eightcategoryPopup.setListener(this)
eightcategoryPopup.setOnDismissListener {
viewDim.visibility = View.INVISIBLE
showConsultAssistantDialog()
}
hideConsultAssistantDialog()
eightcategoryPopup.showAsDropDown(viewSep2)
updateFilterTextViewStatus(tvSubject, FILTER_STATUS_OPEN)
viewDim.visibility = View.VISIBLE
}
/**
* 主题选择确认回调
*
*/
override fun onCategoriesSelected(signLit: ArrayList<String>) {
eightcategoryPopup.dismiss()
if (signLit.isNotEmpty()) {
val sign1 = signLit.joinToString(",") { it }
ActionCountUtils.baiDuCountSign3(
......
package com.yidianling.consultant.adapter
import android.annotation.SuppressLint
import android.content.Context
import androidx.recyclerview.widget.RecyclerView
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.TextView
import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.LinearLayoutManager
import com.yidianling.consultant.R
import com.yidianling.consultant.model.bean.ChildrenBean
import com.yidianling.consultant.model.bean.EightCategoryBean
import kotlinx.android.synthetic.main.consultant_layout_category_view.*
import kotlinx.android.synthetic.main.eight_category_detail_list_item.view.*
import kotlinx.android.synthetic.main.eight_category_list_item.view.*
/**
* Created by zqk on 17-9-20.
*/
class CategoryDetailAdapter(
private val context: Context,
private val categoryDetailList: MutableList<MutableList<ChildrenBean>>,
private val categoryNamelList: MutableList<EightCategoryBean>,
) : RecyclerView.Adapter<CategoryDetailAdapter.ViewHolder>() {
lateinit var outAdapterClicklistener: OutAdapterClicklistener
override fun getItemCount(): Int = categoryNamelList.size
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
val itemView =
LayoutInflater.from(context)
.inflate(R.layout.eight_category_detail_list_item, parent, false)
return ViewHolder(itemView)
}
override fun onBindViewHolder(holder: ViewHolder, @SuppressLint("RecyclerView") position: Int) {
holder.category_name.text = categoryNamelList[position].string
val eightCategoryAdapter = CategoryDetailTextAdapter(context, categoryDetailList[position])
eightCategoryAdapter.setOnClick(object :
CategoryDetailTextAdapter.TextAdapterOnclickListener {
override fun textOnClick(textPosition: Int) {
outAdapterClicklistener.outAdapterClick(position, textPosition)
}
})
if (categoryNamelList[position].collapse) {
eightCategoryAdapter.setAllVisible()
holder.collapse_hide.text = "收起"
holder.arrow_collapse_hide.background =
context.resources.getDrawable(R.drawable.consult_hide_arrow)
} else {
eightCategoryAdapter.setGone()
holder.collapse_hide.text = "展开"
holder.arrow_collapse_hide.background =
context.resources.getDrawable(R.drawable.consult_collapse_arrow)
}
holder.collapse_hide.setOnClickListener {
if (categoryNamelList[position].collapse) {
//显示 展开
categoryNamelList[position].collapse = false
holder.collapse_hide.text = "展开"
holder.arrow_collapse_hide.background =
context.resources.getDrawable(R.drawable.consult_collapse_arrow)
eightCategoryAdapter.setGone()
} else {
//显示收起
categoryNamelList[position].collapse = true
holder.collapse_hide.text = "收起"
holder.arrow_collapse_hide.background =
context.resources.getDrawable(R.drawable.consult_hide_arrow)
eightCategoryAdapter.setAllVisible()
}
}
holder.category_list_detail.layoutManager = GridLayoutManager(context, 3)
holder.category_list_detail.adapter = eightCategoryAdapter
}
interface OutAdapterClicklistener {
fun outAdapterClick(outPosition: Int, inPosition: Int)
}
fun setOutClicklistener(listener: OutAdapterClicklistener) {
this.outAdapterClicklistener = listener
}
inner class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
val category_name = itemView.category_name
val category_list_detail = itemView.category_list_detail
val collapse_hide = itemView.collapse_hide
val arrow_collapse_hide = itemView.arrow_collapse_hide
}
}
\ No newline at end of file
package com.yidianling.consultant.adapter
import android.annotation.SuppressLint
import android.content.Context
import androidx.recyclerview.widget.RecyclerView
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.TextView
import androidx.core.content.ContextCompat
import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.LinearLayoutManager
import com.yidianling.consultant.R
import com.yidianling.consultant.model.bean.ChildrenBean
import kotlinx.android.synthetic.main.consultant_layout_category_view.*
import kotlinx.android.synthetic.main.eight_category_detail_item_item.view.*
import kotlinx.android.synthetic.main.eight_category_detail_list_item.view.*
import kotlinx.android.synthetic.main.eight_category_list_item.view.*
/**
* Created by zqk on 17-9-20.
*/
class CategoryDetailTextAdapter(
private val context: Context,
private val categoryDetailList: MutableList<ChildrenBean>,
) : RecyclerView.Adapter<CategoryDetailTextAdapter.ViewHolder>() {
var isVisible = false
lateinit var textAdapterOnclickListener: TextAdapterOnclickListener
override fun getItemCount(): Int = categoryDetailList.size
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
val itemView =
LayoutInflater.from(context)
.inflate(R.layout.eight_category_detail_item_item, parent, false)
return ViewHolder(itemView)
}
@SuppressLint("UseCompatLoadingForDrawables")
override fun onBindViewHolder(holder: ViewHolder, position: Int) {
var param = RecyclerView.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.WRAP_CONTENT
);
if (categoryDetailList[position].isVisible) {
param.height = ViewGroup.LayoutParams.WRAP_CONTENT
param.width = ViewGroup.LayoutParams.MATCH_PARENT
param.setMargins(0, 0, 10, 10)
holder.itemView.visibility = View.VISIBLE
} else {
param.height = 0
param.width = 0
holder.itemView.visibility = View.GONE;
}
holder.itemView.layoutParams = param
holder.category_name_detail.text = categoryDetailList[position].cate_name
holder.category_name_detail.isSelected = categoryDetailList[position].isSelected
if (categoryDetailList[position].isSelected) {
holder.category_name_detail.setTextColor(context.resources.getColor(R.color.platform_main_theme))
holder.category_name_detail.background =
context.getDrawable(R.drawable.consult_price_expert_selected)
} else {
holder.category_name_detail.background =
context.getDrawable(R.drawable.consult_price_expert_unseleted)
holder.category_name_detail.setTextColor(context.resources.getColor(R.color.platform_color_333333))
}
holder.itemView.setOnClickListener {
textAdapterOnclickListener.textOnClick(position)
}
}
inner class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
val category_name_detail = itemView.category_name_detail
}
interface TextAdapterOnclickListener {
fun textOnClick(position: Int)
}
fun setOnClick(adapterOnclickListener: TextAdapterOnclickListener) {
this.textAdapterOnclickListener = adapterOnclickListener
}
/**
* 设置大于第12个之后的标签全部显示
*/
fun setAllVisible() {
categoryDetailList.forEach { bean ->
bean.isVisible = true
}
notifyDataSetChanged()
isVisible = true
}
/**
* 设置大于第12个之后的标签全部隐藏
*/
fun setGone() {
categoryDetailList.forEachIndexed { index, bean ->
if (index > 12) {
bean.isVisible = false
}
}
notifyDataSetChanged()
isVisible = false
}
}
\ No newline at end of file
package com.yidianling.consultant.adapter
import android.content.Context
import androidx.recyclerview.widget.RecyclerView
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.core.content.ContextCompat
import com.yidianling.consultant.R
import com.yidianling.consultant.model.bean.EightCategoryBean
import kotlinx.android.synthetic.main.eight_category_list_item.view.*
/**
* Created by zqk on 17-9-20.
*/
class EightCategoryAdapter(
private val context: Context,
private val eightCateList: MutableList<EightCategoryBean>,
) : RecyclerView.Adapter<EightCategoryAdapter.ViewHolder>() {
lateinit var onLeftClickListener: OnLeftClickListener
override fun getItemCount(): Int = eightCateList.size
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
val itemView =
LayoutInflater.from(context).inflate(R.layout.eight_category_list_item, parent, false)
return ViewHolder(itemView)
}
override fun onBindViewHolder(holder: ViewHolder, position: Int) {
holder.eight_name.text = eightCateList[position].string
holder.itemView.setOnClickListener {
onLeftClickListener.onLeftClick(position)
}
if (eightCateList[position].selected) {
holder.itemView.setBackgroundColor(ContextCompat.getColor(context, R.color.white))
} else {
holder.itemView.setBackgroundColor(
ContextCompat.getColor(
context,
R.color.platform_color_F7F7F7
)
)
}
if (eightCateList[position].hasData) {
holder.multiple_choise.visibility = View.VISIBLE
} else {
holder.multiple_choise.visibility = View.GONE
}
}
interface OnLeftClickListener {
fun onLeftClick(leftPosition: Int)
}
fun setleftClick(leftListener: OnLeftClickListener) {
this.onLeftClickListener = leftListener
}
inner class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
val eight_name = itemView.eight_name
val multiple_choise = itemView.multiple_choise
}
}
\ No newline at end of file
package com.yidianling.consultant.model.bean
data class EightCategoryBean(
val string: String,
var collapse: Boolean = false,
var selected: Boolean = false,
var hasData: Boolean = false
)
\ No newline at end of file
package com.yidianling.consultant.ui.view
import com.ydl.ydlcommon.base.BaseFragment
import com.yidianling.consultant.R
class ConsultCategoryFragment : BaseFragment() {
override fun layoutResId(): Int {
return R.layout.consultant_layout_category_view
}
override fun initDataAndEvent() {
}
override fun initDataAndEventLazy() {
}
}
\ No newline at end of file
package com.yidianling.consultant.ui.view
import android.content.Context
import android.graphics.drawable.BitmapDrawable
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.ImageView
import android.widget.LinearLayout
import android.widget.PopupWindow
import androidx.fragment.app.FragmentActivity
import com.yidianling.common.tools.RxImageTool
import com.yidianling.common.tools.asFragmentActivity
import com.yidianling.consultant.R
import com.yidianling.consultant.adapter.SortAdapter
import com.yidianling.consultant.layoutmanager.FlowLayoutManager
import com.yidianling.consultant.listener.OnCategoriesSelectedListener
import com.yidianling.consultant.model.bean.AllFilter
import com.yidianling.consultant.model.bean.ChildrenBean
import com.yidianling.consultant.ui.view.topView.EightCategoryView
import kotlinx.android.synthetic.main.consultant_ui_eight_category_popup_window.view.*
import kotlinx.android.synthetic.main.consultant_ui_subject_popup_window.view.*
import kotlinx.android.synthetic.main.consultant_ui_subject_popup_window.view.btnConfirm
import kotlinx.android.synthetic.main.consultant_ui_subject_popup_window.view.btn_reset
/**
* 主题弹窗
* Created by zqk on 17-9-15.
*/
class EightCategoryPopupWindow(context: Context, allFilter: AllFilter) :
PopupWindow(ViewGroup.LayoutParams.MATCH_PARENT, RxImageTool.dp2px(566f)) {
private var view: View = LayoutInflater.from(context)
.inflate(R.layout.consultant_ui_eight_category_popup_window, null)
var mAllFilter: AllFilter
private var context: Context
var onSubjectsSelectedListener: OnCategoriesSelectedListener? = null
lateinit var mutableList: MutableList<MutableList<ChildrenBean>>
private val signList = ArrayList<String>() // 用于埋点
init {
this.contentView = view
this.isFocusable = true
this.context = context
@Suppress("DEPRECATION")
this.setBackgroundDrawable(BitmapDrawable())
this.isOutsideTouchable = true
mAllFilter = allFilter
initView()
}
fun setListener(onSubjectsSelectedListener: OnCategoriesSelectedListener) {
this.onSubjectsSelectedListener = onSubjectsSelectedListener
val eightCategoryView = EightCategoryView(context)
eightCategoryView.setData(mutableList, mAllFilter, onSubjectsSelectedListener)
view.eight_category_fl.addView(eightCategoryView)
}
private fun initView() {
inputMethodMode = INPUT_METHOD_NEEDED
mutableList = mutableListOf<MutableList<ChildrenBean>>()
mutableList.add(mAllFilter.childList)
mutableList.add(mAllFilter.stressList)
mutableList.add(mAllFilter.loveEmotionList)
mutableList.add(mAllFilter.marriedFamilyList)
mutableList.add(mAllFilter.personalGrowthList)
mutableList.add(mAllFilter.interpersonalRelationshipList)
mutableList.add(mAllFilter.careerDevelopmentList)
mutableList.add(mAllFilter.mentalHealthList)
// val fragmentTransaction = context?.asFragmentActivity()?.supportFragmentManager?.beginTransaction()
// val searchFragment=ConsultCategoryFragment()
// fragmentTransaction?.add(R.id.eight_category_fl,searchFragment)?.commit()
}
}
\ No newline at end of file
package com.yidianling.consultant.ui.view.topView
import android.content.Context
import android.util.AttributeSet
import android.util.Log
import android.view.View
import android.view.ViewGroup
import android.widget.LinearLayout
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import com.yidianling.common.tools.LogUtil
import com.yidianling.common.tools.RxImageTool
import com.yidianling.consultant.R
import com.yidianling.consultant.adapter.CategoryDetailAdapter
import com.yidianling.consultant.adapter.EightCategoryAdapter
import com.yidianling.consultant.listener.OnCategoriesSelectedListener
import com.yidianling.consultant.model.bean.AllFilter
import com.yidianling.consultant.model.bean.ChildrenBean
import com.yidianling.consultant.model.bean.EightCategoryBean
import kotlinx.android.synthetic.main.consultant_expert_search_big_shot_one.view.*
import kotlinx.android.synthetic.main.consultant_layout_category_view.*
import kotlinx.android.synthetic.main.consultant_layout_category_view.view.*
class EightCategoryView : LinearLayout, CategoryDetailAdapter.OutAdapterClicklistener,
EightCategoryAdapter.OnLeftClickListener {
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 var mutableList: MutableList<MutableList<ChildrenBean>>? = null
private lateinit var mAllfilter: AllFilter
private var eightCategoryListBean = mutableListOf(
EightCategoryBean("亲子教育", false, false, false),
EightCategoryBean("情绪压力", false, false, false),
EightCategoryBean("恋爱情感", false, false, false),
EightCategoryBean("婚姻家庭", false, false, false),
EightCategoryBean("个人成长", false, false, false),
EightCategoryBean("人际关系", false, false, false),
EightCategoryBean("职场发展", false, false, false),
EightCategoryBean("心理健康", false, false, false)
)
private lateinit var eightCategoryAdapter: EightCategoryAdapter
private lateinit var categoryRightAdapter: CategoryDetailAdapter
private val signList = ArrayList<String>() // 用于埋点
var onSubjectsSelectedListener: OnCategoriesSelectedListener? = null
var isDrag = false
private fun initView() {
layoutParams = LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT,
RxImageTool.dp2px(466f)
)
View.inflate(mContext, R.layout.consultant_layout_category_view, this)
// 重置
btn_reset.setOnClickListener {
reset()
}
// 确定
btnConfirm.setOnClickListener {
onSubjectsSelectedListener?.onCategoriesSelected(signList)
}
}
fun reset() {
mutableList?.forEachIndexed { index, mutableList ->
mutableList.forEachIndexed { index, childrenBean ->
childrenBean.isSelected = false
}
}
mAllfilter.categoryId2List.clear()
mAllfilter.categoryId3List.clear()
signList.clear()
eightCategoryAdapter.notifyDataSetChanged()
categoryRightAdapter.notifyDataSetChanged()
}
fun setData(
mutableList: MutableList<MutableList<ChildrenBean>>,
mAllFilter: AllFilter,
onSubjectsSelectedListener: OnCategoriesSelectedListener
) {
this.mutableList = mutableList
this.mAllfilter = mAllFilter
this.onSubjectsSelectedListener = onSubjectsSelectedListener
eightCategoryAdapter = mContext?.let { EightCategoryAdapter(it, eightCategoryListBean) }!!
eightCategoryAdapter.setleftClick(this)
eight_category.layoutManager = LinearLayoutManager(mContext)
eight_category.adapter = eightCategoryAdapter
categoryRightAdapter = CategoryDetailAdapter(mContext!!, mutableList, eightCategoryListBean)
val manager = LinearLayoutManager(mContext)
category_detail.layoutManager = manager
category_detail.adapter = categoryRightAdapter
categoryRightAdapter.setOutClicklistener(this)
category_detail.setOnScrollListener(object : RecyclerView.OnScrollListener() {
override fun onScrollStateChanged(recyclerView: RecyclerView, newState: Int) {
super.onScrollStateChanged(recyclerView, newState)
if (newState == RecyclerView.SCROLL_STATE_DRAGGING) {
isDrag = false
}
}
override fun onScrolled(recyclerView: RecyclerView, dx: Int, dy: Int) {
super.onScrolled(recyclerView, dx, dy)
if (!isDrag) {
var firstVisibleItem: Int = manager.findFirstVisibleItemPosition()
eightCategoryListBean.forEachIndexed { index, eightCategoryBean ->
eightCategoryListBean[index].selected = index == firstVisibleItem
}
eightCategoryAdapter.notifyDataSetChanged()
}
}
})
}
override fun outAdapterClick(outPosition: Int, inPosition: Int) {
//之前的老数据多选分类页。
if (inPosition == 0) {
if (mutableList?.get(outPosition)?.get(0)?.isSelected!!) {
mutableList?.get(outPosition)?.get(0)?.isSelected = false
mAllfilter.categoryId2List.remove(mutableList?.get(outPosition)?.get(0)?.cate_id)
signList.remove(eightCategoryListBean[outPosition].string)
} else {
mutableList?.get(outPosition)?.forEachIndexed { index, _ ->
mutableList?.get(outPosition)?.get(index)?.isSelected = index == 0
if (index == 0) {
mutableList?.get(outPosition)?.get(0)?.cate_id?.let {
mAllfilter.categoryId2List.add(
it
)
}
signList.add(eightCategoryListBean[outPosition].string)
} else {
mAllfilter.categoryId3List.remove(
mutableList?.get(outPosition)?.get(index)?.cate_id
)
signList.remove(mutableList?.get(outPosition)?.get(index)?.cate_name)
}
}
}
} else {
if (!mutableList?.get(outPosition)?.get(inPosition)?.isSelected!! && mutableList?.get(
outPosition
)?.get(0)?.isSelected!!
) {
mutableList?.get(outPosition)?.get(0)?.isSelected = false
mAllfilter.categoryId2List.remove(mutableList?.get(outPosition)?.get(0)?.cate_id)
signList.remove(eightCategoryListBean[outPosition].string)
}
mutableList?.get(outPosition)?.get(inPosition)?.isSelected =
!mutableList?.get(outPosition)?.get(inPosition)?.isSelected!!
if (mutableList?.get(outPosition)?.get(inPosition)?.isSelected!!) {
mutableList?.get(outPosition)?.get(inPosition)?.cate_id?.let {
mAllfilter.categoryId3List.add(
it
)
}
mutableList?.get(outPosition)?.get(inPosition)?.cate_name?.let { signList.add(it) }
} else {
mAllfilter.categoryId3List.remove(
mutableList?.get(outPosition)?.get(inPosition)?.cate_id
)
signList.remove(mutableList?.get(outPosition)?.get(inPosition)?.cate_name)
}
}
mutableList?.forEachIndexed { index, mutableList ->
eightCategoryListBean.get(index).hasData = false
mutableList.forEachIndexed { indexin, childrenBean ->
if (childrenBean.isSelected) {
eightCategoryListBean.get(index).hasData = true
return@forEachIndexed
}
}
}
eightCategoryAdapter.notifyDataSetChanged()
categoryRightAdapter.notifyDataSetChanged()
}
override fun onLeftClick(leftPosition: Int) {
eightCategoryListBean.forEachIndexed { index, eightCategoryBean ->
eightCategoryListBean[index].selected = index == leftPosition
}
eightCategoryAdapter.notifyDataSetChanged()
isDrag = true
category_detail.scrollToPosition(leftPosition)
}
}
\ No newline at end of file
......@@ -2,12 +2,57 @@
<LinearLayout 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:ignore="MissingDefaultResource">
android:layout_height="wrap_content"
android:background="@color/white"
android:orientation="vertical">
<androidx.recyclerview.widget.RecyclerView
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="400dp">
</androidx.recyclerview.widget.RecyclerView>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/eight_category"
android:layout_width="90dp"
android:layout_height="wrap_content"
android:orientation="vertical"></androidx.recyclerview.widget.RecyclerView>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/category_detail"
android:layout_width="match_parent"
android:layout_height="wrap_content"></androidx.recyclerview.widget.RecyclerView>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="68dp"
android:background="@color/white"
android:orientation="horizontal"
android:paddingStart="16dp"
android:paddingTop="8dp"
android:paddingEnd="16dp">
<TextView
android:id="@+id/btn_reset"
android:layout_width="0dp"
android:layout_height="44dp"
android:layout_weight="1"
android:background="@drawable/consultant_stroke_ebebeb_r_8"
android:gravity="center"
android:text="@string/platform_reset"
android:textColor="@color/platform_color_242424"
android:textSize="16sp" />
<TextView
android:id="@+id/btnConfirm"
android:layout_width="0dp"
android:layout_height="44dp"
android:layout_marginStart="13dp"
android:layout_weight="1"
android:background="@drawable/consultant_solid_main_theme_color_r_8"
android:gravity="center"
android:text="@string/platform_confirm"
android:textColor="@color/white"
android:textSize="16sp" />
</LinearLayout>
</LinearLayout>
\ No newline at end of file
<?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">
<LinearLayout
android:id="@+id/eight_category_fl"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" />
</LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/category_name_detail"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginRight="@dimen/platform_dp_5"
android:layout_marginBottom="@dimen/platform_dp_5"
android:background="@drawable/consult_price_expert_unseleted"
android:gravity="center"
android:minHeight="@dimen/platform_dp_40"
android:paddingStart="@dimen/platform_dp_18"
android:paddingTop="@dimen/platform_dp_6"
android:paddingRight="@dimen/platform_dp_18"
android:paddingBottom="@dimen/platform_dp_6"
android:textColor="@color/platform_color_333333"
android:textSize="@dimen/platform_sp_12"
tools:text="aaaaaaaaa">
</TextView>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/platform_dp_12"
android:layout_marginEnd="@dimen/platform_dp_12"
android:orientation="vertical"
android:paddingTop="@dimen/platform_dp_6"
android:paddingBottom="@dimen/platform_dp_6">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/platform_dp_12"
android:gravity="center">
<TextView
android:id="@+id/category_name"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="恋爱情感"
android:textColor="#1c212d"
android:textSize="@dimen/sp_14"></TextView>
<TextView
android:id="@+id/collapse_hide"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:includeFontPadding="false"
android:padding="@dimen/platform_dp_5"
android:text="展开"
android:textColor="@color/platform_main_theme"
android:textSize="@dimen/platform_sp_12"></TextView>
<ImageView
android:id="@+id/arrow_collapse_hide"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/consult_collapse_arrow">
</ImageView>
</LinearLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/category_list_detail"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
app:layoutManager="androidx.recyclerview.widget.GridLayoutManager"
app:spanCount="3">
</androidx.recyclerview.widget.RecyclerView>
</LinearLayout>
\ No newline at end of file
<?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:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal">
<View
android:id="@+id/single_selected_tag"
android:layout_width="3dp"
android:layout_height="@dimen/platform_dp_20"
android:background="@color/platform_main_theme"
android:visibility="gone"></View>
<ImageView
android:id="@+id/multiple_choise"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/alert_selected"
android:backgroundTint="@color/platform_main_theme"
android:visibility="gone">
</ImageView>
<TextView
android:id="@+id/eight_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/platform_dp_3"
android:layout_marginTop="@dimen/platform_dp_15"
android:layout_marginBottom="@dimen/platform_dp_15"
android:textColor="@color/color_242424"
android:textSize="@dimen/sp_14"
tools:text="情绪压力">
</TextView>
</LinearLayout>
\ No newline at end of file
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