日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Exception: This is not supported, use MenuItemCompat.getActionProvider()的处理

發(fā)布時(shí)間:2025/5/22 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Exception: This is not supported, use MenuItemCompat.getActionProvider()的处理 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

2019獨(dú)角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>

今天在學(xué)習(xí)在ActionBar上添加分享功能時(shí),按照文檔的寫(xiě)法,報(bào)了一個(gè)錯(cuò)誤Exception: This is not supported, use MenuItemCompat.getActionProvider()

下面是我抄來(lái)的代碼:

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"><itemandroid:id="@+id/menu_item_share"android:actionProviderClass="android.widget.ShareActionProvider"android:title="Share"app:showAsAction="ifRoom" /> </menu>

MainActivity.java:

package com.neumeng.actionbarsharedemo;import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.widget.ShareActionProvider;public class MainActivity extends AppCompatActivity {private ShareActionProvider mShareActionProvider;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate menu resource file.getMenuInflater().inflate(R.menu.menu_main, menu);// Locate MenuItem with ShareActionProviderMenuItem item = menu.findItem(R.id.menu_item_share);// Fetch and store ShareActionProvidermShareActionProvider = (ShareActionProvider) item.getActionProvider();// Return true to display menureturn true;} }

如果這樣直接運(yùn)行起來(lái),會(huì)報(bào)錯(cuò),報(bào)錯(cuò)內(nèi)容如下:

java.lang.UnsupportedOperationException: This is not supported, use MenuItemCompat.getActionProvider()at android.support.v7.view.menu.MenuItemImpl.getActionProvider(MenuItemImpl.java:644)at com.neumeng.actionbarsharedemo.MainActivity.onCreateOptionsMenu(MainActivity.java:25)at android.app.Activity.onCreatePanelMenu(Activity.java:2846)at android.support.v4.app.FragmentActivity.onCreatePanelMenu(FragmentActivity.java:360)at android.support.v7.view.WindowCallbackWrapper.onCreatePanelMenu(WindowCallbackWrapper.java:88)at android.support.v7.app.AppCompatDelegateImplBase$AppCompatWindowCallbackBase.onCreatePanelMenu(AppCompatDelegateImplBase.java:328)at android.support.v7.app.AppCompatDelegateImplV9.preparePanel(AppCompatDelegateImplV9.java:1353)at android.support.v7.app.AppCompatDelegateImplV9.doInvalidatePanelMenu(AppCompatDelegateImplV9.java:1633)at android.support.v7.app.AppCompatDelegateImplV9.access$100(AppCompatDelegateImplV9.java:93)at android.support.v7.app.AppCompatDelegateImplV9$1.run(AppCompatDelegateImplV9.java:132)at android.os.Handler.handleCallback(Handler.java:739)at android.os.Handler.dispatchMessage(Handler.java:95)at android.os.Looper.loop(Looper.java:148)at android.app.ActivityThread.main(ActivityThread.java:5417)at java.lang.reflect.Method.invoke(Native Method)at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)

MainActivity中的第25行是:mShareActionProvider = (ShareActionProvider) item.getActionProvider();

在這里取這個(gè)ShareActionProvider出現(xiàn)問(wèn)題。

這里要注意的幾個(gè)地方:

  • 在memu配置文件里,android:actionProviderClass="android.widget.ShareActionProvider"使用的不是support的類(lèi)
  • 在MainActivity中,class MainActivity extends AppCompatActivity使用的是v7中的AppCompatActivity
  • 在MainActivity中,mShareActionProvider成員變量是android.widget.ShareActionProvider

