Newer
Older
SmartKitchen / app / src / main / java / com / casic / br / fragment / DevicePageFragment.kt
package com.casic.br.fragment

import androidx.recyclerview.widget.DividerItemDecoration
import com.casic.br.R
import com.casic.br.adapter.AddedDeviceAdapter
import com.casic.br.model.AddedDeviceModel
import com.casic.br.view.AllDeviceActivity
import com.pengxh.kt.lite.base.KotlinBaseFragment
import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.extensions.show
import kotlinx.android.synthetic.main.fragment_device.*
import kotlinx.android.synthetic.main.include_main_title.*
import java.util.*

class DevicePageFragment : KotlinBaseFragment() {

    override fun initLayoutView(): Int = R.layout.fragment_device

    override fun setupTopBarLayout() {
        leftTitleView.text = "设备"
    }

    override fun initData() {
        //TODO 模拟数据 只显示前三个设备
        val deviceModels = ArrayList<AddedDeviceModel>()
        for (i in 0..2) {
            val model = AddedDeviceModel()
            model.deviceName = "*****热水器"
            model.deviceUsedTime = "已使用${Random().nextInt(12)}个月${Random().nextInt(31)}天"

            deviceModels.add(model)
        }
        val addedDeviceAdapter = AddedDeviceAdapter(requireContext(), deviceModels)
        deviceRecyclerView.addItemDecoration(
            DividerItemDecoration(requireContext(), DividerItemDecoration.VERTICAL)
        )
        deviceRecyclerView.adapter = addedDeviceAdapter
        addedDeviceAdapter.setOnItemClickListener(object :
            AddedDeviceAdapter.OnItemClickListener {
            override fun onItemClick(position: Int) {
                //TODO 需要根据设备类型显示不同的页面
                val deviceModel = deviceModels[position]
                deviceModel.deviceName.show(requireContext())
            }
        })
    }

    override fun initEvent() {
        showAllDeviceLayout.setOnClickListener {
            requireContext().navigatePageTo<AllDeviceActivity>()
        }

        addDeviceLayout.setOnClickListener {

        }
    }
}