mirror of
https://github.com/gedoor/legado.git
synced 2025-08-10 00:52:30 +00:00
优化
This commit is contained in:
@@ -191,7 +191,8 @@ class SearchActivity : VMBaseActivity<ActivityBookSearchBinding, SearchViewModel
|
||||
}
|
||||
|
||||
override fun onQueryTextChange(newText: String): Boolean {
|
||||
if (newText.isBlank()) viewModel.stop()
|
||||
viewModel.stop()
|
||||
binding.fbStartStop.invisible()
|
||||
upHistory(newText.trim())
|
||||
return false
|
||||
}
|
||||
@@ -246,15 +247,19 @@ class SearchActivity : VMBaseActivity<ActivityBookSearchBinding, SearchViewModel
|
||||
}
|
||||
|
||||
private fun initOtherView() {
|
||||
binding.fbStop.backgroundTintList =
|
||||
binding.fbStartStop.backgroundTintList =
|
||||
Selector.colorBuild()
|
||||
.setDefaultColor(accentColor)
|
||||
.setPressedColor(ColorUtils.darkenColor(accentColor))
|
||||
.create()
|
||||
binding.fbStop.setOnClickListener {
|
||||
isManualStopSearch = true
|
||||
viewModel.stop()
|
||||
binding.refreshProgressBar.isAutoLoading = false
|
||||
binding.fbStartStop.setOnClickListener {
|
||||
if (viewModel.isSearchLiveData.value == true) {
|
||||
isManualStopSearch = true
|
||||
viewModel.stop()
|
||||
binding.refreshProgressBar.isAutoLoading = false
|
||||
} else {
|
||||
viewModel.search("")
|
||||
}
|
||||
}
|
||||
binding.tvClearHistory.setOnClickListener { alertClearHistory() }
|
||||
}
|
||||
@@ -374,7 +379,8 @@ class SearchActivity : VMBaseActivity<ActivityBookSearchBinding, SearchViewModel
|
||||
private fun startSearch() {
|
||||
binding.refreshProgressBar.visible()
|
||||
binding.refreshProgressBar.isAutoLoading = true
|
||||
binding.fbStop.visible()
|
||||
binding.fbStartStop.setImageResource(R.drawable.ic_stop_black_24dp)
|
||||
binding.fbStartStop.visible()
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -383,7 +389,11 @@ class SearchActivity : VMBaseActivity<ActivityBookSearchBinding, SearchViewModel
|
||||
private fun searchFinally() {
|
||||
binding.refreshProgressBar.isAutoLoading = false
|
||||
binding.refreshProgressBar.gone()
|
||||
binding.fbStop.invisible()
|
||||
if (viewModel.hasMore) {
|
||||
binding.fbStartStop.setImageResource(R.drawable.ic_play_24dp)
|
||||
} else {
|
||||
binding.fbStartStop.invisible()
|
||||
}
|
||||
}
|
||||
|
||||
override fun observeLiveBus() {
|
||||
|
||||
@@ -47,9 +47,9 @@ class SearchViewModel(application: Application) : BaseViewModel(application) {
|
||||
}
|
||||
|
||||
override fun onSearchFinish(isEmpty: Boolean, hasMore: Boolean) {
|
||||
this@SearchViewModel.hasMore = hasMore
|
||||
isSearchLiveData.postValue(false)
|
||||
searchFinishLiveData.postValue(isEmpty)
|
||||
this@SearchViewModel.hasMore = hasMore
|
||||
}
|
||||
|
||||
override fun onSearchCancel(exception: Throwable?) {
|
||||
|
||||
@@ -94,7 +94,7 @@
|
||||
</LinearLayout>
|
||||
|
||||
<com.google.android.material.floatingactionbutton.FloatingActionButton
|
||||
android:id="@+id/fb_stop"
|
||||
android:id="@+id/fb_start_stop"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="16dp"
|
||||
|
||||
Reference in New Issue
Block a user