HomeActivity.kt 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. package com.quansu.heifengwuliu.activity
  2. import android.graphics.Color
  3. import android.os.Bundle
  4. import android.util.Log
  5. import androidx.core.content.ContextCompat
  6. import androidx.lifecycle.Observer
  7. import com.google.gson.Gson
  8. import com.hwangjr.rxbus.annotation.Subscribe
  9. import com.hwangjr.rxbus.annotation.Tag
  10. import com.quansu.heifengwuliu.R
  11. import com.quansu.heifengwuliu.base.MBActivity
  12. import com.quansu.heifengwuliu.config.ConfigRx
  13. import com.quansu.heifengwuliu.databinding.ActivityHomeBinding
  14. import com.quansu.heifengwuliu.fragment.DeliverGoodsFragment
  15. import com.quansu.heifengwuliu.fragment.MineFragment
  16. import com.quansu.heifengwuliu.fragment.WayBillFragment
  17. import com.quansu.heifengwuliu.model.DataInfoBean
  18. import com.quansu.heifengwuliu.repository.HomeRepository
  19. import com.quansu.heifengwuliu.vmodel.HomeVModel
  20. import com.ysnows.base.base.BRepository
  21. /**
  22. * 首页
  23. *Created by shihuiyun
  24. *on 2020/9/9
  25. */
  26. class HomeActivity : MBActivity<HomeVModel, ActivityHomeBinding>() {
  27. //默认为0
  28. private var mIndex = 0
  29. override fun binding(): ActivityHomeBinding {
  30. return ActivityHomeBinding.inflate(layoutInflater)
  31. }
  32. override fun initCreate(savedInstanceState: Bundle?) {
  33. if (savedInstanceState != null) {
  34. mIndex = savedInstanceState.getInt("currTabIndex")
  35. }
  36. super.initCreate(savedInstanceState)
  37. vm.user.observe(this, Observer {
  38. if(null==it){
  39. return@Observer
  40. }
  41. initMainMenu(it.type)
  42. binding.mainMenu.switchTab(0)
  43. })
  44. }
  45. override fun vmClass(): Class<HomeVModel> {
  46. return HomeVModel::class.java
  47. }
  48. override fun createRepository(): BRepository {
  49. return HomeRepository()
  50. }
  51. override fun title(): String? {
  52. return null
  53. }
  54. private fun initMainMenu(type:Int) {
  55. if(type==1) {//1是司机 2是货主
  56. // val oneFragment = IndexFragment()
  57. }else {
  58. Log.e("-shy-", "initMainMenu: ")
  59. binding.mainMenu.clear()
  60. val oneFragment = DeliverGoodsFragment()
  61. val twoFragment = WayBillFragment()
  62. val threeFragment = MineFragment()
  63. val menuTabBuilder = binding.mainMenu.tabBuilder()
  64. .setSelectColor(Color.parseColor("#2E4E71"))
  65. .setNormalColor(Color.parseColor("#666666"))
  66. val one = menuTabBuilder
  67. .setFragment(oneFragment)
  68. .setNormalDrawable(ContextCompat.getDrawable(context(), R.drawable.menu_index))
  69. .setSelectedDrawable(ContextCompat.getDrawable(context(), R.drawable.menu_index_focus))
  70. .setText(getString(R.string.home))
  71. .build(context())
  72. val two = menuTabBuilder
  73. .setFragment(twoFragment)
  74. .setNormalDrawable(ContextCompat.getDrawable(context(), R.drawable.menu_vehicle))
  75. .setSelectedDrawable(ContextCompat.getDrawable(context(), R.drawable.menu_vehicle_focus))
  76. .setText(getString(R.string.source_information))
  77. .build(context())
  78. val three = menuTabBuilder
  79. .setFragment(threeFragment)
  80. .setText(getString(R.string.my))
  81. .setNormalDrawable(ContextCompat.getDrawable(context(), R.drawable.menu_tyre))
  82. .setSelectedDrawable(ContextCompat.getDrawable(context(), R.drawable.menu_tyre_focus))
  83. .build(context())
  84. binding.mainMenu
  85. .addTab(one)
  86. .addTab(two)
  87. .addTab(three)
  88. .rendor()
  89. }
  90. }
  91. override val isRxbus: Boolean
  92. get() = true
  93. @Subscribe(tags = [Tag(ConfigRx.ADD_ADAIN)])
  94. fun getAgainDatas(json: String) {
  95. //再来一单 切换到货源界面
  96. binding.mainMenu.switchTab(0)
  97. }
  98. }