【问题标题】:Removing ShareActionProvider white border删除 ShareActionProvider 白色边框
【发布时间】:2017-03-12 00:36:43
【问题描述】:

ShareActionProvider 周围总是有一个白色边框

我正在使用工具栏上应用的支持版本。

ShareActionProvider

<item
    android:id="@+id/menu_share"
    app:showAsAction="ifRoom"
    android:title="Share"
    app:actionProviderClass="android.support.v7.widget.ShareActionProvider" />

Tks.

【问题讨论】:

    标签: android layout shareactionprovider


    【解决方案1】:

    activityChooserView的背景 这就是我解决这个问题的方法:

    <android.support.design.widget.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/AppTheme.AppBarOverlay">
    
        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            style="@style/SVToolbar.Green"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            app:popupTheme="@style/AppTheme.PopupOverlay" />
    
    </android.support.design.widget.AppBarLayout>
    

    风格:

    <style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar">
        <item name="listPopupWindowStyle">@style/SVPopupListStyle</item>
        <item name="activityChooserViewStyle">@style/ActionBar.ActivityChooser</item>
        <item name="android:actionMenuTextAppearance">@style/SVActionMenuTextAppearance</item>
    </style>
    
    <style name="ActionBar.ActivityChooser" parent="Widget.AppCompat.Light.ActionBar.TabView">
        <item name="android:background">@null</item>
    </style>
    

    【讨论】:

      【解决方案2】:

      您可以使用以下命令来做到这一点:

      mShareActionProvider.setShareHistoryFileName(null)
      

      希望对你有帮助 if model = null, icon won't be shown.

      【讨论】:

      • 这里非常不鼓励仅链接的答案,因为这些链接将来可能会失效。我建议您使用您引用的来源中的引用来编辑您的答案。
      • 最好将代码粘贴到屏幕截图中。