commit 优化代码

pull/57/head
ca1e 6 years ago
parent db800b9884
commit 5800460169
  1. 1
      app/src/main/java/io/legado/app/constant/Bus.kt
  2. 2
      app/src/main/java/io/legado/app/ui/book/read/config/ReadStyleDialog.kt
  3. 5
      app/src/main/java/io/legado/app/ui/config/ConfigFragment.kt
  4. 21
      app/src/main/java/io/legado/app/ui/main/MainActivity.kt
  5. 5
      app/src/main/java/io/legado/app/ui/widget/page/PageView.kt
  6. 3
      app/src/main/java/io/legado/app/utils/ContextExtensions.kt
  7. 1
      app/src/main/res/values/strings.xml

@ -17,4 +17,5 @@ object Bus {
const val AUDIO_PROGRESS = "audioProgress" const val AUDIO_PROGRESS = "audioProgress"
const val AUDIO_SIZE = "audioSize" const val AUDIO_SIZE = "audioSize"
const val AUDIO_SPEED = "audioSpeed" const val AUDIO_SPEED = "audioSpeed"
const val SHOW_RSS = "showRss"
} }

@ -182,7 +182,7 @@ class ReadStyleDialog : DialogFragment() {
requireContext().putPrefInt("pageAnim", i) requireContext().putPrefInt("pageAnim", i)
val activity = activity val activity = activity
if (activity is ReadBookActivity) { if (activity is ReadBookActivity) {
activity.page_view.upPageAnim() activity.page_view.upPageAnim(i)
} }
break break
} }

@ -10,6 +10,7 @@ import androidx.preference.Preference
import androidx.preference.PreferenceFragmentCompat import androidx.preference.PreferenceFragmentCompat
import io.legado.app.App import io.legado.app.App
import io.legado.app.R import io.legado.app.R
import io.legado.app.constant.Bus
import io.legado.app.constant.PreferKey import io.legado.app.constant.PreferKey
import io.legado.app.help.BookHelp import io.legado.app.help.BookHelp
import io.legado.app.help.FileHelp import io.legado.app.help.FileHelp
@ -65,7 +66,7 @@ class ConfigFragment : PreferenceFragmentCompat(),
FileHelp.deleteFile(it) FileHelp.deleteFile(it)
FileHelp.getFolder(it) FileHelp.getFolder(it)
} }
toast("成功清理缓存") toast(R.string.clear_cache_success)
} }
} }
return super.onPreferenceTreeClick(preference) return super.onPreferenceTreeClick(preference)
@ -81,7 +82,7 @@ class ConfigFragment : PreferenceFragmentCompat(),
PreferKey.processText -> sharedPreferences?.let { PreferKey.processText -> sharedPreferences?.let {
setProcessTextEnable(it.getBoolean("process_text", true)) setProcessTextEnable(it.getBoolean("process_text", true))
} }
PreferKey.showRss -> postEvent(PreferKey.showRss, PreferKey.showRss) PreferKey.showRss -> postEvent(Bus.SHOW_RSS, "unused")
} }
} }

