提交代码

This commit is contained in:
squallzhjch 2023-01-06 14:17:33 +08:00
parent 0da95021ce
commit 67da166279
9 changed files with 28 additions and 17 deletions

View File

@ -36,6 +36,8 @@ interface GreetingMessageDao {
val id = getMessageId(message.id) val id = getMessageId(message.id)
if (id == 0L) { if (id == 0L) {
insert(message) insert(message)
}else{
update(message)
} }
} }
} }

View File

@ -1,14 +1,12 @@
package com.navinfo.volvo.ui package com.navinfo.volvo.ui
import android.content.DialogInterface import android.content.DialogInterface
import android.content.Intent
import android.os.Bundle import android.os.Bundle
import android.view.View import android.view.View
import android.widget.Toast import android.widget.Toast
import androidx.activity.viewModels import androidx.activity.viewModels
import androidx.appcompat.app.AppCompatActivity
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.lifecycleScope import androidx.lifecycle.lifecycleScope
import androidx.lifecycle.viewModelScope
import androidx.navigation.findNavController import androidx.navigation.findNavController
import androidx.navigation.ui.AppBarConfiguration import androidx.navigation.ui.AppBarConfiguration
import androidx.navigation.ui.setupActionBarWithNavController import androidx.navigation.ui.setupActionBarWithNavController
@ -32,12 +30,10 @@ import com.hjq.permissions.Permission
import com.hjq.permissions.XXPermissions import com.hjq.permissions.XXPermissions
import com.navinfo.volvo.R import com.navinfo.volvo.R
import com.navinfo.volvo.databinding.ActivityMainBinding import com.navinfo.volvo.databinding.ActivityMainBinding
import com.navinfo.volvo.ui.message.MessageActivity
import com.navinfo.volvo.utils.SystemConstant import com.navinfo.volvo.utils.SystemConstant
import dagger.hilt.android.AndroidEntryPoint import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.flow.collect
import kotlinx.coroutines.flow.collectLatest
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
import javax.inject.Inject
@AndroidEntryPoint @AndroidEntryPoint
class MainActivity : BaseActivity() { class MainActivity : BaseActivity() {
@ -100,12 +96,12 @@ class MainActivity : BaseActivity() {
setupActionBarWithNavController(navController, appBarConfiguration) setupActionBarWithNavController(navController, appBarConfiguration)
navView.setupWithNavController(navController) navView.setupWithNavController(navController)
lifecycleScope.launch{ lifecycleScope.launch {
viewModel.getUnreadCount().collect { viewModel.getUnreadCount().collect {
runOnUiThread{ runOnUiThread {
if(it == 0L){ if (it == 0L) {
navView.removeBadge(R.id.navigation_home) navView.removeBadge(R.id.navigation_home)
}else{ } else {
var badge = navView.getOrCreateBadge(R.id.navigation_home); var badge = navView.getOrCreateBadge(R.id.navigation_home);
badge.number = it.toInt() badge.number = it.toInt()
} }
@ -117,7 +113,6 @@ class MainActivity : BaseActivity() {
if (destination.id == R.id.navigation_home if (destination.id == R.id.navigation_home
|| destination.id == R.id.navigation_dashboard || destination.id == R.id.navigation_dashboard
|| destination.id == R.id.navigation_notifications || destination.id == R.id.navigation_notifications
|| destination.id == R.id.navigation_obtain_message
) { ) {
runOnUiThread { runOnUiThread {
navView.visibility = View.VISIBLE navView.visibility = View.VISIBLE
@ -130,6 +125,11 @@ class MainActivity : BaseActivity() {
} }
} }
} }
binding.newMessageFab.setOnClickListener {
// val intent: Intent = Intent(this@MainActivity, MessageActivity::class.java)
// startActivity(intent)
navController.navigate(R.id.navigation_obtain_message)
}
} }
override fun onSupportNavigateUp() = override fun onSupportNavigateUp() =

View File

@ -29,7 +29,6 @@ class LoginFragment : BaseFragment() {
container: ViewGroup?, container: ViewGroup?,
savedInstanceState: Bundle? savedInstanceState: Bundle?
): View { ): View {
viewBinding = FragmentLoginBinding.inflate(inflater, container, false) viewBinding = FragmentLoginBinding.inflate(inflater, container, false)
val root: View = binding.root val root: View = binding.root
binding.loginFragmentRegisterButton.setOnClickListener { binding.loginFragmentRegisterButton.setOnClickListener {

View File

@ -512,6 +512,7 @@ class ObtainMessageFragment: Fragment() {
obtainMessageViewModel.insertCardByApp() obtainMessageViewModel.insertCardByApp()
} else { } else {
obtainMessageViewModel.updateCardByApp() obtainMessageViewModel.updateCardByApp()
} }
} }
} }

View File

@ -22,9 +22,10 @@ import okhttp3.RequestBody
import java.io.File import java.io.File
import java.io.FileInputStream import java.io.FileInputStream
import java.util.* import java.util.*
import javax.inject.Inject
class ObtainMessageViewModel: ViewModel() { class ObtainMessageViewModel @Inject constructor(): ViewModel() {
private val msgLiveData: MutableLiveData<GreetingMessage> by lazy { private val msgLiveData: MutableLiveData<GreetingMessage> by lazy {
MutableLiveData<GreetingMessage>() MutableLiveData<GreetingMessage>()
} }

View File

@ -24,7 +24,6 @@
</com.google.android.material.textfield.TextInputLayout> </com.google.android.material.textfield.TextInputLayout>
<com.yanzhenjie.recyclerview.SwipeRecyclerView <com.yanzhenjie.recyclerview.SwipeRecyclerView
android:background="@color/gray1"
android:id="@+id/home_recyclerview" android:id="@+id/home_recyclerview"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="0dp" android:layout_height="0dp"

View File

@ -25,6 +25,6 @@
<item <item
android:id="@+id/navigation_obtain_message" android:id="@+id/navigation_obtain_message"
android:icon="@drawable/ic_baseline_mail_24" android:icon="@drawable/ic_baseline_mail_24"
android:title="消息" /> android:title="我的" />
</menu> </menu>

View File

@ -1,9 +1,18 @@
<resources> <resources>
<string name="app_name">NavinfoVolvo</string> <string name="app_name">VolvoMessage</string>
<string name="title_home">问候</string> <string name="title_home">问候</string>
<string name="title_dashboard">Dashboard</string> <string name="title_dashboard">Dashboard</string>
<string name="title_notifications">Notifications</string> <string name="title_notifications">Notifications</string>
<string name="delete">删除</string> <string name="delete">删除</string>
<string name="share">分享</string> <string name="share">分享</string>
<string name="my">我的</string> <string name="my">我的</string>
<string name="title_activity_second">SecondActivity</string>
<!-- Strings used for fragments for navigation -->
<string name="first_fragment_label">First Fragment</string>
<string name="second_fragment_label">Second Fragment</string>
<string name="next">Next</string>
<string name="previous">Previous</string>
<string name="hello_first_fragment">Hello first fragment</string>
<string name="hello_second_fragment">Hello second fragment. Arg: %1$s</string>
</resources> </resources>

View File

@ -1,5 +1,5 @@
<resources> <resources>
<string name="app_name">NavinfoVolvo</string> <string name="app_name">VolvoMessage</string>
<string name="title_home">Message</string> <string name="title_home">Message</string>
<string name="title_dashboard">Dashboard</string> <string name="title_dashboard">Dashboard</string>
<string name="title_notifications">Notifications</string> <string name="title_notifications">Notifications</string>