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

时间:2019-04-29 17:04:49

标签: android kotlin android-toolbar

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

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)
    }

1 个答案:

答案 0 :(得分:0)

  • 您可以在 sharedPreference
  • 中保存布尔值
  • 在您的第一个启动活动的 onCreate 中,检查 sharedPreference 为空还是假
  • 如果为null,则将显示第一次的时段代码
  • 并且您必须将其设置为( boolean firstRun = false ) 然后,所有时间之后,您的应用都会出错,并在接下来显示您需要的内容。