Przeglądaj źródła

1.添加电视端项目首页

王鹏鹏 2 lat temu
rodzic
commit
7696544889

+ 5 - 0
baselib/src/main/java/com/yingyangfly/baselib/router/RouterUrlCommon.kt

@@ -210,6 +210,11 @@ object RouterUrlCommon {
      */
     const val bindingEvaluation = "/binding/evaluation"
 
+    /**
+     * 医院电视端
+     */
+    const val hospitalEvaluation = "/hospital/evaluation"
+
     /**
      * 测评报告
      */

+ 2 - 1
config.gradle

@@ -122,6 +122,7 @@ ext {
             "tbssdk"                   : 'com.tencent.tbs:tbssdk:44085',
             "lifecycle"                : 'androidx.lifecycle:lifecycle-common-java8:2.3.1',
             "chuckerteam_chucker"      : 'com.github.chuckerteam.chucker:library-no-op:3.5.2',
-            "MPAndroidChart"           : 'com.github.PhilJay:MPAndroidChart:v3.1.0'
+            "MPAndroidChart"           : 'com.github.PhilJay:MPAndroidChart:v3.1.0',
+            "banner"                   : "com.youth.banner:banner:2.1.0",
     ]
 }

+ 1 - 0
home/build.gradle

@@ -28,4 +28,5 @@ dependencies {
     implementation(rootProject.ext.dependencies.rxjava)
     implementation(rootProject.ext.dependencies.rxandroid)
     implementation(rootProject.ext.dependencies.rxkotlin)
+    implementation(rootProject.ext.dependencies.banner)
 }

+ 58 - 0
home/src/main/java/com/yingyangfly/home/hospital/GuidePageAdapter.java

@@ -0,0 +1,58 @@
+package com.yingyangfly.home.hospital;
+
+import android.content.Context;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.ImageView;
+
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.RecyclerView;
+
+import com.yingyang.home.R;
+import com.yingyangfly.baselib.utils.GlideImgUtil;
+import com.yingyangfly.baselib.utils.ViewTool;
+import com.youth.banner.adapter.BannerAdapter;
+
+import java.util.List;
+
+/**
+ * @author gold
+ * @date 2022/9/17 上午11:13
+ * @copyright (C) 2019-2022, XiaoLiu All Rights Reserved
+ * @description 轮播图适配器
+ */
+public class GuidePageAdapter extends BannerAdapter<String, GuidePageAdapter.HomeBannerHolder> {
+
+    private Context mContext;
+
+    public GuidePageAdapter(List<String> datas, Context mContext) {
+        this(datas);
+        this.mContext = mContext;
+    }
+
+    public GuidePageAdapter(List<String> datas) {
+        super(datas);
+    }
+
+    @Override
+    public HomeBannerHolder onCreateHolder(ViewGroup parent, int viewType) {
+        View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_guide, parent, false);
+        View views = ViewTool.inflateLayoutPixels(parent.getContext(), view, 1280, 1024);
+        return new HomeBannerHolder(views);
+    }
+
+    @Override
+    public void onBindView(HomeBannerHolder holder, String data, int position, int size) {
+        GlideImgUtil.loadImg(mContext, data, holder.img);
+    }
+
+    public class HomeBannerHolder extends RecyclerView.ViewHolder {
+        ImageView img;
+
+        public HomeBannerHolder(@NonNull View itemView) {
+            super(itemView);
+            img = itemView.findViewById(R.id.guideImage);
+        }
+    }
+}

+ 20 - 0
home/src/main/java/com/yingyangfly/home/hospital/HospitalActivity.kt

@@ -1,14 +1,34 @@
 package com.yingyangfly.home.hospital
 
+import com.alibaba.android.arouter.facade.annotation.Route
 import com.yingyang.home.databinding.ActivityHospitalBinding
 import com.yingyangfly.baselib.base.BaseTvActivity
+import com.yingyangfly.baselib.router.RouterUrlCommon
+import com.youth.banner.indicator.RectangleIndicator
 
 /**
  * 医院电视端首页
  */
