diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 0e14b09..101282b 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -53,7 +53,6 @@
-
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 0e14b09..101282b 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -53,7 +53,6 @@
-
diff --git a/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt b/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
index d507f87..3a1b260 100644
--- a/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
+++ b/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
@@ -13,11 +13,14 @@
import com.casic.smarttube.R
import com.casic.smarttube.databinding.FragmentOverviewBinding
import com.casic.smarttube.model.ProjectGroupModel
+import com.casic.smarttube.model.ProjectGroupModel.DataModel
import com.casic.smarttube.view.GroupDeviceActivity
import com.casic.smarttube.vm.ProjectGroupViewModel
import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter
import com.pengxh.kt.lite.adapter.ViewHolder
import com.pengxh.kt.lite.base.KotlinBaseFragment
+import com.pengxh.kt.lite.divider.RecyclerViewItemOffsets
+import com.pengxh.kt.lite.extensions.dp2px
import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.extensions.show
import com.pengxh.kt.lite.utils.LoadState
@@ -29,8 +32,9 @@
private val kTag = "OverviewFragment"
private val geocoderSearch by lazy { GeocodeSearch(requireContext()) }
+ private val marginOffsets by lazy { 6.dp2px(requireContext()) }
private lateinit var groupViewModel: ProjectGroupViewModel
- private lateinit var groupListAdapter: NormalRecyclerAdapter
+ private lateinit var groupListAdapter: NormalRecyclerAdapter
private var clickedPosition = 0
private var isRefresh = false
@@ -45,12 +49,20 @@
}
override fun initOnCreate(savedInstanceState: Bundle?) {
+ binding.recyclerView.addItemDecoration(
+ RecyclerViewItemOffsets(
+ marginOffsets, marginOffsets shr 1, marginOffsets, marginOffsets shr 1
+ )
+ )
+
groupViewModel = ViewModelProvider(this)[ProjectGroupViewModel::class.java]
groupViewModel.groupData.observe(this) {
if (it.code == 200) {
bindRecyclerView(it)
}
}
+ groupViewModel.getProGroupList(requireContext())
+
groupViewModel.changeGroupResultData.observe(this) {
if (it.code == 200) {
groupListAdapter.notifyItemChanged(clickedPosition)
@@ -80,11 +92,11 @@
binding.emptyView.visibility = View.GONE
binding.recyclerView.visibility = View.VISIBLE
- groupListAdapter = object : NormalRecyclerAdapter(
+ groupListAdapter = object : NormalRecyclerAdapter(
R.layout.item_group_over_view_rv_l, it.data
) {
override fun convertView(
- viewHolder: ViewHolder, position: Int, item: ProjectGroupModel.DataModel
+ viewHolder: ViewHolder, position: Int, item: DataModel
) {
viewHolder.setText(R.id.groupNameView, item.groupId)
.setText(R.id.totalDeviceNumView, item.totalDevice)
@@ -96,43 +108,17 @@
}
if (item.latGaode.isBlank() || item.lngGaode.isBlank()) {
viewHolder.setText(
- R.id.groupLocationView,
- "经纬度异常,无法查看具体位置"
+ R.id.groupLocationView, "经纬度异常,无法查看具体位置"
)
} else {
- val point = LatLonPoint(
- item.latGaode.toDouble(), item.lngGaode.toDouble()
- )
- val queryParam = RegeocodeQuery(point, 200f, GeocodeSearch.AMAP)
- geocoderSearch.getFromLocationAsyn(queryParam)
- geocoderSearch.setOnGeocodeSearchListener(object :
- GeocodeSearch.OnGeocodeSearchListener {
- override fun onRegeocodeSearched(
- result: RegeocodeResult?, rCode: Int
- ) {
- if (rCode == 1000) {
- viewHolder.setText(
- R.id.groupLocationView,
- String.format("${result?.regeocodeAddress?.formatAddress}")
- )
- }
- }
-
- override fun onGeocodeSearched(
- result: GeocodeResult?, rCode: Int
- ) {
-
- }
- })
+ searchLocation(item, viewHolder)
}
}
}
binding.recyclerView.adapter = groupListAdapter
groupListAdapter.setOnItemClickedListener(object :
- NormalRecyclerAdapter.OnItemClickedListener {
- override fun onItemClicked(
- position: Int, item: ProjectGroupModel.DataModel
- ) {
+ NormalRecyclerAdapter.OnItemClickedListener {
+ override fun onItemClicked(position: Int, item: DataModel) {
requireContext().navigatePageTo(item.groupId)
}
})
@@ -141,7 +127,27 @@
}
}
- private fun editGroupName(item: ProjectGroupModel.DataModel) {
+ private fun searchLocation(item: DataModel, viewHolder: ViewHolder) {
+ val point = LatLonPoint(item.latGaode.toDouble(), item.lngGaode.toDouble())
+ val queryParam = RegeocodeQuery(point, 200f, GeocodeSearch.AMAP)
+ geocoderSearch.getFromLocationAsyn(queryParam)
+ geocoderSearch.setOnGeocodeSearchListener(object : GeocodeSearch.OnGeocodeSearchListener {
+ override fun onRegeocodeSearched(result: RegeocodeResult?, rCode: Int) {
+ if (rCode == 1000) {
+ viewHolder.setText(
+ R.id.groupLocationView,
+ String.format("${result?.regeocodeAddress?.formatAddress}")
+ )
+ }
+ }
+
+ override fun onGeocodeSearched(result: GeocodeResult?, rCode: Int) {
+
+ }
+ })
+ }
+
+ private fun editGroupName(item: DataModel) {
AlertInputDialog.Builder()
.setContext(requireContext())
.setTitle("提示")
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 0e14b09..101282b 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -53,7 +53,6 @@
-
diff --git a/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt b/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
index d507f87..3a1b260 100644
--- a/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
+++ b/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
@@ -13,11 +13,14 @@
import com.casic.smarttube.R
import com.casic.smarttube.databinding.FragmentOverviewBinding
import com.casic.smarttube.model.ProjectGroupModel
+import com.casic.smarttube.model.ProjectGroupModel.DataModel
import com.casic.smarttube.view.GroupDeviceActivity
import com.casic.smarttube.vm.ProjectGroupViewModel
import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter
import com.pengxh.kt.lite.adapter.ViewHolder
import com.pengxh.kt.lite.base.KotlinBaseFragment
+import com.pengxh.kt.lite.divider.RecyclerViewItemOffsets
+import com.pengxh.kt.lite.extensions.dp2px
import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.extensions.show
import com.pengxh.kt.lite.utils.LoadState
@@ -29,8 +32,9 @@
private val kTag = "OverviewFragment"
private val geocoderSearch by lazy { GeocodeSearch(requireContext()) }
+ private val marginOffsets by lazy { 6.dp2px(requireContext()) }
private lateinit var groupViewModel: ProjectGroupViewModel
- private lateinit var groupListAdapter: NormalRecyclerAdapter
+ private lateinit var groupListAdapter: NormalRecyclerAdapter
private var clickedPosition = 0
private var isRefresh = false
@@ -45,12 +49,20 @@
}
override fun initOnCreate(savedInstanceState: Bundle?) {
+ binding.recyclerView.addItemDecoration(
+ RecyclerViewItemOffsets(
+ marginOffsets, marginOffsets shr 1, marginOffsets, marginOffsets shr 1
+ )
+ )
+
groupViewModel = ViewModelProvider(this)[ProjectGroupViewModel::class.java]
groupViewModel.groupData.observe(this) {
if (it.code == 200) {
bindRecyclerView(it)
}
}
+ groupViewModel.getProGroupList(requireContext())
+
groupViewModel.changeGroupResultData.observe(this) {
if (it.code == 200) {
groupListAdapter.notifyItemChanged(clickedPosition)
@@ -80,11 +92,11 @@
binding.emptyView.visibility = View.GONE
binding.recyclerView.visibility = View.VISIBLE
- groupListAdapter = object : NormalRecyclerAdapter(
+ groupListAdapter = object : NormalRecyclerAdapter(
R.layout.item_group_over_view_rv_l, it.data
) {
override fun convertView(
- viewHolder: ViewHolder, position: Int, item: ProjectGroupModel.DataModel
+ viewHolder: ViewHolder, position: Int, item: DataModel
) {
viewHolder.setText(R.id.groupNameView, item.groupId)
.setText(R.id.totalDeviceNumView, item.totalDevice)
@@ -96,43 +108,17 @@
}
if (item.latGaode.isBlank() || item.lngGaode.isBlank()) {
viewHolder.setText(
- R.id.groupLocationView,
- "经纬度异常,无法查看具体位置"
+ R.id.groupLocationView, "经纬度异常,无法查看具体位置"
)
} else {
- val point = LatLonPoint(
- item.latGaode.toDouble(), item.lngGaode.toDouble()
- )
- val queryParam = RegeocodeQuery(point, 200f, GeocodeSearch.AMAP)
- geocoderSearch.getFromLocationAsyn(queryParam)
- geocoderSearch.setOnGeocodeSearchListener(object :
- GeocodeSearch.OnGeocodeSearchListener {
- override fun onRegeocodeSearched(
- result: RegeocodeResult?, rCode: Int
- ) {
- if (rCode == 1000) {
- viewHolder.setText(
- R.id.groupLocationView,
- String.format("${result?.regeocodeAddress?.formatAddress}")
- )
- }
- }
-
- override fun onGeocodeSearched(
- result: GeocodeResult?, rCode: Int
- ) {
-
- }
- })
+ searchLocation(item, viewHolder)
}
}
}
binding.recyclerView.adapter = groupListAdapter
groupListAdapter.setOnItemClickedListener(object :
- NormalRecyclerAdapter.OnItemClickedListener {
- override fun onItemClicked(
- position: Int, item: ProjectGroupModel.DataModel
- ) {
+ NormalRecyclerAdapter.OnItemClickedListener {
+ override fun onItemClicked(position: Int, item: DataModel) {
requireContext().navigatePageTo(item.groupId)
}
})
@@ -141,7 +127,27 @@
}
}
- private fun editGroupName(item: ProjectGroupModel.DataModel) {
+ private fun searchLocation(item: DataModel, viewHolder: ViewHolder) {
+ val point = LatLonPoint(item.latGaode.toDouble(), item.lngGaode.toDouble())
+ val queryParam = RegeocodeQuery(point, 200f, GeocodeSearch.AMAP)
+ geocoderSearch.getFromLocationAsyn(queryParam)
+ geocoderSearch.setOnGeocodeSearchListener(object : GeocodeSearch.OnGeocodeSearchListener {
+ override fun onRegeocodeSearched(result: RegeocodeResult?, rCode: Int) {
+ if (rCode == 1000) {
+ viewHolder.setText(
+ R.id.groupLocationView,
+ String.format("${result?.regeocodeAddress?.formatAddress}")
+ )
+ }
+ }
+
+ override fun onGeocodeSearched(result: GeocodeResult?, rCode: Int) {
+
+ }
+ })
+ }
+
+ private fun editGroupName(item: DataModel) {
AlertInputDialog.Builder()
.setContext(requireContext())
.setTitle("提示")
diff --git a/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
index f01859a..05ceeb0 100644
--- a/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
@@ -75,7 +75,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 0e14b09..101282b 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -53,7 +53,6 @@
-
diff --git a/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt b/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
index d507f87..3a1b260 100644
--- a/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
+++ b/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
@@ -13,11 +13,14 @@
import com.casic.smarttube.R
import com.casic.smarttube.databinding.FragmentOverviewBinding
import com.casic.smarttube.model.ProjectGroupModel
+import com.casic.smarttube.model.ProjectGroupModel.DataModel
import com.casic.smarttube.view.GroupDeviceActivity
import com.casic.smarttube.vm.ProjectGroupViewModel
import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter
import com.pengxh.kt.lite.adapter.ViewHolder
import com.pengxh.kt.lite.base.KotlinBaseFragment
+import com.pengxh.kt.lite.divider.RecyclerViewItemOffsets
+import com.pengxh.kt.lite.extensions.dp2px
import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.extensions.show
import com.pengxh.kt.lite.utils.LoadState
@@ -29,8 +32,9 @@
private val kTag = "OverviewFragment"
private val geocoderSearch by lazy { GeocodeSearch(requireContext()) }
+ private val marginOffsets by lazy { 6.dp2px(requireContext()) }
private lateinit var groupViewModel: ProjectGroupViewModel
- private lateinit var groupListAdapter: NormalRecyclerAdapter
+ private lateinit var groupListAdapter: NormalRecyclerAdapter
private var clickedPosition = 0
private var isRefresh = false
@@ -45,12 +49,20 @@
}
override fun initOnCreate(savedInstanceState: Bundle?) {
+ binding.recyclerView.addItemDecoration(
+ RecyclerViewItemOffsets(
+ marginOffsets, marginOffsets shr 1, marginOffsets, marginOffsets shr 1
+ )
+ )
+
groupViewModel = ViewModelProvider(this)[ProjectGroupViewModel::class.java]
groupViewModel.groupData.observe(this) {
if (it.code == 200) {
bindRecyclerView(it)
}
}
+ groupViewModel.getProGroupList(requireContext())
+
groupViewModel.changeGroupResultData.observe(this) {
if (it.code == 200) {
groupListAdapter.notifyItemChanged(clickedPosition)
@@ -80,11 +92,11 @@
binding.emptyView.visibility = View.GONE
binding.recyclerView.visibility = View.VISIBLE
- groupListAdapter = object : NormalRecyclerAdapter(
+ groupListAdapter = object : NormalRecyclerAdapter(
R.layout.item_group_over_view_rv_l, it.data
) {
override fun convertView(
- viewHolder: ViewHolder, position: Int, item: ProjectGroupModel.DataModel
+ viewHolder: ViewHolder, position: Int, item: DataModel
) {
viewHolder.setText(R.id.groupNameView, item.groupId)
.setText(R.id.totalDeviceNumView, item.totalDevice)
@@ -96,43 +108,17 @@
}
if (item.latGaode.isBlank() || item.lngGaode.isBlank()) {
viewHolder.setText(
- R.id.groupLocationView,
- "经纬度异常,无法查看具体位置"
+ R.id.groupLocationView, "经纬度异常,无法查看具体位置"
)
} else {
- val point = LatLonPoint(
- item.latGaode.toDouble(), item.lngGaode.toDouble()
- )
- val queryParam = RegeocodeQuery(point, 200f, GeocodeSearch.AMAP)
- geocoderSearch.getFromLocationAsyn(queryParam)
- geocoderSearch.setOnGeocodeSearchListener(object :
- GeocodeSearch.OnGeocodeSearchListener {
- override fun onRegeocodeSearched(
- result: RegeocodeResult?, rCode: Int
- ) {
- if (rCode == 1000) {
- viewHolder.setText(
- R.id.groupLocationView,
- String.format("${result?.regeocodeAddress?.formatAddress}")
- )
- }
- }
-
- override fun onGeocodeSearched(
- result: GeocodeResult?, rCode: Int
- ) {
-
- }
- })
+ searchLocation(item, viewHolder)
}
}
}
binding.recyclerView.adapter = groupListAdapter
groupListAdapter.setOnItemClickedListener(object :
- NormalRecyclerAdapter.OnItemClickedListener {
- override fun onItemClicked(
- position: Int, item: ProjectGroupModel.DataModel
- ) {
+ NormalRecyclerAdapter.OnItemClickedListener {
+ override fun onItemClicked(position: Int, item: DataModel) {
requireContext().navigatePageTo(item.groupId)
}
})
@@ -141,7 +127,27 @@
}
}
- private fun editGroupName(item: ProjectGroupModel.DataModel) {
+ private fun searchLocation(item: DataModel, viewHolder: ViewHolder) {
+ val point = LatLonPoint(item.latGaode.toDouble(), item.lngGaode.toDouble())
+ val queryParam = RegeocodeQuery(point, 200f, GeocodeSearch.AMAP)
+ geocoderSearch.getFromLocationAsyn(queryParam)
+ geocoderSearch.setOnGeocodeSearchListener(object : GeocodeSearch.OnGeocodeSearchListener {
+ override fun onRegeocodeSearched(result: RegeocodeResult?, rCode: Int) {
+ if (rCode == 1000) {
+ viewHolder.setText(
+ R.id.groupLocationView,
+ String.format("${result?.regeocodeAddress?.formatAddress}")
+ )
+ }
+ }
+
+ override fun onGeocodeSearched(result: GeocodeResult?, rCode: Int) {
+
+ }
+ })
+ }
+
+ private fun editGroupName(item: DataModel) {
AlertInputDialog.Builder()
.setContext(requireContext())
.setTitle("提示")
diff --git a/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
index f01859a..05ceeb0 100644
--- a/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
@@ -75,7 +75,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
diff --git a/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt b/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
index 2352eb9..71ffaf7 100644
--- a/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
@@ -41,7 +41,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 0e14b09..101282b 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -53,7 +53,6 @@
-
diff --git a/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt b/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
index d507f87..3a1b260 100644
--- a/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
+++ b/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
@@ -13,11 +13,14 @@
import com.casic.smarttube.R
import com.casic.smarttube.databinding.FragmentOverviewBinding
import com.casic.smarttube.model.ProjectGroupModel
+import com.casic.smarttube.model.ProjectGroupModel.DataModel
import com.casic.smarttube.view.GroupDeviceActivity
import com.casic.smarttube.vm.ProjectGroupViewModel
import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter
import com.pengxh.kt.lite.adapter.ViewHolder
import com.pengxh.kt.lite.base.KotlinBaseFragment
+import com.pengxh.kt.lite.divider.RecyclerViewItemOffsets
+import com.pengxh.kt.lite.extensions.dp2px
import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.extensions.show
import com.pengxh.kt.lite.utils.LoadState
@@ -29,8 +32,9 @@
private val kTag = "OverviewFragment"
private val geocoderSearch by lazy { GeocodeSearch(requireContext()) }
+ private val marginOffsets by lazy { 6.dp2px(requireContext()) }
private lateinit var groupViewModel: ProjectGroupViewModel
- private lateinit var groupListAdapter: NormalRecyclerAdapter
+ private lateinit var groupListAdapter: NormalRecyclerAdapter
private var clickedPosition = 0
private var isRefresh = false
@@ -45,12 +49,20 @@
}
override fun initOnCreate(savedInstanceState: Bundle?) {
+ binding.recyclerView.addItemDecoration(
+ RecyclerViewItemOffsets(
+ marginOffsets, marginOffsets shr 1, marginOffsets, marginOffsets shr 1
+ )
+ )
+
groupViewModel = ViewModelProvider(this)[ProjectGroupViewModel::class.java]
groupViewModel.groupData.observe(this) {
if (it.code == 200) {
bindRecyclerView(it)
}
}
+ groupViewModel.getProGroupList(requireContext())
+
groupViewModel.changeGroupResultData.observe(this) {
if (it.code == 200) {
groupListAdapter.notifyItemChanged(clickedPosition)
@@ -80,11 +92,11 @@
binding.emptyView.visibility = View.GONE
binding.recyclerView.visibility = View.VISIBLE
- groupListAdapter = object : NormalRecyclerAdapter(
+ groupListAdapter = object : NormalRecyclerAdapter(
R.layout.item_group_over_view_rv_l, it.data
) {
override fun convertView(
- viewHolder: ViewHolder, position: Int, item: ProjectGroupModel.DataModel
+ viewHolder: ViewHolder, position: Int, item: DataModel
) {
viewHolder.setText(R.id.groupNameView, item.groupId)
.setText(R.id.totalDeviceNumView, item.totalDevice)
@@ -96,43 +108,17 @@
}
if (item.latGaode.isBlank() || item.lngGaode.isBlank()) {
viewHolder.setText(
- R.id.groupLocationView,
- "经纬度异常,无法查看具体位置"
+ R.id.groupLocationView, "经纬度异常,无法查看具体位置"
)
} else {
- val point = LatLonPoint(
- item.latGaode.toDouble(), item.lngGaode.toDouble()
- )
- val queryParam = RegeocodeQuery(point, 200f, GeocodeSearch.AMAP)
- geocoderSearch.getFromLocationAsyn(queryParam)
- geocoderSearch.setOnGeocodeSearchListener(object :
- GeocodeSearch.OnGeocodeSearchListener {
- override fun onRegeocodeSearched(
- result: RegeocodeResult?, rCode: Int
- ) {
- if (rCode == 1000) {
- viewHolder.setText(
- R.id.groupLocationView,
- String.format("${result?.regeocodeAddress?.formatAddress}")
- )
- }
- }
-
- override fun onGeocodeSearched(
- result: GeocodeResult?, rCode: Int
- ) {
-
- }
- })
+ searchLocation(item, viewHolder)
}
}
}
binding.recyclerView.adapter = groupListAdapter
groupListAdapter.setOnItemClickedListener(object :
- NormalRecyclerAdapter.OnItemClickedListener {
- override fun onItemClicked(
- position: Int, item: ProjectGroupModel.DataModel
- ) {
+ NormalRecyclerAdapter.OnItemClickedListener {
+ override fun onItemClicked(position: Int, item: DataModel) {
requireContext().navigatePageTo(item.groupId)
}
})
@@ -141,7 +127,27 @@
}
}
- private fun editGroupName(item: ProjectGroupModel.DataModel) {
+ private fun searchLocation(item: DataModel, viewHolder: ViewHolder) {
+ val point = LatLonPoint(item.latGaode.toDouble(), item.lngGaode.toDouble())
+ val queryParam = RegeocodeQuery(point, 200f, GeocodeSearch.AMAP)
+ geocoderSearch.getFromLocationAsyn(queryParam)
+ geocoderSearch.setOnGeocodeSearchListener(object : GeocodeSearch.OnGeocodeSearchListener {
+ override fun onRegeocodeSearched(result: RegeocodeResult?, rCode: Int) {
+ if (rCode == 1000) {
+ viewHolder.setText(
+ R.id.groupLocationView,
+ String.format("${result?.regeocodeAddress?.formatAddress}")
+ )
+ }
+ }
+
+ override fun onGeocodeSearched(result: GeocodeResult?, rCode: Int) {
+
+ }
+ })
+ }
+
+ private fun editGroupName(item: DataModel) {
AlertInputDialog.Builder()
.setContext(requireContext())
.setTitle("提示")
diff --git a/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
index f01859a..05ceeb0 100644
--- a/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
@@ -75,7 +75,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
diff --git a/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt b/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
index 2352eb9..71ffaf7 100644
--- a/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
@@ -41,7 +41,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
diff --git a/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt b/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt
index 2b64158..03265ad 100644
--- a/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt
@@ -38,7 +38,7 @@
private lateinit var deviceAdapter: DeviceListAdapter
private val context = this
private val easyPopupWindow by lazy { EasyPopupWindow(this) }
- private val marginOffsets by lazy { 5.dp2px(this) }
+ private val marginOffsets by lazy { 6.dp2px(this) }
private var dataRows: MutableList = ArrayList()
private var page = 1
private var isRefresh = false
@@ -52,7 +52,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
@@ -226,7 +226,8 @@
binding.recyclerView.layoutManager = linearLayoutManager
binding.recyclerView.addItemDecoration(
RecyclerViewItemOffsets(
- marginOffsets, marginOffsets, marginOffsets, marginOffsets
+ marginOffsets, marginOffsets shr 1,
+ marginOffsets, marginOffsets shr 1
)
)
binding.recyclerView.adapter = deviceAdapter
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 0e14b09..101282b 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -53,7 +53,6 @@
-
diff --git a/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt b/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
index d507f87..3a1b260 100644
--- a/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
+++ b/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
@@ -13,11 +13,14 @@
import com.casic.smarttube.R
import com.casic.smarttube.databinding.FragmentOverviewBinding
import com.casic.smarttube.model.ProjectGroupModel
+import com.casic.smarttube.model.ProjectGroupModel.DataModel
import com.casic.smarttube.view.GroupDeviceActivity
import com.casic.smarttube.vm.ProjectGroupViewModel
import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter
import com.pengxh.kt.lite.adapter.ViewHolder
import com.pengxh.kt.lite.base.KotlinBaseFragment
+import com.pengxh.kt.lite.divider.RecyclerViewItemOffsets
+import com.pengxh.kt.lite.extensions.dp2px
import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.extensions.show
import com.pengxh.kt.lite.utils.LoadState
@@ -29,8 +32,9 @@
private val kTag = "OverviewFragment"
private val geocoderSearch by lazy { GeocodeSearch(requireContext()) }
+ private val marginOffsets by lazy { 6.dp2px(requireContext()) }
private lateinit var groupViewModel: ProjectGroupViewModel
- private lateinit var groupListAdapter: NormalRecyclerAdapter
+ private lateinit var groupListAdapter: NormalRecyclerAdapter
private var clickedPosition = 0
private var isRefresh = false
@@ -45,12 +49,20 @@
}
override fun initOnCreate(savedInstanceState: Bundle?) {
+ binding.recyclerView.addItemDecoration(
+ RecyclerViewItemOffsets(
+ marginOffsets, marginOffsets shr 1, marginOffsets, marginOffsets shr 1
+ )
+ )
+
groupViewModel = ViewModelProvider(this)[ProjectGroupViewModel::class.java]
groupViewModel.groupData.observe(this) {
if (it.code == 200) {
bindRecyclerView(it)
}
}
+ groupViewModel.getProGroupList(requireContext())
+
groupViewModel.changeGroupResultData.observe(this) {
if (it.code == 200) {
groupListAdapter.notifyItemChanged(clickedPosition)
@@ -80,11 +92,11 @@
binding.emptyView.visibility = View.GONE
binding.recyclerView.visibility = View.VISIBLE
- groupListAdapter = object : NormalRecyclerAdapter(
+ groupListAdapter = object : NormalRecyclerAdapter(
R.layout.item_group_over_view_rv_l, it.data
) {
override fun convertView(
- viewHolder: ViewHolder, position: Int, item: ProjectGroupModel.DataModel
+ viewHolder: ViewHolder, position: Int, item: DataModel
) {
viewHolder.setText(R.id.groupNameView, item.groupId)
.setText(R.id.totalDeviceNumView, item.totalDevice)
@@ -96,43 +108,17 @@
}
if (item.latGaode.isBlank() || item.lngGaode.isBlank()) {
viewHolder.setText(
- R.id.groupLocationView,
- "经纬度异常,无法查看具体位置"
+ R.id.groupLocationView, "经纬度异常,无法查看具体位置"
)
} else {
- val point = LatLonPoint(
- item.latGaode.toDouble(), item.lngGaode.toDouble()
- )
- val queryParam = RegeocodeQuery(point, 200f, GeocodeSearch.AMAP)
- geocoderSearch.getFromLocationAsyn(queryParam)
- geocoderSearch.setOnGeocodeSearchListener(object :
- GeocodeSearch.OnGeocodeSearchListener {
- override fun onRegeocodeSearched(
- result: RegeocodeResult?, rCode: Int
- ) {
- if (rCode == 1000) {
- viewHolder.setText(
- R.id.groupLocationView,
- String.format("${result?.regeocodeAddress?.formatAddress}")
- )
- }
- }
-
- override fun onGeocodeSearched(
- result: GeocodeResult?, rCode: Int
- ) {
-
- }
- })
+ searchLocation(item, viewHolder)
}
}
}
binding.recyclerView.adapter = groupListAdapter
groupListAdapter.setOnItemClickedListener(object :
- NormalRecyclerAdapter.OnItemClickedListener {
- override fun onItemClicked(
- position: Int, item: ProjectGroupModel.DataModel
- ) {
+ NormalRecyclerAdapter.OnItemClickedListener {
+ override fun onItemClicked(position: Int, item: DataModel) {
requireContext().navigatePageTo(item.groupId)
}
})
@@ -141,7 +127,27 @@
}
}
- private fun editGroupName(item: ProjectGroupModel.DataModel) {
+ private fun searchLocation(item: DataModel, viewHolder: ViewHolder) {
+ val point = LatLonPoint(item.latGaode.toDouble(), item.lngGaode.toDouble())
+ val queryParam = RegeocodeQuery(point, 200f, GeocodeSearch.AMAP)
+ geocoderSearch.getFromLocationAsyn(queryParam)
+ geocoderSearch.setOnGeocodeSearchListener(object : GeocodeSearch.OnGeocodeSearchListener {
+ override fun onRegeocodeSearched(result: RegeocodeResult?, rCode: Int) {
+ if (rCode == 1000) {
+ viewHolder.setText(
+ R.id.groupLocationView,
+ String.format("${result?.regeocodeAddress?.formatAddress}")
+ )
+ }
+ }
+
+ override fun onGeocodeSearched(result: GeocodeResult?, rCode: Int) {
+
+ }
+ })
+ }
+
+ private fun editGroupName(item: DataModel) {
AlertInputDialog.Builder()
.setContext(requireContext())
.setTitle("提示")
diff --git a/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
index f01859a..05ceeb0 100644
--- a/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
@@ -75,7 +75,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
diff --git a/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt b/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
index 2352eb9..71ffaf7 100644
--- a/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
@@ -41,7 +41,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
diff --git a/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt b/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt
index 2b64158..03265ad 100644
--- a/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt
@@ -38,7 +38,7 @@
private lateinit var deviceAdapter: DeviceListAdapter
private val context = this
private val easyPopupWindow by lazy { EasyPopupWindow(this) }
- private val marginOffsets by lazy { 5.dp2px(this) }
+ private val marginOffsets by lazy { 6.dp2px(this) }
private var dataRows: MutableList = ArrayList()
private var page = 1
private var isRefresh = false
@@ -52,7 +52,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
@@ -226,7 +226,8 @@
binding.recyclerView.layoutManager = linearLayoutManager
binding.recyclerView.addItemDecoration(
RecyclerViewItemOffsets(
- marginOffsets, marginOffsets, marginOffsets, marginOffsets
+ marginOffsets, marginOffsets shr 1,
+ marginOffsets, marginOffsets shr 1
)
)
binding.recyclerView.adapter = deviceAdapter
diff --git a/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt b/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt
index fc20978..fb28d46 100644
--- a/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt
@@ -14,7 +14,7 @@
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
if (EasyPermissions.hasPermissions(this, *LocaleConstant.USER_PERMISSIONS)) {
- startSplashScreenActivity()
+ startLoginActivity()
} else {
EasyPermissions.requestPermissions(
this@PermissionActivity,
@@ -25,11 +25,11 @@
}
}
- private fun startSplashScreenActivity() {
+ private fun startLoginActivity() {
//先把导航隐私政策声明,后面导航会用到
NaviSetting.updatePrivacyShow(this, true, true)
NaviSetting.updatePrivacyAgree(this, true)
- navigatePageTo()
+ navigatePageTo()
finish()
}
@@ -41,7 +41,7 @@
}
override fun onPermissionsGranted(requestCode: Int, perms: List) {
- startSplashScreenActivity()
+ startLoginActivity()
}
override fun onPermissionsDenied(requestCode: Int, perms: List) {
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 0e14b09..101282b 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -53,7 +53,6 @@
-
diff --git a/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt b/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
index d507f87..3a1b260 100644
--- a/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
+++ b/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
@@ -13,11 +13,14 @@
import com.casic.smarttube.R
import com.casic.smarttube.databinding.FragmentOverviewBinding
import com.casic.smarttube.model.ProjectGroupModel
+import com.casic.smarttube.model.ProjectGroupModel.DataModel
import com.casic.smarttube.view.GroupDeviceActivity
import com.casic.smarttube.vm.ProjectGroupViewModel
import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter
import com.pengxh.kt.lite.adapter.ViewHolder
import com.pengxh.kt.lite.base.KotlinBaseFragment
+import com.pengxh.kt.lite.divider.RecyclerViewItemOffsets
+import com.pengxh.kt.lite.extensions.dp2px
import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.extensions.show
import com.pengxh.kt.lite.utils.LoadState
@@ -29,8 +32,9 @@
private val kTag = "OverviewFragment"
private val geocoderSearch by lazy { GeocodeSearch(requireContext()) }
+ private val marginOffsets by lazy { 6.dp2px(requireContext()) }
private lateinit var groupViewModel: ProjectGroupViewModel
- private lateinit var groupListAdapter: NormalRecyclerAdapter
+ private lateinit var groupListAdapter: NormalRecyclerAdapter
private var clickedPosition = 0
private var isRefresh = false
@@ -45,12 +49,20 @@
}
override fun initOnCreate(savedInstanceState: Bundle?) {
+ binding.recyclerView.addItemDecoration(
+ RecyclerViewItemOffsets(
+ marginOffsets, marginOffsets shr 1, marginOffsets, marginOffsets shr 1
+ )
+ )
+
groupViewModel = ViewModelProvider(this)[ProjectGroupViewModel::class.java]
groupViewModel.groupData.observe(this) {
if (it.code == 200) {
bindRecyclerView(it)
}
}
+ groupViewModel.getProGroupList(requireContext())
+
groupViewModel.changeGroupResultData.observe(this) {
if (it.code == 200) {
groupListAdapter.notifyItemChanged(clickedPosition)
@@ -80,11 +92,11 @@
binding.emptyView.visibility = View.GONE
binding.recyclerView.visibility = View.VISIBLE
- groupListAdapter = object : NormalRecyclerAdapter(
+ groupListAdapter = object : NormalRecyclerAdapter(
R.layout.item_group_over_view_rv_l, it.data
) {
override fun convertView(
- viewHolder: ViewHolder, position: Int, item: ProjectGroupModel.DataModel
+ viewHolder: ViewHolder, position: Int, item: DataModel
) {
viewHolder.setText(R.id.groupNameView, item.groupId)
.setText(R.id.totalDeviceNumView, item.totalDevice)
@@ -96,43 +108,17 @@
}
if (item.latGaode.isBlank() || item.lngGaode.isBlank()) {
viewHolder.setText(
- R.id.groupLocationView,
- "经纬度异常,无法查看具体位置"
+ R.id.groupLocationView, "经纬度异常,无法查看具体位置"
)
} else {
- val point = LatLonPoint(
- item.latGaode.toDouble(), item.lngGaode.toDouble()
- )
- val queryParam = RegeocodeQuery(point, 200f, GeocodeSearch.AMAP)
- geocoderSearch.getFromLocationAsyn(queryParam)
- geocoderSearch.setOnGeocodeSearchListener(object :
- GeocodeSearch.OnGeocodeSearchListener {
- override fun onRegeocodeSearched(
- result: RegeocodeResult?, rCode: Int
- ) {
- if (rCode == 1000) {
- viewHolder.setText(
- R.id.groupLocationView,
- String.format("${result?.regeocodeAddress?.formatAddress}")
- )
- }
- }
-
- override fun onGeocodeSearched(
- result: GeocodeResult?, rCode: Int
- ) {
-
- }
- })
+ searchLocation(item, viewHolder)
}
}
}
binding.recyclerView.adapter = groupListAdapter
groupListAdapter.setOnItemClickedListener(object :
- NormalRecyclerAdapter.OnItemClickedListener {
- override fun onItemClicked(
- position: Int, item: ProjectGroupModel.DataModel
- ) {
+ NormalRecyclerAdapter.OnItemClickedListener {
+ override fun onItemClicked(position: Int, item: DataModel) {
requireContext().navigatePageTo(item.groupId)
}
})
@@ -141,7 +127,27 @@
}
}
- private fun editGroupName(item: ProjectGroupModel.DataModel) {
+ private fun searchLocation(item: DataModel, viewHolder: ViewHolder) {
+ val point = LatLonPoint(item.latGaode.toDouble(), item.lngGaode.toDouble())
+ val queryParam = RegeocodeQuery(point, 200f, GeocodeSearch.AMAP)
+ geocoderSearch.getFromLocationAsyn(queryParam)
+ geocoderSearch.setOnGeocodeSearchListener(object : GeocodeSearch.OnGeocodeSearchListener {
+ override fun onRegeocodeSearched(result: RegeocodeResult?, rCode: Int) {
+ if (rCode == 1000) {
+ viewHolder.setText(
+ R.id.groupLocationView,
+ String.format("${result?.regeocodeAddress?.formatAddress}")
+ )
+ }
+ }
+
+ override fun onGeocodeSearched(result: GeocodeResult?, rCode: Int) {
+
+ }
+ })
+ }
+
+ private fun editGroupName(item: DataModel) {
AlertInputDialog.Builder()
.setContext(requireContext())
.setTitle("提示")
diff --git a/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
index f01859a..05ceeb0 100644
--- a/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
@@ -75,7 +75,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
diff --git a/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt b/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
index 2352eb9..71ffaf7 100644
--- a/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
@@ -41,7 +41,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
diff --git a/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt b/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt
index 2b64158..03265ad 100644
--- a/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt
@@ -38,7 +38,7 @@
private lateinit var deviceAdapter: DeviceListAdapter
private val context = this
private val easyPopupWindow by lazy { EasyPopupWindow(this) }
- private val marginOffsets by lazy { 5.dp2px(this) }
+ private val marginOffsets by lazy { 6.dp2px(this) }
private var dataRows: MutableList = ArrayList()
private var page = 1
private var isRefresh = false
@@ -52,7 +52,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
@@ -226,7 +226,8 @@
binding.recyclerView.layoutManager = linearLayoutManager
binding.recyclerView.addItemDecoration(
RecyclerViewItemOffsets(
- marginOffsets, marginOffsets, marginOffsets, marginOffsets
+ marginOffsets, marginOffsets shr 1,
+ marginOffsets, marginOffsets shr 1
)
)
binding.recyclerView.adapter = deviceAdapter
diff --git a/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt b/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt
index fc20978..fb28d46 100644
--- a/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt
@@ -14,7 +14,7 @@
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
if (EasyPermissions.hasPermissions(this, *LocaleConstant.USER_PERMISSIONS)) {
- startSplashScreenActivity()
+ startLoginActivity()
} else {
EasyPermissions.requestPermissions(
this@PermissionActivity,
@@ -25,11 +25,11 @@
}
}
- private fun startSplashScreenActivity() {
+ private fun startLoginActivity() {
//先把导航隐私政策声明,后面导航会用到
NaviSetting.updatePrivacyShow(this, true, true)
NaviSetting.updatePrivacyAgree(this, true)
- navigatePageTo()
+ navigatePageTo()
finish()
}
@@ -41,7 +41,7 @@
}
override fun onPermissionsGranted(requestCode: Int, perms: List) {
- startSplashScreenActivity()
+ startLoginActivity()
}
override fun onPermissionsDenied(requestCode: Int, perms: List) {
diff --git a/app/src/main/java/com/casic/smarttube/view/SelectLocationActivity.kt b/app/src/main/java/com/casic/smarttube/view/SelectLocationActivity.kt
index 6570d2d..1d918f7 100644
--- a/app/src/main/java/com/casic/smarttube/view/SelectLocationActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/SelectLocationActivity.kt
@@ -31,7 +31,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.text = "手动选点"
binding.leftBackView.setOnClickListener { finish() }
}
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 0e14b09..101282b 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -53,7 +53,6 @@
-
diff --git a/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt b/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
index d507f87..3a1b260 100644
--- a/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
+++ b/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
@@ -13,11 +13,14 @@
import com.casic.smarttube.R
import com.casic.smarttube.databinding.FragmentOverviewBinding
import com.casic.smarttube.model.ProjectGroupModel
+import com.casic.smarttube.model.ProjectGroupModel.DataModel
import com.casic.smarttube.view.GroupDeviceActivity
import com.casic.smarttube.vm.ProjectGroupViewModel
import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter
import com.pengxh.kt.lite.adapter.ViewHolder
import com.pengxh.kt.lite.base.KotlinBaseFragment
+import com.pengxh.kt.lite.divider.RecyclerViewItemOffsets
+import com.pengxh.kt.lite.extensions.dp2px
import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.extensions.show
import com.pengxh.kt.lite.utils.LoadState
@@ -29,8 +32,9 @@
private val kTag = "OverviewFragment"
private val geocoderSearch by lazy { GeocodeSearch(requireContext()) }
+ private val marginOffsets by lazy { 6.dp2px(requireContext()) }
private lateinit var groupViewModel: ProjectGroupViewModel
- private lateinit var groupListAdapter: NormalRecyclerAdapter
+ private lateinit var groupListAdapter: NormalRecyclerAdapter
private var clickedPosition = 0
private var isRefresh = false
@@ -45,12 +49,20 @@
}
override fun initOnCreate(savedInstanceState: Bundle?) {
+ binding.recyclerView.addItemDecoration(
+ RecyclerViewItemOffsets(
+ marginOffsets, marginOffsets shr 1, marginOffsets, marginOffsets shr 1
+ )
+ )
+
groupViewModel = ViewModelProvider(this)[ProjectGroupViewModel::class.java]
groupViewModel.groupData.observe(this) {
if (it.code == 200) {
bindRecyclerView(it)
}
}
+ groupViewModel.getProGroupList(requireContext())
+
groupViewModel.changeGroupResultData.observe(this) {
if (it.code == 200) {
groupListAdapter.notifyItemChanged(clickedPosition)
@@ -80,11 +92,11 @@
binding.emptyView.visibility = View.GONE
binding.recyclerView.visibility = View.VISIBLE
- groupListAdapter = object : NormalRecyclerAdapter(
+ groupListAdapter = object : NormalRecyclerAdapter(
R.layout.item_group_over_view_rv_l, it.data
) {
override fun convertView(
- viewHolder: ViewHolder, position: Int, item: ProjectGroupModel.DataModel
+ viewHolder: ViewHolder, position: Int, item: DataModel
) {
viewHolder.setText(R.id.groupNameView, item.groupId)
.setText(R.id.totalDeviceNumView, item.totalDevice)
@@ -96,43 +108,17 @@
}
if (item.latGaode.isBlank() || item.lngGaode.isBlank()) {
viewHolder.setText(
- R.id.groupLocationView,
- "经纬度异常,无法查看具体位置"
+ R.id.groupLocationView, "经纬度异常,无法查看具体位置"
)
} else {
- val point = LatLonPoint(
- item.latGaode.toDouble(), item.lngGaode.toDouble()
- )
- val queryParam = RegeocodeQuery(point, 200f, GeocodeSearch.AMAP)
- geocoderSearch.getFromLocationAsyn(queryParam)
- geocoderSearch.setOnGeocodeSearchListener(object :
- GeocodeSearch.OnGeocodeSearchListener {
- override fun onRegeocodeSearched(
- result: RegeocodeResult?, rCode: Int
- ) {
- if (rCode == 1000) {
- viewHolder.setText(
- R.id.groupLocationView,
- String.format("${result?.regeocodeAddress?.formatAddress}")
- )
- }
- }
-
- override fun onGeocodeSearched(
- result: GeocodeResult?, rCode: Int
- ) {
-
- }
- })
+ searchLocation(item, viewHolder)
}
}
}
binding.recyclerView.adapter = groupListAdapter
groupListAdapter.setOnItemClickedListener(object :
- NormalRecyclerAdapter.OnItemClickedListener {
- override fun onItemClicked(
- position: Int, item: ProjectGroupModel.DataModel
- ) {
+ NormalRecyclerAdapter.OnItemClickedListener {
+ override fun onItemClicked(position: Int, item: DataModel) {
requireContext().navigatePageTo(item.groupId)
}
})
@@ -141,7 +127,27 @@
}
}
- private fun editGroupName(item: ProjectGroupModel.DataModel) {
+ private fun searchLocation(item: DataModel, viewHolder: ViewHolder) {
+ val point = LatLonPoint(item.latGaode.toDouble(), item.lngGaode.toDouble())
+ val queryParam = RegeocodeQuery(point, 200f, GeocodeSearch.AMAP)
+ geocoderSearch.getFromLocationAsyn(queryParam)
+ geocoderSearch.setOnGeocodeSearchListener(object : GeocodeSearch.OnGeocodeSearchListener {
+ override fun onRegeocodeSearched(result: RegeocodeResult?, rCode: Int) {
+ if (rCode == 1000) {
+ viewHolder.setText(
+ R.id.groupLocationView,
+ String.format("${result?.regeocodeAddress?.formatAddress}")
+ )
+ }
+ }
+
+ override fun onGeocodeSearched(result: GeocodeResult?, rCode: Int) {
+
+ }
+ })
+ }
+
+ private fun editGroupName(item: DataModel) {
AlertInputDialog.Builder()
.setContext(requireContext())
.setTitle("提示")
diff --git a/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
index f01859a..05ceeb0 100644
--- a/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
@@ -75,7 +75,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
diff --git a/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt b/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
index 2352eb9..71ffaf7 100644
--- a/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
@@ -41,7 +41,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
diff --git a/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt b/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt
index 2b64158..03265ad 100644
--- a/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt
@@ -38,7 +38,7 @@
private lateinit var deviceAdapter: DeviceListAdapter
private val context = this
private val easyPopupWindow by lazy { EasyPopupWindow(this) }
- private val marginOffsets by lazy { 5.dp2px(this) }
+ private val marginOffsets by lazy { 6.dp2px(this) }
private var dataRows: MutableList = ArrayList()
private var page = 1
private var isRefresh = false
@@ -52,7 +52,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
@@ -226,7 +226,8 @@
binding.recyclerView.layoutManager = linearLayoutManager
binding.recyclerView.addItemDecoration(
RecyclerViewItemOffsets(
- marginOffsets, marginOffsets, marginOffsets, marginOffsets
+ marginOffsets, marginOffsets shr 1,
+ marginOffsets, marginOffsets shr 1
)
)
binding.recyclerView.adapter = deviceAdapter
diff --git a/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt b/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt
index fc20978..fb28d46 100644
--- a/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt
@@ -14,7 +14,7 @@
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
if (EasyPermissions.hasPermissions(this, *LocaleConstant.USER_PERMISSIONS)) {
- startSplashScreenActivity()
+ startLoginActivity()
} else {
EasyPermissions.requestPermissions(
this@PermissionActivity,
@@ -25,11 +25,11 @@
}
}
- private fun startSplashScreenActivity() {
+ private fun startLoginActivity() {
//先把导航隐私政策声明,后面导航会用到
NaviSetting.updatePrivacyShow(this, true, true)
NaviSetting.updatePrivacyAgree(this, true)
- navigatePageTo()
+ navigatePageTo()
finish()
}
@@ -41,7 +41,7 @@
}
override fun onPermissionsGranted(requestCode: Int, perms: List) {
- startSplashScreenActivity()
+ startLoginActivity()
}
override fun onPermissionsDenied(requestCode: Int, perms: List) {
diff --git a/app/src/main/java/com/casic/smarttube/view/SelectLocationActivity.kt b/app/src/main/java/com/casic/smarttube/view/SelectLocationActivity.kt
index 6570d2d..1d918f7 100644
--- a/app/src/main/java/com/casic/smarttube/view/SelectLocationActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/SelectLocationActivity.kt
@@ -31,7 +31,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.text = "手动选点"
binding.leftBackView.setOnClickListener { finish() }
}
diff --git a/app/src/main/java/com/casic/smarttube/view/SplashScreenActivity.kt b/app/src/main/java/com/casic/smarttube/view/SplashScreenActivity.kt
deleted file mode 100644
index 91e8e64..0000000
--- a/app/src/main/java/com/casic/smarttube/view/SplashScreenActivity.kt
+++ /dev/null
@@ -1,56 +0,0 @@
-package com.casic.smarttube.view
-
-import android.annotation.SuppressLint
-import android.os.Bundle
-import android.os.CountDownTimer
-import androidx.lifecycle.ViewModelProvider
-import com.casic.smarttube.databinding.ActivitySplashBinding
-import com.casic.smarttube.vm.UserViewModel
-import com.gyf.immersionbar.ImmersionBar
-import com.pengxh.kt.lite.base.KotlinBaseActivity
-import com.pengxh.kt.lite.extensions.navigatePageTo
-import com.pengxh.kt.lite.utils.ActivityStackManager
-import com.pengxh.kt.lite.utils.LoadState
-
-@SuppressLint("CustomSplashScreen")
-class SplashScreenActivity : KotlinBaseActivity() {
-
- private lateinit var userDetailViewModel: UserViewModel
-
- override fun initViewBinding(): ActivitySplashBinding {
- return ActivitySplashBinding.inflate(layoutInflater)
- }
-
- override fun setupTopBarLayout() {
- ImmersionBar.with(this).statusBarDarkFont(false).init()
- }
-
- override fun initOnCreate(savedInstanceState: Bundle?) {
- ActivityStackManager.addActivity(this)
- userDetailViewModel = ViewModelProvider(this)[UserViewModel::class.java]
- }
-
- override fun observeRequestState() {
- userDetailViewModel.loadState.observe(this) {
- when (it) {
- LoadState.Success -> navigatePageTo()
- else -> navigatePageTo()
- }
- finish()
- }
- }
-
- override fun initEvent() {
- countDownTimer.start()
- }
-
- private val countDownTimer = object : CountDownTimer(1000, 500) {
- override fun onFinish() {
- userDetailViewModel.getUserDetail()
- }
-
- override fun onTick(millisUntilFinished: Long) {
-
- }
- }
-}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 0e14b09..101282b 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -53,7 +53,6 @@
-
diff --git a/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt b/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
index d507f87..3a1b260 100644
--- a/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
+++ b/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
@@ -13,11 +13,14 @@
import com.casic.smarttube.R
import com.casic.smarttube.databinding.FragmentOverviewBinding
import com.casic.smarttube.model.ProjectGroupModel
+import com.casic.smarttube.model.ProjectGroupModel.DataModel
import com.casic.smarttube.view.GroupDeviceActivity
import com.casic.smarttube.vm.ProjectGroupViewModel
import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter
import com.pengxh.kt.lite.adapter.ViewHolder
import com.pengxh.kt.lite.base.KotlinBaseFragment
+import com.pengxh.kt.lite.divider.RecyclerViewItemOffsets
+import com.pengxh.kt.lite.extensions.dp2px
import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.extensions.show
import com.pengxh.kt.lite.utils.LoadState
@@ -29,8 +32,9 @@
private val kTag = "OverviewFragment"
private val geocoderSearch by lazy { GeocodeSearch(requireContext()) }
+ private val marginOffsets by lazy { 6.dp2px(requireContext()) }
private lateinit var groupViewModel: ProjectGroupViewModel
- private lateinit var groupListAdapter: NormalRecyclerAdapter
+ private lateinit var groupListAdapter: NormalRecyclerAdapter
private var clickedPosition = 0
private var isRefresh = false
@@ -45,12 +49,20 @@
}
override fun initOnCreate(savedInstanceState: Bundle?) {
+ binding.recyclerView.addItemDecoration(
+ RecyclerViewItemOffsets(
+ marginOffsets, marginOffsets shr 1, marginOffsets, marginOffsets shr 1
+ )
+ )
+
groupViewModel = ViewModelProvider(this)[ProjectGroupViewModel::class.java]
groupViewModel.groupData.observe(this) {
if (it.code == 200) {
bindRecyclerView(it)
}
}
+ groupViewModel.getProGroupList(requireContext())
+
groupViewModel.changeGroupResultData.observe(this) {
if (it.code == 200) {
groupListAdapter.notifyItemChanged(clickedPosition)
@@ -80,11 +92,11 @@
binding.emptyView.visibility = View.GONE
binding.recyclerView.visibility = View.VISIBLE
- groupListAdapter = object : NormalRecyclerAdapter(
+ groupListAdapter = object : NormalRecyclerAdapter(
R.layout.item_group_over_view_rv_l, it.data
) {
override fun convertView(
- viewHolder: ViewHolder, position: Int, item: ProjectGroupModel.DataModel
+ viewHolder: ViewHolder, position: Int, item: DataModel
) {
viewHolder.setText(R.id.groupNameView, item.groupId)
.setText(R.id.totalDeviceNumView, item.totalDevice)
@@ -96,43 +108,17 @@
}
if (item.latGaode.isBlank() || item.lngGaode.isBlank()) {
viewHolder.setText(
- R.id.groupLocationView,
- "经纬度异常,无法查看具体位置"
+ R.id.groupLocationView, "经纬度异常,无法查看具体位置"
)
} else {
- val point = LatLonPoint(
- item.latGaode.toDouble(), item.lngGaode.toDouble()
- )
- val queryParam = RegeocodeQuery(point, 200f, GeocodeSearch.AMAP)
- geocoderSearch.getFromLocationAsyn(queryParam)
- geocoderSearch.setOnGeocodeSearchListener(object :
- GeocodeSearch.OnGeocodeSearchListener {
- override fun onRegeocodeSearched(
- result: RegeocodeResult?, rCode: Int
- ) {
- if (rCode == 1000) {
- viewHolder.setText(
- R.id.groupLocationView,
- String.format("${result?.regeocodeAddress?.formatAddress}")
- )
- }
- }
-
- override fun onGeocodeSearched(
- result: GeocodeResult?, rCode: Int
- ) {
-
- }
- })
+ searchLocation(item, viewHolder)
}
}
}
binding.recyclerView.adapter = groupListAdapter
groupListAdapter.setOnItemClickedListener(object :
- NormalRecyclerAdapter.OnItemClickedListener {
- override fun onItemClicked(
- position: Int, item: ProjectGroupModel.DataModel
- ) {
+ NormalRecyclerAdapter.OnItemClickedListener {
+ override fun onItemClicked(position: Int, item: DataModel) {
requireContext().navigatePageTo(item.groupId)
}
})
@@ -141,7 +127,27 @@
}
}
- private fun editGroupName(item: ProjectGroupModel.DataModel) {
+ private fun searchLocation(item: DataModel, viewHolder: ViewHolder) {
+ val point = LatLonPoint(item.latGaode.toDouble(), item.lngGaode.toDouble())
+ val queryParam = RegeocodeQuery(point, 200f, GeocodeSearch.AMAP)
+ geocoderSearch.getFromLocationAsyn(queryParam)
+ geocoderSearch.setOnGeocodeSearchListener(object : GeocodeSearch.OnGeocodeSearchListener {
+ override fun onRegeocodeSearched(result: RegeocodeResult?, rCode: Int) {
+ if (rCode == 1000) {
+ viewHolder.setText(
+ R.id.groupLocationView,
+ String.format("${result?.regeocodeAddress?.formatAddress}")
+ )
+ }
+ }
+
+ override fun onGeocodeSearched(result: GeocodeResult?, rCode: Int) {
+
+ }
+ })
+ }
+
+ private fun editGroupName(item: DataModel) {
AlertInputDialog.Builder()
.setContext(requireContext())
.setTitle("提示")
diff --git a/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
index f01859a..05ceeb0 100644
--- a/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
@@ -75,7 +75,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
diff --git a/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt b/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
index 2352eb9..71ffaf7 100644
--- a/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
@@ -41,7 +41,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
diff --git a/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt b/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt
index 2b64158..03265ad 100644
--- a/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt
@@ -38,7 +38,7 @@
private lateinit var deviceAdapter: DeviceListAdapter
private val context = this
private val easyPopupWindow by lazy { EasyPopupWindow(this) }
- private val marginOffsets by lazy { 5.dp2px(this) }
+ private val marginOffsets by lazy { 6.dp2px(this) }
private var dataRows: MutableList = ArrayList()
private var page = 1
private var isRefresh = false
@@ -52,7 +52,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
@@ -226,7 +226,8 @@
binding.recyclerView.layoutManager = linearLayoutManager
binding.recyclerView.addItemDecoration(
RecyclerViewItemOffsets(
- marginOffsets, marginOffsets, marginOffsets, marginOffsets
+ marginOffsets, marginOffsets shr 1,
+ marginOffsets, marginOffsets shr 1
)
)
binding.recyclerView.adapter = deviceAdapter
diff --git a/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt b/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt
index fc20978..fb28d46 100644
--- a/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt
@@ -14,7 +14,7 @@
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
if (EasyPermissions.hasPermissions(this, *LocaleConstant.USER_PERMISSIONS)) {
- startSplashScreenActivity()
+ startLoginActivity()
} else {
EasyPermissions.requestPermissions(
this@PermissionActivity,
@@ -25,11 +25,11 @@
}
}
- private fun startSplashScreenActivity() {
+ private fun startLoginActivity() {
//先把导航隐私政策声明,后面导航会用到
NaviSetting.updatePrivacyShow(this, true, true)
NaviSetting.updatePrivacyAgree(this, true)
- navigatePageTo()
+ navigatePageTo()
finish()
}
@@ -41,7 +41,7 @@
}
override fun onPermissionsGranted(requestCode: Int, perms: List) {
- startSplashScreenActivity()
+ startLoginActivity()
}
override fun onPermissionsDenied(requestCode: Int, perms: List) {
diff --git a/app/src/main/java/com/casic/smarttube/view/SelectLocationActivity.kt b/app/src/main/java/com/casic/smarttube/view/SelectLocationActivity.kt
index 6570d2d..1d918f7 100644
--- a/app/src/main/java/com/casic/smarttube/view/SelectLocationActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/SelectLocationActivity.kt
@@ -31,7 +31,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.text = "手动选点"
binding.leftBackView.setOnClickListener { finish() }
}
diff --git a/app/src/main/java/com/casic/smarttube/view/SplashScreenActivity.kt b/app/src/main/java/com/casic/smarttube/view/SplashScreenActivity.kt
deleted file mode 100644
index 91e8e64..0000000
--- a/app/src/main/java/com/casic/smarttube/view/SplashScreenActivity.kt
+++ /dev/null
@@ -1,56 +0,0 @@
-package com.casic.smarttube.view
-
-import android.annotation.SuppressLint
-import android.os.Bundle
-import android.os.CountDownTimer
-import androidx.lifecycle.ViewModelProvider
-import com.casic.smarttube.databinding.ActivitySplashBinding
-import com.casic.smarttube.vm.UserViewModel
-import com.gyf.immersionbar.ImmersionBar
-import com.pengxh.kt.lite.base.KotlinBaseActivity
-import com.pengxh.kt.lite.extensions.navigatePageTo
-import com.pengxh.kt.lite.utils.ActivityStackManager
-import com.pengxh.kt.lite.utils.LoadState
-
-@SuppressLint("CustomSplashScreen")
-class SplashScreenActivity : KotlinBaseActivity() {
-
- private lateinit var userDetailViewModel: UserViewModel
-
- override fun initViewBinding(): ActivitySplashBinding {
- return ActivitySplashBinding.inflate(layoutInflater)
- }
-
- override fun setupTopBarLayout() {
- ImmersionBar.with(this).statusBarDarkFont(false).init()
- }
-
- override fun initOnCreate(savedInstanceState: Bundle?) {
- ActivityStackManager.addActivity(this)
- userDetailViewModel = ViewModelProvider(this)[UserViewModel::class.java]
- }
-
- override fun observeRequestState() {
- userDetailViewModel.loadState.observe(this) {
- when (it) {
- LoadState.Success -> navigatePageTo()
- else -> navigatePageTo()
- }
- finish()
- }
- }
-
- override fun initEvent() {
- countDownTimer.start()
- }
-
- private val countDownTimer = object : CountDownTimer(1000, 500) {
- override fun onFinish() {
- userDetailViewModel.getUserDetail()
- }
-
- override fun onTick(millisUntilFinished: Long) {
-
- }
- }
-}
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_splash.xml b/app/src/main/res/layout/activity_splash.xml
deleted file mode 100644
index 0ce1ac3..0000000
--- a/app/src/main/res/layout/activity_splash.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 0e14b09..101282b 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -53,7 +53,6 @@
-
diff --git a/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt b/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
index d507f87..3a1b260 100644
--- a/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
+++ b/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
@@ -13,11 +13,14 @@
import com.casic.smarttube.R
import com.casic.smarttube.databinding.FragmentOverviewBinding
import com.casic.smarttube.model.ProjectGroupModel
+import com.casic.smarttube.model.ProjectGroupModel.DataModel
import com.casic.smarttube.view.GroupDeviceActivity
import com.casic.smarttube.vm.ProjectGroupViewModel
import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter
import com.pengxh.kt.lite.adapter.ViewHolder
import com.pengxh.kt.lite.base.KotlinBaseFragment
+import com.pengxh.kt.lite.divider.RecyclerViewItemOffsets
+import com.pengxh.kt.lite.extensions.dp2px
import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.extensions.show
import com.pengxh.kt.lite.utils.LoadState
@@ -29,8 +32,9 @@
private val kTag = "OverviewFragment"
private val geocoderSearch by lazy { GeocodeSearch(requireContext()) }
+ private val marginOffsets by lazy { 6.dp2px(requireContext()) }
private lateinit var groupViewModel: ProjectGroupViewModel
- private lateinit var groupListAdapter: NormalRecyclerAdapter
+ private lateinit var groupListAdapter: NormalRecyclerAdapter
private var clickedPosition = 0
private var isRefresh = false
@@ -45,12 +49,20 @@
}
override fun initOnCreate(savedInstanceState: Bundle?) {
+ binding.recyclerView.addItemDecoration(
+ RecyclerViewItemOffsets(
+ marginOffsets, marginOffsets shr 1, marginOffsets, marginOffsets shr 1
+ )
+ )
+
groupViewModel = ViewModelProvider(this)[ProjectGroupViewModel::class.java]
groupViewModel.groupData.observe(this) {
if (it.code == 200) {
bindRecyclerView(it)
}
}
+ groupViewModel.getProGroupList(requireContext())
+
groupViewModel.changeGroupResultData.observe(this) {
if (it.code == 200) {
groupListAdapter.notifyItemChanged(clickedPosition)
@@ -80,11 +92,11 @@
binding.emptyView.visibility = View.GONE
binding.recyclerView.visibility = View.VISIBLE
- groupListAdapter = object : NormalRecyclerAdapter(
+ groupListAdapter = object : NormalRecyclerAdapter(
R.layout.item_group_over_view_rv_l, it.data
) {
override fun convertView(
- viewHolder: ViewHolder, position: Int, item: ProjectGroupModel.DataModel
+ viewHolder: ViewHolder, position: Int, item: DataModel
) {
viewHolder.setText(R.id.groupNameView, item.groupId)
.setText(R.id.totalDeviceNumView, item.totalDevice)
@@ -96,43 +108,17 @@
}
if (item.latGaode.isBlank() || item.lngGaode.isBlank()) {
viewHolder.setText(
- R.id.groupLocationView,
- "经纬度异常,无法查看具体位置"
+ R.id.groupLocationView, "经纬度异常,无法查看具体位置"
)
} else {
- val point = LatLonPoint(
- item.latGaode.toDouble(), item.lngGaode.toDouble()
- )
- val queryParam = RegeocodeQuery(point, 200f, GeocodeSearch.AMAP)
- geocoderSearch.getFromLocationAsyn(queryParam)
- geocoderSearch.setOnGeocodeSearchListener(object :
- GeocodeSearch.OnGeocodeSearchListener {
- override fun onRegeocodeSearched(
- result: RegeocodeResult?, rCode: Int
- ) {
- if (rCode == 1000) {
- viewHolder.setText(
- R.id.groupLocationView,
- String.format("${result?.regeocodeAddress?.formatAddress}")
- )
- }
- }
-
- override fun onGeocodeSearched(
- result: GeocodeResult?, rCode: Int
- ) {
-
- }
- })
+ searchLocation(item, viewHolder)
}
}
}
binding.recyclerView.adapter = groupListAdapter
groupListAdapter.setOnItemClickedListener(object :
- NormalRecyclerAdapter.OnItemClickedListener {
- override fun onItemClicked(
- position: Int, item: ProjectGroupModel.DataModel
- ) {
+ NormalRecyclerAdapter.OnItemClickedListener {
+ override fun onItemClicked(position: Int, item: DataModel) {
requireContext().navigatePageTo(item.groupId)
}
})
@@ -141,7 +127,27 @@
}
}
- private fun editGroupName(item: ProjectGroupModel.DataModel) {
+ private fun searchLocation(item: DataModel, viewHolder: ViewHolder) {
+ val point = LatLonPoint(item.latGaode.toDouble(), item.lngGaode.toDouble())
+ val queryParam = RegeocodeQuery(point, 200f, GeocodeSearch.AMAP)
+ geocoderSearch.getFromLocationAsyn(queryParam)
+ geocoderSearch.setOnGeocodeSearchListener(object : GeocodeSearch.OnGeocodeSearchListener {
+ override fun onRegeocodeSearched(result: RegeocodeResult?, rCode: Int) {
+ if (rCode == 1000) {
+ viewHolder.setText(
+ R.id.groupLocationView,
+ String.format("${result?.regeocodeAddress?.formatAddress}")
+ )
+ }
+ }
+
+ override fun onGeocodeSearched(result: GeocodeResult?, rCode: Int) {
+
+ }
+ })
+ }
+
+ private fun editGroupName(item: DataModel) {
AlertInputDialog.Builder()
.setContext(requireContext())
.setTitle("提示")
diff --git a/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
index f01859a..05ceeb0 100644
--- a/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
@@ -75,7 +75,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
diff --git a/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt b/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
index 2352eb9..71ffaf7 100644
--- a/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
@@ -41,7 +41,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
diff --git a/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt b/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt
index 2b64158..03265ad 100644
--- a/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt
@@ -38,7 +38,7 @@
private lateinit var deviceAdapter: DeviceListAdapter
private val context = this
private val easyPopupWindow by lazy { EasyPopupWindow(this) }
- private val marginOffsets by lazy { 5.dp2px(this) }
+ private val marginOffsets by lazy { 6.dp2px(this) }
private var dataRows: MutableList = ArrayList()
private var page = 1
private var isRefresh = false
@@ -52,7 +52,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
@@ -226,7 +226,8 @@
binding.recyclerView.layoutManager = linearLayoutManager
binding.recyclerView.addItemDecoration(
RecyclerViewItemOffsets(
- marginOffsets, marginOffsets, marginOffsets, marginOffsets
+ marginOffsets, marginOffsets shr 1,
+ marginOffsets, marginOffsets shr 1
)
)
binding.recyclerView.adapter = deviceAdapter
diff --git a/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt b/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt
index fc20978..fb28d46 100644
--- a/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt
@@ -14,7 +14,7 @@
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
if (EasyPermissions.hasPermissions(this, *LocaleConstant.USER_PERMISSIONS)) {
- startSplashScreenActivity()
+ startLoginActivity()
} else {
EasyPermissions.requestPermissions(
this@PermissionActivity,
@@ -25,11 +25,11 @@
}
}
- private fun startSplashScreenActivity() {
+ private fun startLoginActivity() {
//先把导航隐私政策声明,后面导航会用到
NaviSetting.updatePrivacyShow(this, true, true)
NaviSetting.updatePrivacyAgree(this, true)
- navigatePageTo()
+ navigatePageTo()
finish()
}
@@ -41,7 +41,7 @@
}
override fun onPermissionsGranted(requestCode: Int, perms: List) {
- startSplashScreenActivity()
+ startLoginActivity()
}
override fun onPermissionsDenied(requestCode: Int, perms: List) {
diff --git a/app/src/main/java/com/casic/smarttube/view/SelectLocationActivity.kt b/app/src/main/java/com/casic/smarttube/view/SelectLocationActivity.kt
index 6570d2d..1d918f7 100644
--- a/app/src/main/java/com/casic/smarttube/view/SelectLocationActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/SelectLocationActivity.kt
@@ -31,7 +31,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.text = "手动选点"
binding.leftBackView.setOnClickListener { finish() }
}
diff --git a/app/src/main/java/com/casic/smarttube/view/SplashScreenActivity.kt b/app/src/main/java/com/casic/smarttube/view/SplashScreenActivity.kt
deleted file mode 100644
index 91e8e64..0000000
--- a/app/src/main/java/com/casic/smarttube/view/SplashScreenActivity.kt
+++ /dev/null
@@ -1,56 +0,0 @@
-package com.casic.smarttube.view
-
-import android.annotation.SuppressLint
-import android.os.Bundle
-import android.os.CountDownTimer
-import androidx.lifecycle.ViewModelProvider
-import com.casic.smarttube.databinding.ActivitySplashBinding
-import com.casic.smarttube.vm.UserViewModel
-import com.gyf.immersionbar.ImmersionBar
-import com.pengxh.kt.lite.base.KotlinBaseActivity
-import com.pengxh.kt.lite.extensions.navigatePageTo
-import com.pengxh.kt.lite.utils.ActivityStackManager
-import com.pengxh.kt.lite.utils.LoadState
-
-@SuppressLint("CustomSplashScreen")
-class SplashScreenActivity : KotlinBaseActivity() {
-
- private lateinit var userDetailViewModel: UserViewModel
-
- override fun initViewBinding(): ActivitySplashBinding {
- return ActivitySplashBinding.inflate(layoutInflater)
- }
-
- override fun setupTopBarLayout() {
- ImmersionBar.with(this).statusBarDarkFont(false).init()
- }
-
- override fun initOnCreate(savedInstanceState: Bundle?) {
- ActivityStackManager.addActivity(this)
- userDetailViewModel = ViewModelProvider(this)[UserViewModel::class.java]
- }
-
- override fun observeRequestState() {
- userDetailViewModel.loadState.observe(this) {
- when (it) {
- LoadState.Success -> navigatePageTo()
- else -> navigatePageTo()
- }
- finish()
- }
- }
-
- override fun initEvent() {
- countDownTimer.start()
- }
-
- private val countDownTimer = object : CountDownTimer(1000, 500) {
- override fun onFinish() {
- userDetailViewModel.getUserDetail()
- }
-
- override fun onTick(millisUntilFinished: Long) {
-
- }
- }
-}
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_splash.xml b/app/src/main/res/layout/activity_splash.xml
deleted file mode 100644
index 0ce1ac3..0000000
--- a/app/src/main/res/layout/activity_splash.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/item_device_rv_l.xml b/app/src/main/res/layout/item_device_rv_l.xml
index 66114f8..e5f361f 100644
--- a/app/src/main/res/layout/item_device_rv_l.xml
+++ b/app/src/main/res/layout/item_device_rv_l.xml
@@ -4,7 +4,8 @@
android:layout_height="wrap_content"
android:background="@drawable/bg_solid_layout_white_radius_10"
android:orientation="vertical"
- android:padding="@dimen/dp_5">
+ android:paddingHorizontal="@dimen/dp_7"
+ android:paddingVertical="@dimen/dp_3">
-
-
-
-
+ android:inset="0dp"
+ android:padding="0dp"
+ android:text="历史数据"
+ android:textSize="@dimen/sp_12" />
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 0e14b09..101282b 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -53,7 +53,6 @@
-
diff --git a/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt b/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
index d507f87..3a1b260 100644
--- a/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
+++ b/app/src/main/java/com/casic/smarttube/fragment/OverviewFragment.kt
@@ -13,11 +13,14 @@
import com.casic.smarttube.R
import com.casic.smarttube.databinding.FragmentOverviewBinding
import com.casic.smarttube.model.ProjectGroupModel
+import com.casic.smarttube.model.ProjectGroupModel.DataModel
import com.casic.smarttube.view.GroupDeviceActivity
import com.casic.smarttube.vm.ProjectGroupViewModel
import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter
import com.pengxh.kt.lite.adapter.ViewHolder
import com.pengxh.kt.lite.base.KotlinBaseFragment
+import com.pengxh.kt.lite.divider.RecyclerViewItemOffsets
+import com.pengxh.kt.lite.extensions.dp2px
import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.extensions.show
import com.pengxh.kt.lite.utils.LoadState
@@ -29,8 +32,9 @@
private val kTag = "OverviewFragment"
private val geocoderSearch by lazy { GeocodeSearch(requireContext()) }
+ private val marginOffsets by lazy { 6.dp2px(requireContext()) }
private lateinit var groupViewModel: ProjectGroupViewModel
- private lateinit var groupListAdapter: NormalRecyclerAdapter
+ private lateinit var groupListAdapter: NormalRecyclerAdapter
private var clickedPosition = 0
private var isRefresh = false
@@ -45,12 +49,20 @@
}
override fun initOnCreate(savedInstanceState: Bundle?) {
+ binding.recyclerView.addItemDecoration(
+ RecyclerViewItemOffsets(
+ marginOffsets, marginOffsets shr 1, marginOffsets, marginOffsets shr 1
+ )
+ )
+
groupViewModel = ViewModelProvider(this)[ProjectGroupViewModel::class.java]
groupViewModel.groupData.observe(this) {
if (it.code == 200) {
bindRecyclerView(it)
}
}
+ groupViewModel.getProGroupList(requireContext())
+
groupViewModel.changeGroupResultData.observe(this) {
if (it.code == 200) {
groupListAdapter.notifyItemChanged(clickedPosition)
@@ -80,11 +92,11 @@
binding.emptyView.visibility = View.GONE
binding.recyclerView.visibility = View.VISIBLE
- groupListAdapter = object : NormalRecyclerAdapter(
+ groupListAdapter = object : NormalRecyclerAdapter(
R.layout.item_group_over_view_rv_l, it.data
) {
override fun convertView(
- viewHolder: ViewHolder, position: Int, item: ProjectGroupModel.DataModel
+ viewHolder: ViewHolder, position: Int, item: DataModel
) {
viewHolder.setText(R.id.groupNameView, item.groupId)
.setText(R.id.totalDeviceNumView, item.totalDevice)
@@ -96,43 +108,17 @@
}
if (item.latGaode.isBlank() || item.lngGaode.isBlank()) {
viewHolder.setText(
- R.id.groupLocationView,
- "经纬度异常,无法查看具体位置"
+ R.id.groupLocationView, "经纬度异常,无法查看具体位置"
)
} else {
- val point = LatLonPoint(
- item.latGaode.toDouble(), item.lngGaode.toDouble()
- )
- val queryParam = RegeocodeQuery(point, 200f, GeocodeSearch.AMAP)
- geocoderSearch.getFromLocationAsyn(queryParam)
- geocoderSearch.setOnGeocodeSearchListener(object :
- GeocodeSearch.OnGeocodeSearchListener {
- override fun onRegeocodeSearched(
- result: RegeocodeResult?, rCode: Int
- ) {
- if (rCode == 1000) {
- viewHolder.setText(
- R.id.groupLocationView,
- String.format("${result?.regeocodeAddress?.formatAddress}")
- )
- }
- }
-
- override fun onGeocodeSearched(
- result: GeocodeResult?, rCode: Int
- ) {
-
- }
- })
+ searchLocation(item, viewHolder)
}
}
}
binding.recyclerView.adapter = groupListAdapter
groupListAdapter.setOnItemClickedListener(object :
- NormalRecyclerAdapter.OnItemClickedListener {
- override fun onItemClicked(
- position: Int, item: ProjectGroupModel.DataModel
- ) {
+ NormalRecyclerAdapter.OnItemClickedListener {
+ override fun onItemClicked(position: Int, item: DataModel) {
requireContext().navigatePageTo(item.groupId)
}
})
@@ -141,7 +127,27 @@
}
}
- private fun editGroupName(item: ProjectGroupModel.DataModel) {
+ private fun searchLocation(item: DataModel, viewHolder: ViewHolder) {
+ val point = LatLonPoint(item.latGaode.toDouble(), item.lngGaode.toDouble())
+ val queryParam = RegeocodeQuery(point, 200f, GeocodeSearch.AMAP)
+ geocoderSearch.getFromLocationAsyn(queryParam)
+ geocoderSearch.setOnGeocodeSearchListener(object : GeocodeSearch.OnGeocodeSearchListener {
+ override fun onRegeocodeSearched(result: RegeocodeResult?, rCode: Int) {
+ if (rCode == 1000) {
+ viewHolder.setText(
+ R.id.groupLocationView,
+ String.format("${result?.regeocodeAddress?.formatAddress}")
+ )
+ }
+ }
+
+ override fun onGeocodeSearched(result: GeocodeResult?, rCode: Int) {
+
+ }
+ })
+ }
+
+ private fun editGroupName(item: DataModel) {
AlertInputDialog.Builder()
.setContext(requireContext())
.setTitle("提示")
diff --git a/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
index f01859a..05ceeb0 100644
--- a/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/AddDeviceActivity.kt
@@ -75,7 +75,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
diff --git a/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt b/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
index 2352eb9..71ffaf7 100644
--- a/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/DeviceDetailActivity.kt
@@ -41,7 +41,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
diff --git a/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt b/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt
index 2b64158..03265ad 100644
--- a/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/GroupDeviceActivity.kt
@@ -38,7 +38,7 @@
private lateinit var deviceAdapter: DeviceListAdapter
private val context = this
private val easyPopupWindow by lazy { EasyPopupWindow(this) }
- private val marginOffsets by lazy { 5.dp2px(this) }
+ private val marginOffsets by lazy { 6.dp2px(this) }
private var dataRows: MutableList = ArrayList()
private var page = 1
private var isRefresh = false
@@ -52,7 +52,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.setOnClickListener(object : TitleBarView.OnClickListener {
override fun onLeftClick() {
finish()
@@ -226,7 +226,8 @@
binding.recyclerView.layoutManager = linearLayoutManager
binding.recyclerView.addItemDecoration(
RecyclerViewItemOffsets(
- marginOffsets, marginOffsets, marginOffsets, marginOffsets
+ marginOffsets, marginOffsets shr 1,
+ marginOffsets, marginOffsets shr 1
)
)
binding.recyclerView.adapter = deviceAdapter
diff --git a/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt b/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt
index fc20978..fb28d46 100644
--- a/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/PermissionActivity.kt
@@ -14,7 +14,7 @@
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
if (EasyPermissions.hasPermissions(this, *LocaleConstant.USER_PERMISSIONS)) {
- startSplashScreenActivity()
+ startLoginActivity()
} else {
EasyPermissions.requestPermissions(
this@PermissionActivity,
@@ -25,11 +25,11 @@
}
}
- private fun startSplashScreenActivity() {
+ private fun startLoginActivity() {
//先把导航隐私政策声明,后面导航会用到
NaviSetting.updatePrivacyShow(this, true, true)
NaviSetting.updatePrivacyAgree(this, true)
- navigatePageTo()
+ navigatePageTo()
finish()
}
@@ -41,7 +41,7 @@
}
override fun onPermissionsGranted(requestCode: Int, perms: List) {
- startSplashScreenActivity()
+ startLoginActivity()
}
override fun onPermissionsDenied(requestCode: Int, perms: List) {
diff --git a/app/src/main/java/com/casic/smarttube/view/SelectLocationActivity.kt b/app/src/main/java/com/casic/smarttube/view/SelectLocationActivity.kt
index 6570d2d..1d918f7 100644
--- a/app/src/main/java/com/casic/smarttube/view/SelectLocationActivity.kt
+++ b/app/src/main/java/com/casic/smarttube/view/SelectLocationActivity.kt
@@ -31,7 +31,7 @@
}
override fun setupTopBarLayout() {
- binding.rootView.initImmersionBar(this, true, R.color.mainThemeColor)
+ binding.rootView.initImmersionBar(this, false, R.color.mainThemeColor)
binding.titleView.text = "手动选点"
binding.leftBackView.setOnClickListener { finish() }
}
diff --git a/app/src/main/java/com/casic/smarttube/view/SplashScreenActivity.kt b/app/src/main/java/com/casic/smarttube/view/SplashScreenActivity.kt
deleted file mode 100644
index 91e8e64..0000000
--- a/app/src/main/java/com/casic/smarttube/view/SplashScreenActivity.kt
+++ /dev/null
@@ -1,56 +0,0 @@
-package com.casic.smarttube.view
-
-import android.annotation.SuppressLint
-import android.os.Bundle
-import android.os.CountDownTimer
-import androidx.lifecycle.ViewModelProvider
-import com.casic.smarttube.databinding.ActivitySplashBinding
-import com.casic.smarttube.vm.UserViewModel
-import com.gyf.immersionbar.ImmersionBar
-import com.pengxh.kt.lite.base.KotlinBaseActivity
-import com.pengxh.kt.lite.extensions.navigatePageTo
-import com.pengxh.kt.lite.utils.ActivityStackManager
-import com.pengxh.kt.lite.utils.LoadState
-
-@SuppressLint("CustomSplashScreen")
-class SplashScreenActivity : KotlinBaseActivity() {
-
- private lateinit var userDetailViewModel: UserViewModel
-
- override fun initViewBinding(): ActivitySplashBinding {
- return ActivitySplashBinding.inflate(layoutInflater)
- }
-
- override fun setupTopBarLayout() {
- ImmersionBar.with(this).statusBarDarkFont(false).init()
- }
-
- override fun initOnCreate(savedInstanceState: Bundle?) {
- ActivityStackManager.addActivity(this)
- userDetailViewModel = ViewModelProvider(this)[UserViewModel::class.java]
- }
-
- override fun observeRequestState() {
- userDetailViewModel.loadState.observe(this) {
- when (it) {
- LoadState.Success -> navigatePageTo()
- else -> navigatePageTo()
- }
- finish()
- }
- }
-
- override fun initEvent() {
- countDownTimer.start()
- }
-
- private val countDownTimer = object : CountDownTimer(1000, 500) {
- override fun onFinish() {
- userDetailViewModel.getUserDetail()
- }
-
- override fun onTick(millisUntilFinished: Long) {
-
- }
- }
-}
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_splash.xml b/app/src/main/res/layout/activity_splash.xml
deleted file mode 100644
index 0ce1ac3..0000000
--- a/app/src/main/res/layout/activity_splash.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/item_device_rv_l.xml b/app/src/main/res/layout/item_device_rv_l.xml
index 66114f8..e5f361f 100644
--- a/app/src/main/res/layout/item_device_rv_l.xml
+++ b/app/src/main/res/layout/item_device_rv_l.xml
@@ -4,7 +4,8 @@
android:layout_height="wrap_content"
android:background="@drawable/bg_solid_layout_white_radius_10"
android:orientation="vertical"
- android:padding="@dimen/dp_5">
+ android:paddingHorizontal="@dimen/dp_7"
+ android:paddingVertical="@dimen/dp_3">
-
-
-
-
+ android:inset="0dp"
+ android:padding="0dp"
+ android:text="历史数据"
+ android:textSize="@dimen/sp_12" />
\ No newline at end of file
diff --git a/app/src/main/res/layout/item_group_over_view_rv_l.xml b/app/src/main/res/layout/item_group_over_view_rv_l.xml
index c1d6c17..1133069 100644
--- a/app/src/main/res/layout/item_group_over_view_rv_l.xml
+++ b/app/src/main/res/layout/item_group_over_view_rv_l.xml
@@ -1,85 +1,112 @@
-
+ android:background="@drawable/bg_solid_layout_white_radius_10"
+ android:orientation="vertical"
+ android:padding="@dimen/dp_5">
+ android:orientation="horizontal">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
+ android:text="已被激活: " />
-
-
-
-
-
-
-
-
-
+ android:textColor="@color/greenColor" />
-
+ android:text="未被激活: " />
-
-
-
-
-
-
-
-
+ android:layout_marginHorizontal="@dimen/dp_5"
+ android:fontFamily="sans-serif-black"
+ android:text="999"
+ android:textColor="@color/orangeTextColor" />
-
-
-
-
-
-
+
-
\ No newline at end of file
+