pull/60/head
kunfei 6 years ago
parent 2c24d4c9f4
commit 0de6928a8f
  1. 3
      app/src/main/AndroidManifest.xml
  2. 12
      app/src/main/java/io/legado/app/base/BaseActivity.kt
  3. 4
      app/src/main/java/io/legado/app/base/VMBaseActivity.kt
  4. 2
      app/src/main/java/io/legado/app/ui/book/info/BookInfoActivity.kt
  5. 7
      app/src/main/res/values/styles.xml

@ -78,8 +78,7 @@
<activity
android:name=".ui.about.DonateActivity"
android:launchMode="singleTask" />
<activity android:name=".ui.book.info.BookInfoActivity"
android:theme="@style/AppTheme.BookInfo" />
<activity android:name=".ui.book.info.BookInfoActivity" />
<activity android:name="io.legado.app.ui.book.info.edit.BookInfoEditActivity" />
<activity android:name=".ui.book.source.debug.BookSourceDebugActivity" />
<activity android:name=".ui.book.source.manage.BookSourceActivity">

@ -22,7 +22,7 @@ import kotlinx.coroutines.cancel
abstract class BaseActivity(
private val layoutID: Int,
private val fullScreen: Boolean = true,
private val initTheme: Boolean = true
private val theme: Theme = Theme.Auto
) : AppCompatActivity(),
CoroutineScope by MainScope() {
@ -76,8 +76,10 @@ abstract class BaseActivity(
private fun initTheme() {
ATH.applyBackgroundTint(window.decorView)
if (initTheme) {
if (ColorUtils.isColorLight(primaryColor)) {
when (theme) {
Theme.Dark -> setTheme(R.style.AppTheme_Dark)
Theme.Light -> setTheme(R.style.AppTheme_Light)
else -> if (ColorUtils.isColorLight(primaryColor)) {
setTheme(R.style.AppTheme_Light)
} else {
setTheme(R.style.AppTheme_Dark)
@ -105,4 +107,8 @@ abstract class BaseActivity(
currentFocus?.hideSoftInput()
super.finish()
}
enum class Theme {
Dark, Light, Auto
}
}

@ -5,8 +5,8 @@ import androidx.lifecycle.ViewModel
abstract class VMBaseActivity<VM : ViewModel>(
layoutID: Int,
fullScreen: Boolean = true,
initTheme: Boolean = true
) : BaseActivity(layoutID, fullScreen, initTheme) {
theme: Theme = Theme.Auto
) : BaseActivity(layoutID, fullScreen, theme) {
protected abstract val viewModel: VM

@ -36,7 +36,7 @@ import org.jetbrains.anko.toast
class BookInfoActivity :
VMBaseActivity<BookInfoViewModel>(R.layout.activity_book_info, initTheme = false),
VMBaseActivity<BookInfoViewModel>(R.layout.activity_book_info, theme = Theme.Dark),
GroupSelectDialog.CallBack,
ChapterListAdapter.CallBack,
ChangeSourceDialog.CallBack {

@ -23,12 +23,6 @@
<item name="android:windowNoTitle">true</item>
</style>
<!-- BookInfo主题 -->
<style name="AppTheme.BookInfo" parent="Base.AppTheme">
<item name="actionBarStyle">@style/AppTheme.AppBarOverlay.Dark</item>
<item name="elevation">0dp</item><!--去掉toolbar阴影,去线留白-->
</style>
<!-- Base application theme. -->
<style name="Base.AppTheme" parent="Theme.AppCompat.DayNight.NoActionBar">
<item name="colorPrimary">@color/colorPrimary</item>
@ -39,6 +33,7 @@
<item name="android:popupMenuStyle">@style/Style.PopupMenu</item>
<item name="android:statusBarColor">@color/transparent</item>
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
<item name="elevation">0dp</item>
</style>
<style name="AppTheme.AppBarOverlay.Light" parent="ThemeOverlay.AppCompat.Light">

Loading…
Cancel
Save