@ -13,7 +13,6 @@ import io.legado.app.BuildConfig
import io.legado.app.R import io.legado.app.R
import io.legado.app.base.VMBaseActivity import io.legado.app.base.VMBaseActivity
import io.legado.app.constant.Bus import io.legado.app.constant.Bus
import io.legado.app.constant.PreferKey
import io.legado.app.help.ActivityHelp import io.legado.app.help.ActivityHelp
import io.legado.app.help.storage.Backup import io.legado.app.help.storage.Backup
import io.legado.app.lib.theme.ATH import io.legado.app.lib.theme.ATH
@ -45,7 +44,7 @@ class MainActivity : VMBaseActivity<MainViewModel>(R.layout.activity_main),
view_pager_main.adapter = TabFragmentPageAdapter(supportFragmentManager) view_pager_main.adapter = TabFragmentPageAdapter(supportFragmentManager)
view_pager_main.addOnPageChangeListener(this) view_pager_main.addOnPageChangeListener(this)
bottom_navigation_view.setOnNavigationItemSelectedListener(this) bottom_navigation_view.setOnNavigationItemSelectedListener(this)
bottom_navigation_view.menu.findItem(R.id.menu_rss).isVisible = showRss() bottom_navigation_view.menu.findItem(R.id.menu_rss).isVisible = isShowRSS
upVersion() upVersion()
} }
@ -66,10 +65,10 @@ class MainActivity : VMBaseActivity<MainViewModel>(R.layout.activity_main),
fragmentList.add(RssFragment()) fragmentList.add(RssFragment())
fragmentList.add(MyFragment()) fragmentList.add(MyFragment())
} }
if (showRss() && fragmentList.size < 4) { if (isShowRSS && fragmentList.size < 4) {
fragmentList.add(2, RssFragment()) fragmentList.add(2, RssFragment())
} }
if (!showRss() && fragmentList.size == 4) { if (!isShowRSS && fragmentList.size == 4) {
fragmentList.removeAt(2) fragmentList.removeAt(2)
} }
} }
@ -87,7 +86,7 @@ class MainActivity : VMBaseActivity<MainViewModel>(R.layout.activity_main),
pagePosition = position pagePosition = position
when (position) { when (position) {
0, 1, 3 -> bottom_navigation_view.menu.getItem(position).isChecked = true 0, 1, 3 -> bottom_navigation_view.menu.getItem(position).isChecked = true
2 -> if (showRss()) { 2 -> if (isShowRSS) {
bottom_navigation_view.menu.getItem(position).isChecked = true bottom_navigation_view.menu.getItem(position).isChecked = true
} else { } else {
bottom_navigation_view.menu.getItem(3).isChecked = true bottom_navigation_view.menu.getItem(3).isChecked = true
@ -133,20 +132,16 @@ class MainActivity : VMBaseActivity<MainViewModel>(R.layout.activity_main),
observeEvent<String>(Bus.RECREATE) { observeEvent<String>(Bus.RECREATE) {
recreate() recreate()
} }
observeEvent<String>(PreferKey.showRss) { observeEvent<String>(Bus.SHOW_RSS) {
bottom_navigation_view.menu.findItem(R.id.menu_rss).isVisible = showRss() bottom_navigation_view.menu.findItem(R.id.menu_rss).isVisible = isShowRSS
upFragmentList() upFragmentList()
view_pager_main.adapter?.notifyDataSetChanged() view_pager_main.adapter?.notifyDataSetChanged()
if (showRss()) { if (isShowRSS) {
view_pager_main.setCurrentItem(3, false) view_pager_main.setCurrentItem(3, false)
} }
} }
} }
private fun showRss(): Boolean {
return getPrefBoolean("showRss", true)
}
private inner class TabFragmentPageAdapter internal constructor(fm: FragmentManager) : private inner class TabFragmentPageAdapter internal constructor(fm: FragmentManager) :
FragmentStatePagerAdapter(fm, BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT) { FragmentStatePagerAdapter(fm, BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT) {
@ -159,7 +154,7 @@ class MainActivity : VMBaseActivity<MainViewModel>(R.layout.activity_main),
} }
override fun getCount(): Int { override fun getCount(): Int {
return if (showRss()) 4 else 3 return if (isShowRSS) 4 else 3
} }
} }

@ -11,7 +11,6 @@ import io.legado.app.service.help.ReadBook
import io.legado.app.ui.widget.page.curl.CurlView import io.legado.app.ui.widget.page.curl.CurlView
import io.legado.app.ui.widget.page.delegate.* import io.legado.app.ui.widget.page.delegate.*
import io.legado.app.utils.activity import io.legado.app.utils.activity
import io.legado.app.utils.getPrefInt
class PageView(context: Context, attrs: AttributeSet) : class PageView(context: Context, attrs: AttributeSet) :
FrameLayout(context, attrs), FrameLayout(context, attrs),
@ -89,13 +88,13 @@ class PageView(context: Context, attrs: AttributeSet) :
} }
} }
fun upPageAnim() { fun upPageAnim(pageAnim: Int = 0) {
if (curlView != null) { if (curlView != null) {
removeView(curlView) removeView(curlView)
curlView = null curlView = null
} }
pageDelegate = null pageDelegate = null
pageDelegate = when (context.getPrefInt("pageAnim")) { pageDelegate = when (pageAnim) {
0 -> CoverPageDelegate(this) 0 -> CoverPageDelegate(this)
1 -> SlidePageDelegate(this) 1 -> SlidePageDelegate(this)
2 -> SimulationPageDelegate(this) 2 -> SimulationPageDelegate(this)

@ -65,3 +65,6 @@ val Context.isNightTheme: Boolean
val Context.isTransparentStatusBar: Boolean val Context.isTransparentStatusBar: Boolean
get() = getPrefBoolean("transparentStatusBar", true) get() = getPrefBoolean("transparentStatusBar", true)
val Context.isShowRSS: Boolean
get() = getPrefBoolean("showRss", true)

@ -160,6 +160,7 @@
<string name="author_show">作者:%s</string> <string name="author_show">作者:%s</string>
<string name="aloud_stop">朗读停止</string> <string name="aloud_stop">朗读停止</string>
<string name="clear_cache">清除缓存</string> <string name="clear_cache">清除缓存</string>
<string name="clear_cache_success">成功清理缓存</string>
<string name="action_save">保存</string> <string name="action_save">保存</string>
<string name="edit_source">编辑源</string> <string name="edit_source">编辑源</string>
<string name="edit_book_source">编辑书源</string> <string name="edit_book_source">编辑书源</string>

Loading…
Cancel
Save