如何停止工具栏上的共享部分显示默认应用程序?

问题描述 投票:0回答:1

我正在寻找一种方法来阻止我的分享按钮在首次使用后更改。首次使用后,工具栏上的共享“部分”开始显示共享图标旁边的默认应用程序图标。下面是显示转换的屏幕截图。

enter image description here

我的menu_main.xml内容:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">

    <item android:id="@+id/action_create_order"
        android:title="@string/create_order_title"
        android:icon="@drawable/ic_add_white_24dp"
        android:orderInCategory="1"
        app:showAsAction="ifRoom"/>

    <item android:id="@+id/action_share"
        android:title="@string/action_share"
        android:orderInCategory="2"
        app:showAsAction="ifRoom"
        app:actionProviderClass="android.support.v7.widget.ShareActionProvider"
        />

</menu>

我的Kotlin代码:

override fun onCreateOptionsMenu(menu: Menu): Boolean {
        menuInflater.inflate(R.menu.menu_main, menu)
        val menuItem = menu.findItem(R.id.action_share);
        shareActionProvider = MenuItemCompat.getActionProvider(menuItem) as 
        ShareActionProvider
        setShareActionIntent("Want to join me for pizza?")
        return super.onCreateOptionsMenu(menu)
    }

private fun setShareActionIntent(text: String){
        val intent = Intent(Intent.ACTION_SEND)
        intent.type = "text/plain"
        intent.putExtra(Intent.EXTRA_TEXT, text)
        shareActionProvider!!.setShareIntent(intent)
    }
android kotlin android-toolbar
1个回答
0
投票
  • 您可以在sharedPreference中保存布尔值
  • 在您的第一个启动活动的onCreate中,您检查sharedPreference是null还是false
  • 如果为null,您将显示第一次部分代码
  • 并且你必须将它设置为(boolean firstRun = false)然后在所有时间之后你的应用程序将变为false并且将显示下一个你需要的内容。
© www.soinside.com 2019 - 2024. All rights reserved.