From 32d5db15591e53972d7872498a41c218c7e95855 Mon Sep 17 00:00:00 2001 From: gedoor Date: Tue, 4 Jun 2019 20:48:55 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/java/io/legado/app/ui/main/MainActivity.kt | 9 --------- 1 file changed, 9 deletions(-) diff --git a/app/src/main/java/io/legado/app/ui/main/MainActivity.kt b/app/src/main/java/io/legado/app/ui/main/MainActivity.kt index c63b53d05..884ed8c30 100644 --- a/app/src/main/java/io/legado/app/ui/main/MainActivity.kt +++ b/app/src/main/java/io/legado/app/ui/main/MainActivity.kt @@ -46,15 +46,6 @@ class MainActivity : BaseActivity(), BottomNavigationView.OnNavig return false } - override fun onCompatCreateOptionsMenu(menu: Menu): Boolean { - menuInflater.inflate(R.menu.main, menu) - return super.onCompatCreateOptionsMenu(menu) - } - - override fun onCompatOptionsItemSelected(item: MenuItem): Boolean { - return super.onCompatOptionsItemSelected(item) - } - private fun importYueDu() { PermissionsCompat.Builder(this) .addPermissions(*Permissions.Group.STORAGE) From 6e804e7b11b94664732f457fe247509e99a95b83 Mon Sep 17 00:00:00 2001 From: gedoor Date: Tue, 4 Jun 2019 21:02:29 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/ui/main/bookshelf/BookshelfFragment.kt | 10 +++++++++- .../app/ui/main/booksource/BookSourceFragment.kt | 11 ++++++++++- .../app/ui/main/findbook/FindBookFragment.kt | 11 ++++++++++- .../app/ui/main/myconfig/MyConfigFragment.kt | 11 ++++++++++- .../main/res/menu/{main.xml => book_source.xml} | 0 app/src/main/res/menu/bookshelf.xml | 15 +++++++++++++++ app/src/main/res/menu/find_book.xml | 15 +++++++++++++++ app/src/main/res/menu/my_config.xml | 15 +++++++++++++++ 8 files changed, 84 insertions(+), 4 deletions(-) rename app/src/main/res/menu/{main.xml => book_source.xml} (100%) create mode 100644 app/src/main/res/menu/bookshelf.xml create mode 100644 app/src/main/res/menu/find_book.xml create mode 100644 app/src/main/res/menu/my_config.xml diff --git a/app/src/main/java/io/legado/app/ui/main/bookshelf/BookshelfFragment.kt b/app/src/main/java/io/legado/app/ui/main/bookshelf/BookshelfFragment.kt index 88c59221b..7d3d21755 100644 --- a/app/src/main/java/io/legado/app/ui/main/bookshelf/BookshelfFragment.kt +++ b/app/src/main/java/io/legado/app/ui/main/bookshelf/BookshelfFragment.kt @@ -2,16 +2,24 @@ package io.legado.app.ui.main.bookshelf import android.os.Bundle import android.util.Log +import android.view.MenuItem import android.view.View +import androidx.appcompat.widget.Toolbar import androidx.fragment.app.Fragment import io.legado.app.R +import kotlinx.android.synthetic.main.view_titlebar.* -class BookshelfFragment : Fragment(R.layout.fragment_bookshelf) { +class BookshelfFragment : Fragment(R.layout.fragment_bookshelf), Toolbar.OnMenuItemClickListener { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) Log.e("TAG", "BookshelfFragment") + toolbar.inflateMenu(R.menu.bookshelf) + toolbar.setOnMenuItemClickListener(this) + } + override fun onMenuItemClick(item: MenuItem?): Boolean { + return false } diff --git a/app/src/main/java/io/legado/app/ui/main/booksource/BookSourceFragment.kt b/app/src/main/java/io/legado/app/ui/main/booksource/BookSourceFragment.kt index 7f0195ab9..7e00b19c9 100644 --- a/app/src/main/java/io/legado/app/ui/main/booksource/BookSourceFragment.kt +++ b/app/src/main/java/io/legado/app/ui/main/booksource/BookSourceFragment.kt @@ -2,15 +2,24 @@ package io.legado.app.ui.main.booksource import android.os.Bundle import android.util.Log +import android.view.MenuItem import android.view.View +import androidx.appcompat.widget.Toolbar import androidx.fragment.app.Fragment import io.legado.app.R +import kotlinx.android.synthetic.main.view_titlebar.* -class BookSourceFragment : Fragment(R.layout.fragment_book_source) { +class BookSourceFragment : Fragment(R.layout.fragment_book_source), Toolbar.OnMenuItemClickListener { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) Log.e("TAG", "BookSourceFragment") + toolbar.inflateMenu(R.menu.book_source) + toolbar.setOnMenuItemClickListener(this) + } + + override fun onMenuItemClick(item: MenuItem?): Boolean { + return false } } \ No newline at end of file diff --git a/app/src/main/java/io/legado/app/ui/main/findbook/FindBookFragment.kt b/app/src/main/java/io/legado/app/ui/main/findbook/FindBookFragment.kt index ce2140978..3650f62f9 100644 --- a/app/src/main/java/io/legado/app/ui/main/findbook/FindBookFragment.kt +++ b/app/src/main/java/io/legado/app/ui/main/findbook/FindBookFragment.kt @@ -2,15 +2,24 @@ package io.legado.app.ui.main.findbook import android.os.Bundle import android.util.Log +import android.view.MenuItem import android.view.View +import androidx.appcompat.widget.Toolbar import androidx.fragment.app.Fragment import io.legado.app.R +import kotlinx.android.synthetic.main.view_titlebar.* -class FindBookFragment : Fragment(R.layout.fragment_find_book) { +class FindBookFragment : Fragment(R.layout.fragment_find_book), Toolbar.OnMenuItemClickListener { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) Log.e("TAG", "FindBookFragment") + toolbar.inflateMenu(R.menu.find_book) + toolbar.setOnMenuItemClickListener(this) + } + + override fun onMenuItemClick(item: MenuItem?): Boolean { + return false } } \ No newline at end of file diff --git a/app/src/main/java/io/legado/app/ui/main/myconfig/MyConfigFragment.kt b/app/src/main/java/io/legado/app/ui/main/myconfig/MyConfigFragment.kt index 052f1324a..45ca2ee4f 100644 --- a/app/src/main/java/io/legado/app/ui/main/myconfig/MyConfigFragment.kt +++ b/app/src/main/java/io/legado/app/ui/main/myconfig/MyConfigFragment.kt @@ -2,15 +2,24 @@ package io.legado.app.ui.main.myconfig import android.os.Bundle import android.util.Log +import android.view.MenuItem import android.view.View +import androidx.appcompat.widget.Toolbar import androidx.fragment.app.Fragment import io.legado.app.R +import kotlinx.android.synthetic.main.view_titlebar.* -class MyConfigFragment : Fragment(R.layout.fragment_my_config) { +class MyConfigFragment : Fragment(R.layout.fragment_my_config), Toolbar.OnMenuItemClickListener { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) Log.e("TAG", "MyConfigFragment") + toolbar.inflateMenu(R.menu.my_config) + toolbar.setOnMenuItemClickListener(this) + } + + override fun onMenuItemClick(item: MenuItem?): Boolean { + return false } } \ No newline at end of file diff --git a/app/src/main/res/menu/main.xml b/app/src/main/res/menu/book_source.xml similarity index 100% rename from app/src/main/res/menu/main.xml rename to app/src/main/res/menu/book_source.xml diff --git a/app/src/main/res/menu/bookshelf.xml b/app/src/main/res/menu/bookshelf.xml new file mode 100644 index 000000000..8c69ffa8e --- /dev/null +++ b/app/src/main/res/menu/bookshelf.xml @@ -0,0 +1,15 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/menu/find_book.xml b/app/src/main/res/menu/find_book.xml new file mode 100644 index 000000000..ffa80409c --- /dev/null +++ b/app/src/main/res/menu/find_book.xml @@ -0,0 +1,15 @@ + + + + + + + diff --git a/app/src/main/res/menu/my_config.xml b/app/src/main/res/menu/my_config.xml new file mode 100644 index 000000000..ffa80409c --- /dev/null +++ b/app/src/main/res/menu/my_config.xml @@ -0,0 +1,15 @@ + + + + + + + From 6bb230acb6aa2232440e0884fcdae9ea1bf9f337 Mon Sep 17 00:00:00 2001 From: gedoor Date: Tue, 4 Jun 2019 22:52:22 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/ui/main/myconfig/MyConfigFragment.kt | 26 +++++++++++++++++++ .../io/legado/app/utils/MenuExtensions.kt | 2 ++ .../res/drawable/ic_live_help_black_24dp.xml | 9 +++++++ app/src/main/res/menu/bookshelf.xml | 4 +-- app/src/main/res/menu/my_config.xml | 13 +++------- app/src/main/res/values/strings.xml | 1 + 6 files changed, 44 insertions(+), 11 deletions(-) create mode 100644 app/src/main/java/io/legado/app/utils/MenuExtensions.kt create mode 100644 app/src/main/res/drawable/ic_live_help_black_24dp.xml diff --git a/app/src/main/java/io/legado/app/ui/main/myconfig/MyConfigFragment.kt b/app/src/main/java/io/legado/app/ui/main/myconfig/MyConfigFragment.kt index 45ca2ee4f..2d431297d 100644 --- a/app/src/main/java/io/legado/app/ui/main/myconfig/MyConfigFragment.kt +++ b/app/src/main/java/io/legado/app/ui/main/myconfig/MyConfigFragment.kt @@ -4,9 +4,17 @@ import android.os.Bundle import android.util.Log import android.view.MenuItem import android.view.View +import androidx.appcompat.view.menu.MenuBuilder +import androidx.appcompat.view.menu.MenuItemImpl import androidx.appcompat.widget.Toolbar +import androidx.core.view.forEach import androidx.fragment.app.Fragment import io.legado.app.R +import io.legado.app.lib.theme.ColorUtils +import io.legado.app.lib.theme.DrawableUtils +import io.legado.app.lib.theme.ThemeStore +import io.legado.app.lib.theme.getPrimaryTextColor +import io.legado.app.utils.getCompatColor import kotlinx.android.synthetic.main.view_titlebar.* class MyConfigFragment : Fragment(R.layout.fragment_my_config), Toolbar.OnMenuItemClickListener { @@ -15,6 +23,24 @@ class MyConfigFragment : Fragment(R.layout.fragment_my_config), Toolbar.OnMenuIt super.onViewCreated(view, savedInstanceState) Log.e("TAG", "MyConfigFragment") toolbar.inflateMenu(R.menu.my_config) + toolbar.menu?.let { + if (it is MenuBuilder) { + it.setOptionalIconsVisible(true) + } + context?.let { context -> + val primaryTextColor = getPrimaryTextColor(ColorUtils.isColorLight(ThemeStore.primaryColor(context))) + val defaultTextColor = getCompatColor(R.color.tv_text_default) + it.forEach { item -> + (item as MenuItemImpl).let { impl -> + //overflow:展开的item + DrawableUtils.setTint( + impl.icon, + if (impl.requiresOverflow()) defaultTextColor else primaryTextColor + ) + } + } + } + } toolbar.setOnMenuItemClickListener(this) } diff --git a/app/src/main/java/io/legado/app/utils/MenuExtensions.kt b/app/src/main/java/io/legado/app/utils/MenuExtensions.kt new file mode 100644 index 000000000..656da42d1 --- /dev/null +++ b/app/src/main/java/io/legado/app/utils/MenuExtensions.kt @@ -0,0 +1,2 @@ +package io.legado.app.utils + diff --git a/app/src/main/res/drawable/ic_live_help_black_24dp.xml b/app/src/main/res/drawable/ic_live_help_black_24dp.xml new file mode 100644 index 000000000..74f549430 --- /dev/null +++ b/app/src/main/res/drawable/ic_live_help_black_24dp.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/menu/bookshelf.xml b/app/src/main/res/menu/bookshelf.xml index 8c69ffa8e..6a7f00e90 100644 --- a/app/src/main/res/menu/bookshelf.xml +++ b/app/src/main/res/menu/bookshelf.xml @@ -3,9 +3,9 @@ xmlns:app="http://schemas.android.com/apk/res-auto"> + app:showAsAction="always"/> - + - diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 8fd365498..9f1a444a3 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -469,4 +469,5 @@ 清空发现缓存 编辑发现 切换软件显示在桌面的图标 + 帮助