+@Route(path = RouterUrlCommon.hospitalEvaluation)
 class HospitalActivity : BaseTvActivity<ActivityHospitalBinding>() {
 
+    private var str1 = "https://15463311.s21i.faiusr.com/4/ABUIABAEGAAgiOzT0AUo6vfflwQwgA84ggQ.png"
+    private var str2 =
+        "https://hbimg.b0.upaiyun.com/2540097570159b23e684f267ad6de80681e026f23e7f4-be6kp2_fw658"
+    private var str3 = "https://img.zcool.cn/community/0137015b23fd90a8012034f7594657.jpg@2o.jpg"
+    private var str4 =
+        "https://img0.baidu.com/it/u=4041408584,4001157003&fm=253&fmt=auto&app=138&f=JPEG"
+    private lateinit var adapterGuide: GuidePageAdapter
+    private var imageList = mutableListOf<String>()
+
     override fun initViews() {
+        imageList.add(str1)
+        imageList.add(str2)
+        imageList.add(str3)
+        imageList.add(str4)
+        adapterGuide = GuidePageAdapter(imageList, mContext)
+        binding.guide.addBannerLifecycleObserver(this)
+            ?.setAdapter(adapterGuide)?.indicator = RectangleIndicator(mContext)
 
     }
 

+ 21 - 0
home/src/main/res/drawable/bg_hospital_mmse_evaluation.xml

@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<layer-list xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    tools:ignore="ResourceName">
+
+    <item>
+        <shape android:shape="rectangle">
+            <corners android:radius="@dimen/divider_23px" />
+            <stroke
+                android:color="@color/color_FF1AA8FD"
+                android:dashWidth="@dimen/divider_6px" />
+            <gradient
+                android:angle="90"
+                android:endColor="@color/color_FF2B9DFF"
+                android:startColor="@color/color_FF15C6FF"
+                android:type="linear"
+                android:useLevel="true" />
+        </shape>
+    </item>
+
+</layer-list>

+ 21 - 0
home/src/main/res/drawable/bg_hospital_moca_evaluation.xml

@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<layer-list xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    tools:ignore="ResourceName">
+
+    <item>
+        <shape android:shape="rectangle">
+            <corners android:radius="@dimen/divider_23px" />
+            <stroke
+                android:color="@color/color_FFFFB872"
+                android:dashWidth="@dimen/divider_6px" />
+            <gradient
+                android:angle="90"
+                android:endColor="@color/color_FFFFE157"
+                android:startColor="@color/color_FFFFCB62"
+                android:type="linear"
+                android:useLevel="true" />
+        </shape>
+    </item>
+
+</layer-list>

+ 21 - 0
home/src/main/res/drawable/bg_other_evaluation.xml

@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<layer-list xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    tools:ignore="ResourceName">
+
+    <item>
+        <shape android:shape="rectangle">
+            <corners android:radius="@dimen/divider_40px" />
+            <stroke
+                android:color="@color/color_FFFF865F"
+                android:dashWidth="@dimen/divider_6px" />
+            <gradient
+                android:angle="90"
+                android:endColor="@color/color_FFFF6D57"
+                android:startColor="@color/color_FFFFAA62"
+                android:type="linear"
+                android:useLevel="true" />
+        </shape>
+    </item>
+
+</layer-list>

+ 10 - 0
home/src/main/res/drawable/bg_tv_home_title.xml

@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    tools:ignore="ResourceName">
+    <corners android:radius="@dimen/divider_32px" />
+    <solid android:color="@color/color_3378CCFF" />
+    <stroke
+        android:width="@dimen/divider_4px"
+        android:color="@color/color_FF6BB0FF" />
+</shape>

+ 166 - 2
home/src/main/res/layout/activity_hospital.xml

@@ -1,7 +1,8 @@
 <?xml version="1.0" encoding="utf-8"?>
 <layout 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">
+    xmlns:tools="http://schemas.android.com/tools"
+    tools:ignore="ResourceName">
 
     <androidx.constraintlayout.widget.ConstraintLayout
         android:layout_width="match_parent"
@@ -14,6 +15,7 @@
             android:layout_height="@dimen/divider_80px"
             android:layout_marginStart="@dimen/divider_47px"
             android:layout_marginTop="@dimen/divider_35px"
+            android:background="@mipmap/icon_hospital_logo"
             android:scaleType="centerInside"
             app:layout_constraintStart_toStartOf="parent"
             app:layout_constraintTop_toTopOf="parent" />
@@ -30,7 +32,6 @@
             app:layout_constraintStart_toEndOf="@+id/hospitalImage"
             app:layout_constraintTop_toTopOf="parent" />
 
-
         <LinearLayout
             android:id="@+id/loginOutLayout"
             android:layout_width="wrap_content"
@@ -61,6 +62,169 @@
                 android:textStyle="bold" />
         </LinearLayout>
 
+        <com.youth.banner.Banner
+            android:id="@+id/guide"
+            android:layout_width="match_parent"
+            android:layout_height="@dimen/divider_307px"
+            android:layout_marginStart="@dimen/divider_89px"
+            android:layout_marginTop="@dimen/divider_29px"
+            android:layout_marginEnd="@dimen/divider_73px"
+            app:banner_indicator_normal_color="@color/color_A1FFFFFF"
+            app:banner_indicator_normal_width="@dimen/divider_13px"
+            app:banner_indicator_selected_color="@android:color/white"
+            app:banner_indicator_selected_width="@dimen/divider_13px"
+            app:banner_infinite_loop="true"
+            app:banner_loop_time="3000"
+            app:banner_radius="0dp"
+            app:layout_constraintEnd_toEndOf="parent"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toBottomOf="@+id/hospitalImage" />
+
+        <LinearLayout
+            android:id="@+id/searchLayout"
+            android:layout_width="match_parent"
+            android:layout_height="@dimen/divider_109px"
+            android:layout_marginStart="@dimen/divider_89px"
+            android:layout_marginTop="@dimen/divider_35px"
+            android:layout_marginEnd="@dimen/divider_73px"
+            android:background="@drawable/bg_tv_home_title"
+            android:gravity="center"
+            app:layout_constraintEnd_toEndOf="parent"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toBottomOf="@+id/guide">
+
+            <androidx.appcompat.widget.AppCompatImageView
+                android:layout_width="@dimen/divider_48px"
+                android:layout_height="@dimen/divider_48px"
+                android:background="@mipmap/icon_evaluation_search"
+                android:scaleType="centerInside" />
+
+            <androidx.appcompat.widget.AppCompatTextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginStart="@dimen/divider_16px"
+                android:text="@string/report_query"
+                android:textColor="@android:color/white"
+                android:textSize="@dimen/divider_40px"
+                android:textStyle="bold" />
+
+        </LinearLayout>
+
+        <LinearLayout
+            android:id="@+id/otherEvaluationsLayout"
+            android:layout_width="@dimen/divider_535px"
+            android:layout_height="@dimen/divider_285px"
+            android:layout_marginStart="@dimen/divider_89px"
+            android:layout_marginTop="@dimen/divider_33px"
+            android:background="@drawable/bg_other_evaluation"
+            android:gravity="center_horizontal"
+            android:orientation="vertical"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toBottomOf="@+id/searchLayout">
+
+            <androidx.appcompat.widget.AppCompatImageView
+                android:layout_width="@dimen/divider_133px"
+                android:layout_height="@dimen/divider_133px"
+                android:layout_marginTop="@dimen/divider_36px"
+                android:background="@mipmap/icon_other_evaluations"
+                android:scaleType="centerInside" />
+
+            <androidx.appcompat.widget.AppCompatTextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="@dimen/divider_16px"
+                android:text="@string/other_evaluations"
+                android:textColor="@android:color/white"
+                android:textSize="@dimen/divider_42px"
+                android:textStyle="bold" />
+
+        </LinearLayout>
+
+        <LinearLayout
+            android:id="@+id/mocaLayout"
+            android:layout_width="0dp"
+            android:layout_height="@dimen/divider_127px"
+            android:layout_marginStart="@dimen/divider_33px"
+            android:layout_marginTop="@dimen/divider_33px"
+            android:layout_marginEnd="@dimen/divider_75px"
+            android:background="@drawable/bg_hospital_moca_evaluation"
+            android:gravity="center"
+            android:orientation="horizontal"
+            app:layout_constraintEnd_toEndOf="parent"
+            app:layout_constraintStart_toEndOf="@+id/otherEvaluationsLayout"
+            app:layout_constraintTop_toBottomOf="@+id/searchLayout">
+
+            <androidx.appcompat.widget.AppCompatImageView
+                android:layout_width="@dimen/divider_81px"
+                android:layout_height="@dimen/divider_81px"
+                android:background="@mipmap/icon_moca"
+                android:scaleType="centerInside" />
+
+            <androidx.appcompat.widget.AppCompatTextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginStart="@dimen/divider_15px"
+                android:text="@string/moca_evaluation"
+                android:textColor="@android:color/white"
+                android:textSize="@dimen/divider_42px"
+                android:textStyle="bold" />
+
+        </LinearLayout>
+
+        <LinearLayout
+            android:id="@+id/mmseLayout"
+            android:layout_width="0dp"
+            android:layout_height="@dimen/divider_127px"
+            android:layout_marginStart="@dimen/divider_33px"
+            android:layout_marginTop="@dimen/divider_31px"
+            android:layout_marginEnd="@dimen/divider_75px"
+            android:background="@drawable/bg_hospital_mmse_evaluation"
+            android:gravity="center"
+            android:orientation="horizontal"
+            app:layout_constraintEnd_toEndOf="parent"
+            app:layout_constraintStart_toEndOf="@+id/otherEvaluationsLayout"
+            app:layout_constraintTop_toBottomOf="@+id/mocaLayout">
+
+            <androidx.appcompat.widget.AppCompatImageView
+                android:layout_width="@dimen/divider_81px"
+                android:layout_height="@dimen/divider_81px"
+                android:background="@mipmap/icon_mmse"
+                android:scaleType="centerInside" />
+
+            <androidx.appcompat.widget.AppCompatTextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginStart="@dimen/divider_15px"
+                android:text="@string/mmse_evaluation"
+                android:textColor="@android:color/white"
+                android:textSize="@dimen/divider_42px"
+                android:textStyle="bold" />
+
+        </LinearLayout>
+
+        <androidx.appcompat.widget.AppCompatTextView
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginStart="@dimen/divider_41px"
+            android:layout_marginBottom="@dimen/divider_19px"
+            android:text="终端位置:宣武医院一楼大厅"
+            android:textColor="@color/color_B3FFFFFF"
+            android:textSize="@dimen/divider_24px"
+            android:textStyle="bold"
+            app:layout_constraintBottom_toBottomOf="parent"
+            app:layout_constraintStart_toStartOf="parent" />
+
+        <androidx.appcompat.widget.AppCompatTextView
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginEnd="@dimen/divider_31px"
+            android:layout_marginBottom="@dimen/divider_19px"
+            android:text="终端号:00132"
+            android:textColor="@color/color_B3FFFFFF"
+            android:textSize="@dimen/divider_24px"
+            android:textStyle="bold"
+            app:layout_constraintBottom_toBottomOf="parent"
+            app:layout_constraintEnd_toEndOf="parent" />
 
     </androidx.constraintlayout.widget.ConstraintLayout>
 

+ 25 - 0
home/src/main/res/layout/item_guide.xml

@@ -0,0 +1,25 @@
+<?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="match_parent"
+    tools:ignore="ResourceName">
+
+    <com.google.android.material.card.MaterialCardView
+        android:layout_width="match_parent"
+        android:layout_height="@dimen/divider_278px"
+        android:theme="@style/Theme.MaterialComponents.NoActionBar"
+        app:cardBackgroundColor="@android:color/white"
+        app:cardCornerRadius="@dimen/divider_20px">
+
+        <androidx.appcompat.widget.AppCompatImageView
+            android:id="@+id/guideImage"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent"
+            android:scaleType="centerCrop" />
+
+    </com.google.android.material.card.MaterialCardView>
+
+
+</LinearLayout>

BIN
home/src/main/res/mipmap-xxhdpi/icon_hospital_logo.png


BIN
home/src/main/res/mipmap-xxhdpi/icon_other_evaluations.png


+ 12 - 0
home/src/main/res/values/colors.xml

@@ -76,4 +76,16 @@
     <color name="color_3378CCFF" tools:ignore="ResourceName">#3378CCFF</color>
     <color name="color_FF0757EE" tools:ignore="ResourceName">#FF0757EE</color>
     <color name="color_FF4995DF" tools:ignore="ResourceName">#FF4995DF</color>
+    <color name="color_A1FFFFFF" tools:ignore="ResourceName">#A1FFFFFF</color>
+    <color name="color_FF3A89EB" tools:ignore="ResourceName">#FF3A89EB</color>
+    <color name="color_FFFF865F" tools:ignore="ResourceName">#FFFF865F</color>
+    <color name="color_FFFF6D57" tools:ignore="ResourceName">#FFFF6D57</color>
+    <color name="color_FFFFAA62" tools:ignore="ResourceName">#FFFFAA62</color>
+    <color name="color_B3FFFFFF" tools:ignore="ResourceName">#B3FFFFFF</color>
+    <color name="color_FFFFB872" tools:ignore="ResourceName">#FFFFB872</color>
+    <color name="color_FFFFE157" tools:ignore="ResourceName">#FFFFE157</color>
+    <color name="color_FFFFCB62" tools:ignore="ResourceName">#FFFFCB62</color>
+    <color name="color_FF1AA8FD" tools:ignore="ResourceName">#FF1AA8FD</color>
+    <color name="color_FF15C6FF" tools:ignore="ResourceName">#FF15C6FF</color>
+    <color name="color_FF2B9DFF" tools:ignore="ResourceName">#FF2B9DFF</color>
 </resources>

+ 4 - 0
home/src/main/res/values/dimens.xml

@@ -8,6 +8,7 @@
     <dimen name="divider_606px" tools:ignore="ResourceName">606px</dimen>
     <dimen name="divider_561px" tools:ignore="ResourceName">561px</dimen>
     <dimen name="divider_544px" tools:ignore="ResourceName">544px</dimen>
+    <dimen name="divider_535px" tools:ignore="ResourceName">535px</dimen>
     <dimen name="divider_533px" tools:ignore="ResourceName">533px</dimen>
     <dimen name="divider_525px" tools:ignore="ResourceName">525px</dimen>
     <dimen name="divider_516px" tools:ignore="ResourceName">516px</dimen>
@@ -46,10 +47,12 @@
     <dimen name="divider_315px" tools:ignore="ResourceName">315px</dimen>
     <dimen name="divider_313px" tools:ignore="ResourceName">313px</dimen>
     <dimen name="divider_307px" tools:ignore="ResourceName">307px</dimen>
+    <dimen name="divider_291px" tools:ignore="ResourceName">291px</dimen>
     <dimen name="divider_289px" tools:ignore="ResourceName">289px</dimen>
     <dimen name="divider_285px" tools:ignore="ResourceName">285px</dimen>
     <dimen name="divider_283px" tools:ignore="ResourceName">283px</dimen>
     <dimen name="divider_282px" tools:ignore="ResourceName">282px</dimen>
+    <dimen name="divider_278px" tools:ignore="ResourceName">278px</dimen>
     <dimen name="divider_277px" tools:ignore="ResourceName">277px</dimen>
     <dimen name="divider_270px" tools:ignore="ResourceName">270px</dimen>
     <dimen name="divider_267px" tools:ignore="ResourceName">267px</dimen>
@@ -98,6 +101,7 @@
     <dimen name="divider_132px" tools:ignore="ResourceName">132px</dimen>
     <dimen name="divider_130px" tools:ignore="ResourceName">130px</dimen>
     <dimen name="divider_128px" tools:ignore="ResourceName">128px</dimen>
+    <dimen name="divider_127px" tools:ignore="ResourceName">127px</dimen>
     <dimen name="divider_126px" tools:ignore="ResourceName">126px</dimen>
     <dimen name="divider_122px" tools:ignore="ResourceName">122px</dimen>
     <dimen name="divider_120px" tools:ignore="ResourceName">120px</dimen>

+ 2 - 0
home/src/main/res/values/strings.xml

@@ -66,4 +66,6 @@
     <string name="assessment_date" tools:ignore="ResourceName">测评日期</string>
     <string name="hospital_name" tools:ignore="ResourceName">首都医科大学宣武医院</string>
     <string name="exit_binding" tools:ignore="ResourceName">退出绑定</string>
+    <string name="report_query" tools:ignore="ResourceName">报告查询</string>
+    <string name="other_evaluations" tools:ignore="ResourceName">其他测评</string>
 </resources>