Commit d4c83198 authored by 马乐's avatar 马乐

1.完善用户设置标签设置

parent 1d65e955
...@@ -3,9 +3,12 @@ package com.waytous.anticollision.di ...@@ -3,9 +3,12 @@ package com.waytous.anticollision.di
import android.content.Context import android.content.Context
import android.view.LayoutInflater import android.view.LayoutInflater
import com.waytous.anticollision.R import com.waytous.anticollision.R
import com.waytous.anticollision.databinding.FixedInfoLayoutBinding
import com.waytous.anticollision.databinding.LayoutMapBoxBinding import com.waytous.anticollision.databinding.LayoutMapBoxBinding
import com.waytous.anticollision.databinding.NetworkSettingsLayoutBinding
import com.waytous.anticollision.databinding.RadioTabCollectBinding import com.waytous.anticollision.databinding.RadioTabCollectBinding
import com.waytous.anticollision.databinding.RadioTabSettingsBinding import com.waytous.anticollision.databinding.RadioTabSettingsBinding
import com.waytous.anticollision.databinding.VehicleInfoLayoutBinding
import dagger.Module import dagger.Module
import dagger.Provides import dagger.Provides
import dagger.hilt.InstallIn import dagger.hilt.InstallIn
...@@ -15,7 +18,7 @@ import dagger.hilt.android.scopes.ActivityScoped ...@@ -15,7 +18,7 @@ import dagger.hilt.android.scopes.ActivityScoped
@InstallIn(ActivityComponent::class) @InstallIn(ActivityComponent::class)
@Module @Module
object FragmentModule { object UiModule {
@ActivityScoped @ActivityScoped
@Provides @Provides
...@@ -43,4 +46,31 @@ object FragmentModule { ...@@ -43,4 +46,31 @@ object FragmentModule {
} }
return RadioTabSettingsBinding.inflate(layoutInflater,null,false) return RadioTabSettingsBinding.inflate(layoutInflater,null,false)
} }
@ActivityScoped
@Provides
fun provideRadioTabVehicleInfo(@ActivityContext context: Context): VehicleInfoLayoutBinding {
val layoutInflater = LayoutInflater.from(context).also {
it.inflate(R.layout.vehicle_info_layout,null)
}
return VehicleInfoLayoutBinding.inflate(layoutInflater,null,false)
}
@ActivityScoped
@Provides
fun provideRadioTabNetSettings(@ActivityContext context: Context): NetworkSettingsLayoutBinding {
val layoutInflater = LayoutInflater.from(context).also {
it.inflate(R.layout.network_settings_layout,null)
}
return NetworkSettingsLayoutBinding.inflate(layoutInflater,null,false)
}
@ActivityScoped
@Provides
fun provideRadioTabFixedInfo(@ActivityContext context: Context): FixedInfoLayoutBinding {
val layoutInflater = LayoutInflater.from(context).also {
it.inflate(R.layout.fixed_info_layout,null)
}
return FixedInfoLayoutBinding.inflate(layoutInflater,null,false)
}
} }
\ No newline at end of file
package com.waytous.anticollision.ui.settings package com.waytous.anticollision.ui.settings
import android.os.Bundle import android.os.Bundle
import android.view.View
import android.view.View.OnClickListener
import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.app.AppCompatActivity
import com.blankj.utilcode.util.BarUtils import com.blankj.utilcode.util.BarUtils
import com.blankj.utilcode.util.ScreenUtils import com.blankj.utilcode.util.ScreenUtils
import com.waytous.anticollision.R
import com.waytous.anticollision.databinding.ActivityUserSettingsBinding import com.waytous.anticollision.databinding.ActivityUserSettingsBinding
import com.waytous.anticollision.databinding.FixedInfoLayoutBinding
import com.waytous.anticollision.databinding.NetworkSettingsLayoutBinding
import com.waytous.anticollision.databinding.VehicleInfoLayoutBinding
import com.waytous.anticollision.ui.view.ButtonMorePopup
import dagger.hilt.android.AndroidEntryPoint
import javax.inject.Inject
class UserSettingsActivity : AppCompatActivity() { @AndroidEntryPoint
class UserSettingsActivity : AppCompatActivity(),OnClickListener{
lateinit var binding: ActivityUserSettingsBinding lateinit var binding: ActivityUserSettingsBinding
@Inject
lateinit var vehicleInfoBinding: VehicleInfoLayoutBinding
@Inject
lateinit var netSettingsBinding: NetworkSettingsLayoutBinding
@Inject
lateinit var fixedInfoBinding: FixedInfoLayoutBinding
lateinit var popupMoreFeatures: ButtonMorePopup
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState) super.onCreate(savedInstanceState)
ScreenUtils.setFullScreen(this) ScreenUtils.setFullScreen(this)
BarUtils.setNavBarVisibility(this,false) BarUtils.setNavBarVisibility(this, false)
binding = ActivityUserSettingsBinding.inflate(layoutInflater) binding = ActivityUserSettingsBinding.inflate(layoutInflater)
setContentView(binding.root) setContentView(binding.root)
initTabLayout()
popupMoreFeatures = ButtonMorePopup(this).also {
it.bindLifecycleOwner(this)
}
binding.more.setOnClickListener(this)
binding.goHome.setOnClickListener(this)
}
override fun onClick(v: View?) {
when(v){
binding.more -> popupMoreFeatures.showPopupWindow(binding.more)
binding.goHome -> finish()
}
}
private fun initTabLayout() {
binding.tabContent.addView(vehicleInfoBinding.root)
binding.tabContent.setPadding(resources.getDimension(R.dimen.dp_26).toInt(),0,0,0)
binding.tabContainer.setOnCheckedChangeListener { _, checkedId ->
binding.tabContent.removeAllViews()
when (checkedId) {
R.id.tabVehicleInfo -> {
binding.tabContent.setPadding(resources.getDimension(R.dimen.dp_26).toInt(),0,0,0)
binding.tabContent.addView(vehicleInfoBinding.root)
}
R.id.tabNetwork -> {
binding.tabContent.setPadding(resources.getDimension(R.dimen.dp_39).toInt(),0,0,0)
binding.tabContent.addView(netSettingsBinding.root)
}
R.id.tabFixedInfo -> {
binding.tabContent.setPadding(resources.getDimension(R.dimen.dp_26).toInt(),0,0,0)
binding.tabContent.addView(fixedInfoBinding.root)
}
}
}
} }
} }
\ No newline at end of file
...@@ -83,11 +83,10 @@ ...@@ -83,11 +83,10 @@
</RadioGroup> </RadioGroup>
<FrameLayout <FrameLayout
android:id="@+id/tabContent" android:id="@+id/tabContent"
android:layout_width="@dimen/dp_0" android:layout_width="wrap_content"
android:layout_height="@dimen/dp_0" android:layout_height="wrap_content"
app:layout_constraintTop_toTopOf="@id/tabContainer" app:layout_constraintTop_toTopOf="@id/tabContainer"
app:layout_constraintBottom_toBottomOf="@id/tabContainer" app:layout_constraintStart_toEndOf="@id/tabContainer"/>
app:layout_constraintStart_toStartOf="@id/tabContainer"/>
<androidx.appcompat.widget.AppCompatImageView <androidx.appcompat.widget.AppCompatImageView
android:id="@+id/more" android:id="@+id/more"
android:layout_width="wrap_content" android:layout_width="wrap_content"
......
...@@ -4,8 +4,7 @@ ...@@ -4,8 +4,7 @@
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="@dimen/dp_578" android:layout_height="@dimen/dp_578"
android:layout_marginStart="@dimen/dp_26" tools:context=".ui.settings.UserSettingsActivity">
tools:context=".ui.settings.UserSettingsFragment">
<androidx.appcompat.widget.AppCompatTextView <androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
......
...@@ -4,9 +4,8 @@ ...@@ -4,9 +4,8 @@
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="@dimen/dp_578" android:layout_height="@dimen/dp_578"
android:layout_marginStart="@dimen/dp_39"
android:orientation="vertical" android:orientation="vertical"
tools:context=".ui.settings.UserSettingsFragment"> tools:context=".ui.settings.UserSettingsActivity">
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/networkLayout1" android:id="@+id/networkLayout1"
android:layout_width="@dimen/dp_1072" android:layout_width="@dimen/dp_1072"
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="@dimen/dp_578" android:layout_height="@dimen/dp_578"
android:layout_marginStart="@dimen/dp_26" android:layout_marginStart="@dimen/dp_26"
tools:context=".ui.settings.UserSettingsFragment"> tools:context=".ui.settings.UserSettingsActivity">
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/vehicleInfoLayout1" android:id="@+id/vehicleInfoLayout1"
android:layout_width="@dimen/dp_364" android:layout_width="@dimen/dp_364"
...@@ -160,7 +160,7 @@ ...@@ -160,7 +160,7 @@
android:id="@+id/vehicleInfoImage" android:id="@+id/vehicleInfoImage"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="51dp" android:layout_marginStart="@dimen/dp_51"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@id/vehicleInfoLayout1" app:layout_constraintStart_toEndOf="@id/vehicleInfoLayout1"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintTop_toTopOf="parent"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment