HomeAssuageGriefImageItemView.kt 4.34 KB
Newer Older
1 2 3
package com.yidianling.home.ui.view

import android.content.Context
YKai committed
4
import androidx.cardview.widget.CardView
5 6 7 8 9 10
import android.view.View
import android.widget.LinearLayout
import com.ydl.ydl_image.manager.YDLImageCacheManager
import com.yidianling.common.tools.RxDeviceTool
import com.yidianling.home.R
import com.yidianling.home.event.IHomeBaseEvent
konghaorui committed
11 12 13
import kotlinx.android.synthetic.xlzx.home_assuage_grief_image_more_five_item_view.view.*
import kotlinx.android.synthetic.xlzx.home_assuage_grief_image_under_four_item_view.view.*
import kotlinx.android.synthetic.xlzx.home_assuage_grief_image_under_two_item_view.view.*
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35

/**
 * @author <a href="https://www.jianshu.com/u/c1e5310dd724">xujian</a>
 * @描述: 解忧*问答模块内部图片模块
 * @Copyright Copyright (c) 2019
 * @Company 壹点灵
 * @date 2019/02/15
 */
class HomeAssuageGriefImageItemView(
    private val mContext: Context,
    private val urlList: List<String>,
    private var homeEvent: IHomeBaseEvent?
) : CardView(mContext) {

    init {
        initView()
    }

    private fun initView() {
        radius = 4f
        cardElevation = 0f
        var screenWidth = RxDeviceTool.getScreenWidth(mContext)
ydl committed
36
        var viewWidth = (screenWidth - 2 * 16 * RxDeviceTool.getScreenDensity(mContext)).toInt()
37 38 39 40 41 42 43 44 45
        var params: LinearLayout.LayoutParams?

        //根据图片的数量,加载不同的图片布局
        if (urlList.size <= 2) {
            var viewHeight = viewWidth * 178 / 315
            params = LinearLayout.LayoutParams(viewWidth, viewHeight)
            layoutParams = params
            View.inflate(
                mContext,
konghaorui committed
46
                R.layout.home_assuage_grief_image_under_two_item_view,
47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
                this
            )

            YDLImageCacheManager.showImage(
                mContext,
                urlList[0],
                homeModuleAssuageGriefUnderTwoItemViewImg
            )

        } else if (urlList.size <= 4) {
            var viewHeight = viewWidth * 178 / 315
            params = LinearLayout.LayoutParams(viewWidth, viewHeight)
            params.bottomMargin = (20 * RxDeviceTool.getScreenDensity(mContext)).toInt()
            layoutParams = params
            View.inflate(
                mContext,
konghaorui committed
63
                R.layout.home_assuage_grief_image_under_four_item_view,
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91
                this
            )

            YDLImageCacheManager.showImage(
                mContext,
                urlList[0],
                homeModuleAssuageGriefUnderFourItemViewFirstImg
            )
            YDLImageCacheManager.showImage(
                mContext,
                urlList[1],
                homeModuleAssuageGriefUnderFourItemViewSecondImg
            )
            YDLImageCacheManager.showImage(
                mContext,
                urlList[2],
                homeModuleAssuageGriefUnderFourItemViewThirdImg
            )

            homeModuleAssuageGriefUnderFourthItemViewTag.text = urlList.size.toString() + "图"

        } else if (urlList.size >= 5) {
            var viewHeight = viewWidth * 180 / 315
            params = LinearLayout.LayoutParams(viewWidth, viewHeight)
            params.bottomMargin = (20 * RxDeviceTool.getScreenDensity(mContext)).toInt()
            layoutParams = params
            View.inflate(
                mContext,
konghaorui committed
92
                R.layout.home_assuage_grief_image_more_five_item_view,
93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130
                this
            )

            YDLImageCacheManager.showImage(
                mContext,
                urlList[0],
                homeModuleAssuageGriefUnderFiveItemViewFirstImg
            )
            YDLImageCacheManager.showImage(
                mContext,
                urlList[1],
                homeModuleAssuageGriefUnderFiveItemViewSecondImg
            )
            YDLImageCacheManager.showImage(
                mContext,
                urlList[2],
                homeModuleAssuageGriefUnderFiveItemViewThirdImg
            )
            YDLImageCacheManager.showImage(
                mContext,
                urlList[3],
                homeModuleAssuageGriefUnderFiveItemViewFourthImg
            )
            YDLImageCacheManager.showImage(
                mContext,
                urlList[4],
                homeModuleAssuageGriefUnderFiveItemViewFiveImg
            )

            homeModuleAssuageGriefUnderFiveItemViewTag.text = urlList.size.toString() + "图"
        }

    }

    fun updateData() {

    }
}