問(wèn)題有兩個(gè)

  • 使用v7包中的ActionBar,就要使用v7包中的ShareActionProvider,或者都使用原生的ActionBar,兩者要一致
  • 如果使用v7包中的ActioBar,就不能使用item.getActionProvider()。因?yàn)檫@個(gè)方法在API Level 10及之前是不安全的。需要使用MenuItemCompat.getActionProvider(item)
  • 修改后的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"><itemandroid:id="@+id/menu_item_share"android:title="Share"app:actionProviderClass="android.support.v7.widget.ShareActionProvider"app:showAsAction="ifRoom" /></menu>

    修改后的MainActivity.java:

    package com.neumeng.actionbarsharedemo;import android.support.v4.view.MenuItemCompat; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.support.v7.widget.ShareActionProvider;public class MainActivity extends AppCompatActivity {private ShareActionProvider mShareActionProvider;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate menu resource file.getMenuInflater().inflate(R.menu.menu_main, menu);// Locate MenuItem with ShareActionProviderMenuItem item = menu.findItem(R.id.menu_item_share);// Fetch and store ShareActionProvidermShareActionProvider = (ShareActionProvider) MenuItemCompat.getActionProvider(item);// Return true to display menureturn true;} }

    轉(zhuǎn)載于:https://my.oschina.net/neumeng/blog/744018

    總結(jié)

    以上是生活随笔為你收集整理的Exception: This is not supported, use MenuItemCompat.getActionProvider()的处理的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 日本一区电影 | 黄视频在线 | 亚洲精品www久久久久久 | 天天爽 | 欧美日韩在线免费观看 | 亚洲视频一区在线播放 | 欧美亚洲国产另类 | www在线视频| 亚洲一区二区三区久久久成人动漫 | 天堂在线资源库 | 一区二区三区四区在线观看视频 | 91国内精品久久久 | 久久久激情视频 | 91美女网站| 欧美操大逼 | 免费看美女被靠到爽的视频 | 亚洲精品一级 | 一本大道综合伊人精品热热 | 国内精品久久99人妻无码 | 一区二区三区视频免费 | 蜜臀久久久久久999 大陆熟妇丰满多毛xxxⅹ | 91性| 妹子干综合 | 国产女主播在线观看 | 国产18禁黄网站免费观看 | 人人干在线 | 亚洲一二三区在线 | 在线草 | 国产女主播在线 | 五月婷婷激情四射 | 欧美另类精品xxxx孕妇 | 国产一级淫| 欧美一级夜夜爽 | 不许穿内裤随时挨c调教h苏绵 | 亚洲欧洲免费无码 | 亚洲二区在线观看 | 亚洲欧美视频一区二区 | 亚洲香蕉在线 | 日韩中文字幕二区 | 99热这里只有精品2 91免费版黄 | 久久亚洲欧洲 | 国产亚洲一区二区不卡 | 蜜桃无码一区二区三区 | 国产真实生活伦对白 | 91精品91久久久中77777 | 国产按摩一区二区三区 | 欧美 亚洲 一区 | 日韩中文字幕高清 | 色xxxxxx| 成人特级片| 被黑人猛躁10次高潮视频 | www婷婷av久久久影片 | 夜夜夜网站 | 99久久亚洲精品 | 男人午夜影院 | 久久久久爱 | 国产精品suv一区二区 | 激情久| 欧美日韩在线一区 | 日本免费一区二区三区视频 | www.久草.com| 天天av天天干 | 国产精品一区二区麻豆 | 色老板精品凹凸在线视频观看 | 久久男人网 | 欧美大肚乱孕交hd孕妇 | 免费在线黄网站 | 天堂成人在线视频 | 亚洲 欧美 日韩 综合 | 草草草av| 国产午夜精品理论片 | 亚洲福利影视 | 99热麻豆| av黄色小说 | 日本亲近相奷中文字幕 | 成人免费大全 | 北京少妇xxxx做受 | 国产亚洲精品成人 | 26uuu国产精品视频 | 午夜在线国产 | 国产69视频在线观看 | 欧美精品在欧美一区二区少妇 | 亚洲精品高潮久久久久久久 | 亚洲人成电影在线播放 | 老司机黄色片 | 在线观看福利视频 | 热久久这里只有精品 | 久草五月天 | 色综合久久久无码中文字幕波多 | 色呦呦免费视频 | 欧美男女交配视频 | 在线观看免费高清 | 日本成人免费视频 | 特黄网站 | 国产尤物在线 | 伊人伊网 | 伊人久久成人网 | 日韩伊人网| 精品人妻一区二区三区久久嗨 |