refactor(home): 重构首页健康银行入口及 URL 环境配置
- 移除健康银行 H5 入口的环境限制,统一适配测试与生产环境 - 新增 getBankH5Url() 方法,按环境分别返回对应 H5 地址 - 将 selectDoctorRecommendHome() 移至登录状态判断内,避免未登录时发起无效请求 - 重构首页头部布局,改为双图片 + 渐变背景的组合方式 - 新增 home_head_img1/2 图片资源 - 删除废弃的 UrlH5RouteUtils 工具类 - 清理 UrlConfig 中大量废弃注释代码
This commit is contained in:
@@ -172,25 +172,23 @@ class HomeFragment :
|
|||||||
}
|
}
|
||||||
|
|
||||||
R.id.home_head_tab4 -> {
|
R.id.home_head_tab4 -> {
|
||||||
if (UrlConfig.baseUrlType == UrlConfig.BaseUrlType.TEST) {
|
if (DataStoreManager.isLogin()) {
|
||||||
if (DataStoreManager.isLogin()) {
|
val value = mViewModel.enCryptInfoUrl.value
|
||||||
val value = mViewModel.enCryptInfoUrl.value
|
if (TextUtils.isEmpty(value)) {
|
||||||
if (TextUtils.isEmpty(value)) {
|
mViewModel.getSysEnCryptInfo(UrlConfig.getHomeBankH5Url())
|
||||||
mViewModel.getSysEnCryptInfo(UrlConfig.getHomeBankH5Url())
|
showToast("网络错误")
|
||||||
showToast("网络错误")
|
return
|
||||||
return
|
|
||||||
}
|
|
||||||
requireContext().startWebActivity(UrlConfig.HOME_BANK_H5+"?param="+ value,isFull=true,myTitle = "健康银行",hideStatus=true)
|
|
||||||
} else {
|
|
||||||
startLoginActivity(requireContext())
|
|
||||||
}
|
}
|
||||||
return
|
requireContext().startWebActivity(
|
||||||
|
UrlConfig.getBankH5Url()+ "?param=" + value,
|
||||||
|
isFull = true,
|
||||||
|
myTitle = "健康银行",
|
||||||
|
hideStatus = true
|
||||||
|
)
|
||||||
|
} else {
|
||||||
|
startLoginActivity(requireContext())
|
||||||
}
|
}
|
||||||
|
|
||||||
val bundle = Bundle()
|
|
||||||
bundle.putString("title", "健康银行")
|
|
||||||
toActivity(EmptyActivity::class.java, bundle)
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -356,10 +354,10 @@ class HomeFragment :
|
|||||||
|
|
||||||
override fun initData() {
|
override fun initData() {
|
||||||
mViewModel.getHomeBannerList()
|
mViewModel.getHomeBannerList()
|
||||||
mViewModel.selectDoctorRecommendHome()
|
|
||||||
|
|
||||||
if (DataStoreManager.isLogin()) {
|
if (DataStoreManager.isLogin()) {
|
||||||
homeNoticeStartRepeat()
|
homeNoticeStartRepeat()
|
||||||
|
mViewModel.selectDoctorRecommendHome()
|
||||||
mViewModel.getHomeWatchInfo(DataStoreManager.getUserId())
|
mViewModel.getHomeWatchInfo(DataStoreManager.getUserId())
|
||||||
mViewModel.getSysEnCryptInfo(UrlConfig.getHomeBankH5Url())
|
mViewModel.getSysEnCryptInfo(UrlConfig.getHomeBankH5Url())
|
||||||
}
|
}
|
||||||
@@ -385,6 +383,7 @@ class HomeFragment :
|
|||||||
}
|
}
|
||||||
if (DataStoreManager.isLogin()) {
|
if (DataStoreManager.isLogin()) {
|
||||||
mViewModel.getHomeNoticeListRepeat()
|
mViewModel.getHomeNoticeListRepeat()
|
||||||
|
mViewModel.selectDoctorRecommendHome()
|
||||||
mViewModel.getHomeWatchInfo(DataStoreManager.getUserId())
|
mViewModel.getHomeWatchInfo(DataStoreManager.getUserId())
|
||||||
mViewModel.getSysEnCryptInfo(UrlConfig.getHomeBankH5Url())
|
mViewModel.getSysEnCryptInfo(UrlConfig.getHomeBankH5Url())
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
package com.xjjk.healthyclients.retrofit
|
package com.xjjk.healthyclients.retrofit
|
||||||
|
|
||||||
import com.sw.healthyclients.data.local.DataStoreManager
|
import com.sw.healthyclients.data.local.DataStoreManager
|
||||||
import com.xjjk.healthyclients.utils.UrlH5RouteUtils
|
|
||||||
import okhttp3.HttpUrl.Companion.toHttpUrl
|
import okhttp3.HttpUrl.Companion.toHttpUrl
|
||||||
|
|
||||||
object UrlConfig {
|
object UrlConfig {
|
||||||
@@ -28,7 +27,9 @@ object UrlConfig {
|
|||||||
|
|
||||||
// 安眼修改密码
|
// 安眼修改密码
|
||||||
const val ANYAN_CHANGE_PASSWORD_H5 = "https://sso.iosp.ydpt.tech/SSOManageClient/userController/changePassword"
|
const val ANYAN_CHANGE_PASSWORD_H5 = "https://sso.iosp.ydpt.tech/SSOManageClient/userController/changePassword"
|
||||||
const val HOME_BANK_H5 = "https://gstest.superwx.cn/healthbank/index.html"
|
|
||||||
|
private const val TEST_HOME_BANK_H5 = "https://gstest.superwx.cn/healthbank/index.html"
|
||||||
|
private const val PRODUCT_HOME_BANK_H5 = "https://console-jkglpt.iosp.ydpt.tech/hb/healthweb/index.html"
|
||||||
|
|
||||||
|
|
||||||
val baseUrlType: BaseUrlType = BaseUrlType.PRODUCT
|
val baseUrlType: BaseUrlType = BaseUrlType.PRODUCT
|
||||||
@@ -71,6 +72,17 @@ object UrlConfig {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun getBankH5Url(baseUrlType: BaseUrlType = BaseUrlType.PRODUCT): String {
|
||||||
|
return when (baseUrlType) {
|
||||||
|
BaseUrlType.DEBUG, BaseUrlType.TEST-> {
|
||||||
|
TEST_HOME_BANK_H5
|
||||||
|
}
|
||||||
|
BaseUrlType.PRODUCT -> {
|
||||||
|
PRODUCT_HOME_BANK_H5
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* 方便后续加一些其他逻辑
|
* 方便后续加一些其他逻辑
|
||||||
*/
|
*/
|
||||||
@@ -111,67 +123,26 @@ object UrlConfig {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun urlReplace(): String {
|
||||||
|
return getDefaultBaseUrl().replace("http://", "")
|
||||||
|
.replace("https://", "")
|
||||||
|
.replace("/", "")
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取评估报告模块地址
|
|
||||||
* @param type 0,健康风险 1,心理评估
|
|
||||||
*/
|
|
||||||
|
|
||||||
// fun getEvaluationReportUrl(type: Int): String {
|
|
||||||
// var httpUrl = getDefaultBaseUrl().toHttpUrl()
|
|
||||||
// return getH5Url() +
|
|
||||||
// "/?scheme=" + httpUrl.scheme +
|
|
||||||
// "&host=" + httpUrl.host +
|
|
||||||
// "&mobile=0" +
|
|
||||||
// "&tokenF=" + DataStoreManager.getToken() +
|
|
||||||
// "&type=" + type
|
|
||||||
// }
|
|
||||||
fun getKnowledgeDetailUrl(@UrlH5RouteUtils.RouteType routeType: String, map: MutableMap<String, Any?> = mutableMapOf()):String{
|
|
||||||
// return "http://192.168.1.22:9000/#/rich-text?id=sacsacasc&value=123132132"
|
|
||||||
var params=""
|
|
||||||
map.mapKeys {
|
|
||||||
params += "&${it.key}=${it.value}"
|
|
||||||
}
|
|
||||||
var httpUrl = getDefaultBaseUrl().toHttpUrl()
|
|
||||||
return getH5Url() + "/" +routeType+
|
|
||||||
"?scheme=" + httpUrl.scheme +
|
|
||||||
"&host=" + httpUrl.host +
|
|
||||||
"&tokenF=" + DataStoreManager.getToken() +
|
|
||||||
params
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
// fun getKnowledgeDetailUrl(@UrlH5RouteUtils.RouteType routeType: String, map: MutableMap<String, Any?> = mutableMapOf()):String{
|
||||||
* 获取健康干预-膳食 接口地址
|
//// return "http://192.168.1.22:9000/#/rich-text?id=sacsacasc&value=123132132"
|
||||||
*/
|
// var params=""
|
||||||
// fun getInterventionFoodUrl():String {
|
// map.mapKeys {
|
||||||
// return when (baseUrlType) {
|
// params += "&${it.key}=${it.value}"
|
||||||
// BaseUrlType.DEBUG,BaseUrlType.TEST -> {
|
|
||||||
// "https://vip.shuziweidao.com"
|
|
||||||
// }
|
|
||||||
// BaseUrlType.PRODUCT -> {
|
|
||||||
// "https://yyjk.shuziweidao.com/"
|
|
||||||
// }
|
|
||||||
// }
|
// }
|
||||||
|
// var httpUrl = getDefaultBaseUrl().toHttpUrl()
|
||||||
|
// return getH5Url() + "/" +routeType+
|
||||||
|
// "?scheme=" + httpUrl.scheme +
|
||||||
|
// "&host=" + httpUrl.host +
|
||||||
|
// "&tokenF=" + DataStoreManager.getToken() +
|
||||||
|
// params
|
||||||
// }
|
// }
|
||||||
|
|
||||||
/**
|
|
||||||
* H5访问地址
|
|
||||||
*/
|
|
||||||
fun getH5PdfUrl(): String {
|
|
||||||
// https://jkgy.wcrcnet.cn/static/mobile/indexSon?
|
|
||||||
// // scheme=http
|
|
||||||
// // s&host=jkgy.wcrcnet.cn
|
|
||||||
// // &hostAfter=gateway
|
|
||||||
// // &pdfUrl=temp/20240530/AED%E4%BD%BF%E7%94%A8.pdf_1717056401896.pdf
|
|
||||||
|
|
||||||
val baseUrl = getH5BaseUrl(baseUrlType) + "/static/mobile/indexSon?"
|
|
||||||
var httpUrl = getDefaultBaseUrl().toHttpUrl()
|
|
||||||
return baseUrl +
|
|
||||||
"scheme=" + httpUrl.scheme +
|
|
||||||
"&host=" + httpUrl.host +
|
|
||||||
"&title=" + "文件详情" +
|
|
||||||
"&pdfUrl="
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,190 +0,0 @@
|
|||||||
package com.xjjk.healthyclients.utils
|
|
||||||
|
|
||||||
import androidx.annotation.StringDef
|
|
||||||
|
|
||||||
object UrlH5RouteUtils {
|
|
||||||
/**
|
|
||||||
* 知识库文章详情
|
|
||||||
*/
|
|
||||||
const val RICH_TEXT = "knowledge-page"
|
|
||||||
/**
|
|
||||||
* 岗位健康详情页
|
|
||||||
*/
|
|
||||||
const val JOBDETAILS = "jobDetails"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 知识库健-康答题
|
|
||||||
*/
|
|
||||||
const val HEALTH_QUESTION = "mergeQuestion/physical-questions"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 知识库答题记录
|
|
||||||
*/
|
|
||||||
const val ANSWER_RECORDSLIST = "answer-recordsList"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 膳食-慢病预警测评结果
|
|
||||||
*/
|
|
||||||
const val DISEASE_ASSESSMENT_RESULT = "disease-assessment-result"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 膳食-体重管理
|
|
||||||
*/
|
|
||||||
const val FOOD_OVERWEIGHT_INTERVENTION = "overweightIntervention"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 运动-运动平台
|
|
||||||
*/
|
|
||||||
const val SPORT_PLATFORM = "sports-platform"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 运动-运动排名
|
|
||||||
*/
|
|
||||||
const val SPORT_RANKING = "sport-ranking"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 步数
|
|
||||||
*/
|
|
||||||
const val STEP_STATISTICS = "step-statistics"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 心理-心理评估
|
|
||||||
*/
|
|
||||||
const val MENTAL_PSYCHOLOGICAL_ASSESSMENT = "assessment-home"
|
|
||||||
/**
|
|
||||||
* 心理-心理评估-基础信息basic-information
|
|
||||||
*/
|
|
||||||
const val MENTAL_PSYCHOLOGICAL_ASSESSMENT_BASIC_INFORMATION = "basic-information"
|
|
||||||
/**
|
|
||||||
* 心理-心理评估-测评模式self-evaluation
|
|
||||||
*/
|
|
||||||
const val MENTAL_PSYCHOLOGICAL_ASSESSMENT_SELF_EVALUATION = "self-evaluation"
|
|
||||||
/**
|
|
||||||
* 心理-知识答题-答题模式
|
|
||||||
*/
|
|
||||||
const val MENTAL_KNOWLEDGE_CHOOSE_TOPIC = "choose-topic"
|
|
||||||
/**
|
|
||||||
* 心理-心理评估-测评历史reportHistory
|
|
||||||
*/
|
|
||||||
const val MENTAL_PSYCHOLOGICAL_ASSESSMENT_REPORTHISTORY = "reportHistory"
|
|
||||||
/**
|
|
||||||
* 心理-知识答题-答题历史
|
|
||||||
*/
|
|
||||||
const val MENTAL_KNOWLEDGE_ANSWER_HISTORY = "answer-history"
|
|
||||||
/**
|
|
||||||
* 心理-心理评估-单位组织task
|
|
||||||
*/
|
|
||||||
const val MENTAL_PSYCHOLOGICAL_ASSESSMENT_TASK = "task"
|
|
||||||
/**
|
|
||||||
* 心理-知识答题-单位组织task
|
|
||||||
*/
|
|
||||||
const val MENTAL_KNOWLEDGE_TASK_TOPIC = "task-topic"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 心理-规律起居
|
|
||||||
*/
|
|
||||||
const val MENTAL_REGULAR_LIVING = "livingIndependent"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 糖尿病-血糖监测
|
|
||||||
*/
|
|
||||||
const val DIABETES_BLOOD_GLUCOSE_MONITORING = "bloodGlucose"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 糖尿病-信号预警
|
|
||||||
*/
|
|
||||||
const val DIABETES_SIGNAL_WARNING = "health"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 癌症-病因溯源
|
|
||||||
*/
|
|
||||||
const val CANCER_ETIOLOGICAL_TRACING = "etiological"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 癌症-免疫预警
|
|
||||||
*/
|
|
||||||
const val CANCER_IMMUNE_EARLY_WARNING = "immuneWarning"
|
|
||||||
/**
|
|
||||||
* 知识-体检可视化
|
|
||||||
*/
|
|
||||||
const val PHYSICAL_EXAMINATION_HOME = "physicalExaminationIndex"
|
|
||||||
/**
|
|
||||||
* 心血管-吃动平衡
|
|
||||||
*/
|
|
||||||
const val CARDIOVASCULAR_EATING_BALANCE = "healthIndependentC"
|
|
||||||
/**
|
|
||||||
* 随访记录详情
|
|
||||||
*/
|
|
||||||
const val INTERVENTION_FOLLOW = "follow"
|
|
||||||
/**
|
|
||||||
* 就诊记录详情
|
|
||||||
*/
|
|
||||||
const val INTERVENTION_TREATMENTDETAIL = "treatmentDetail"
|
|
||||||
/**
|
|
||||||
* 急救培训开始答题
|
|
||||||
*/
|
|
||||||
const val HEALTH_ANSWER = "mergeQuestion/physical-answer"
|
|
||||||
/**
|
|
||||||
* 癌症-信号预判
|
|
||||||
*/
|
|
||||||
const val CANCER_SIGNAL_PREDICTION = "mergeQuestion/home-prediction"
|
|
||||||
/**
|
|
||||||
* 癌症-免疫预警
|
|
||||||
*/
|
|
||||||
const val INTERVENTION_IMMUNE_WARNING = "mergeQuestion/immune-warning"
|
|
||||||
/**
|
|
||||||
* 病因溯源填写问卷
|
|
||||||
*/
|
|
||||||
const val IMAGE_TRACEABILITY = "mergeQuestion/image-traceability"
|
|
||||||
/**
|
|
||||||
* 急救培训答题回顾
|
|
||||||
*/
|
|
||||||
const val HEALTH_ANSWER_REVIEW = "mergeQuestion/physical-review"
|
|
||||||
/**
|
|
||||||
* 吃动平衡问卷调查
|
|
||||||
*/
|
|
||||||
const val Eating_ANSWER_REVIEW = "mergeQuestion/eating-balance"
|
|
||||||
/**
|
|
||||||
* 心理知识答题-知识详情
|
|
||||||
*/
|
|
||||||
const val KNOWLEDGE_DETAIL = "knowledge-detail"
|
|
||||||
/**
|
|
||||||
* 心血管-防范心梗问卷
|
|
||||||
*/
|
|
||||||
const val HEART_ATTACK = "heart-attack"
|
|
||||||
/**
|
|
||||||
* 心血管-风险详情
|
|
||||||
*/
|
|
||||||
const val HEART_FACTORS = "heart-factors"
|
|
||||||
|
|
||||||
|
|
||||||
@Target(AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.FIELD, AnnotationTarget.FUNCTION)
|
|
||||||
@MustBeDocumented
|
|
||||||
@StringDef(
|
|
||||||
RICH_TEXT,
|
|
||||||
JOBDETAILS, HEALTH_QUESTION, ANSWER_RECORDSLIST, DISEASE_ASSESSMENT_RESULT,
|
|
||||||
SPORT_RANKING, STEP_STATISTICS, MENTAL_PSYCHOLOGICAL_ASSESSMENT, SPORT_PLATFORM, MENTAL_REGULAR_LIVING,
|
|
||||||
DIABETES_BLOOD_GLUCOSE_MONITORING, DIABETES_SIGNAL_WARNING, CANCER_ETIOLOGICAL_TRACING,
|
|
||||||
CANCER_IMMUNE_EARLY_WARNING, FOOD_OVERWEIGHT_INTERVENTION, PHYSICAL_EXAMINATION_HOME,
|
|
||||||
CARDIOVASCULAR_EATING_BALANCE,
|
|
||||||
INTERVENTION_FOLLOW,
|
|
||||||
INTERVENTION_TREATMENTDETAIL,
|
|
||||||
HEALTH_ANSWER,
|
|
||||||
CANCER_SIGNAL_PREDICTION,
|
|
||||||
INTERVENTION_IMMUNE_WARNING,
|
|
||||||
IMAGE_TRACEABILITY,
|
|
||||||
HEALTH_ANSWER_REVIEW,
|
|
||||||
Eating_ANSWER_REVIEW
|
|
||||||
,
|
|
||||||
INTERVENTION_TREATMENTDETAIL,
|
|
||||||
MENTAL_PSYCHOLOGICAL_ASSESSMENT_BASIC_INFORMATION,
|
|
||||||
MENTAL_PSYCHOLOGICAL_ASSESSMENT_SELF_EVALUATION,
|
|
||||||
MENTAL_PSYCHOLOGICAL_ASSESSMENT_REPORTHISTORY,
|
|
||||||
MENTAL_PSYCHOLOGICAL_ASSESSMENT_TASK,
|
|
||||||
KNOWLEDGE_DETAIL,MENTAL_KNOWLEDGE_CHOOSE_TOPIC,MENTAL_KNOWLEDGE_ANSWER_HISTORY,MENTAL_KNOWLEDGE_TASK_TOPIC,HEART_ATTACK,HEART_FACTORS
|
|
||||||
)
|
|
||||||
@kotlin.annotation.Retention(AnnotationRetention.SOURCE)
|
|
||||||
annotation class RouteType
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
@@ -26,26 +26,57 @@
|
|||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
android:paddingBottom="30dp">
|
android:paddingBottom="30dp">
|
||||||
|
|
||||||
<ImageView
|
<com.allen.library.shape.ShapeRelativeLayout
|
||||||
android:id="@+id/head_img"
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="450dp"
|
||||||
|
app:shapeGradientAngle="top_bottom"
|
||||||
|
app:shapeGradientCenterColor="#3BBCB7"
|
||||||
|
app:shapeGradientEndColor="#FFFFFF"
|
||||||
|
app:shapeGradientStartColor="#22C8A0"/>
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:adjustViewBounds="true"
|
android:layout_marginTop="45dp">
|
||||||
android:scaleType="fitXY"
|
|
||||||
android:src="@drawable/icon_home_head" />
|
<ImageView
|
||||||
|
android:layout_marginTop="20dp"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginLeft="15dp"
|
||||||
|
android:adjustViewBounds="true"
|
||||||
|
android:background="@mipmap/home_head_img1" />
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_alignParentRight="true"
|
||||||
|
android:layout_marginRight="15dp"
|
||||||
|
android:adjustViewBounds="true"
|
||||||
|
android:background="@mipmap/home_head_img2" />
|
||||||
|
|
||||||
|
</RelativeLayout>
|
||||||
|
|
||||||
|
<!-- <ImageView-->
|
||||||
|
<!-- android:id="@+id/head_img"-->
|
||||||
|
<!-- android:layout_width="match_parent"-->
|
||||||
|
<!-- android:layout_height="wrap_content"-->
|
||||||
|
<!-- android:adjustViewBounds="true"-->
|
||||||
|
<!-- android:scaleType="fitXY"-->
|
||||||
|
<!-- android:src="@drawable/icon_home_head" />-->
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_marginTop="130dp"
|
android:layout_marginTop="135dp"
|
||||||
android:orientation="vertical">
|
android:orientation="vertical">
|
||||||
|
|
||||||
<com.allen.library.shape.ShapeRelativeLayout
|
<com.allen.library.shape.ShapeRelativeLayout
|
||||||
android:visibility="gone"
|
|
||||||
android:id="@+id/layout_notice"
|
android:id="@+id/layout_notice"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="40dp"
|
android:layout_height="40dp"
|
||||||
android:layout_marginHorizontal="12dp"
|
android:layout_marginHorizontal="12dp"
|
||||||
|
android:visibility="gone"
|
||||||
app:shapeCornersRadius="8dp"
|
app:shapeCornersRadius="8dp"
|
||||||
app:shapeGradientAngle="top_bottom"
|
app:shapeGradientAngle="top_bottom"
|
||||||
app:shapeGradientEndColor="#F2FFFD"
|
app:shapeGradientEndColor="#F2FFFD"
|
||||||
@@ -111,10 +142,11 @@
|
|||||||
android:layout_height="60dp"
|
android:layout_height="60dp"
|
||||||
android:layout_marginHorizontal="12dp"
|
android:layout_marginHorizontal="12dp"
|
||||||
android:layout_marginTop="10dp" />
|
android:layout_marginTop="10dp" />
|
||||||
|
|
||||||
<com.xjjk.healthyclients.view.HomeWatchView
|
<com.xjjk.healthyclients.view.HomeWatchView
|
||||||
android:id="@+id/watch_view"
|
android:id="@+id/watch_view"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"/>
|
android:layout_height="wrap_content" />
|
||||||
|
|
||||||
<com.youth.banner.Banner
|
<com.youth.banner.Banner
|
||||||
android:id="@+id/banner3"
|
android:id="@+id/banner3"
|
||||||
|
|||||||
Binary file not shown.
|
After Width: | Height: | Size: 9.3 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 91 KiB |
Reference in New Issue
Block a user