[問題] ShareActionProvider向下相容的問題

看板AndroidDev作者 ( who)時間12年前 (2013/11/12 18:38), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串1/1
目前做一個app需要向下相容到至少2.3 所以share的功能決定用ShareActionProvider來做 target sdk version是設android 4.0(API14) 引用了 android-support-v7-appcompat 和android-support-v4 在referenced libraries import android.support.v7.widget.ShareActionProvider; public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.menu, menu); MenuItem shareItem = menu.findItem(R.id.action_share); mShareActionProvider = (ShareActionProvider) MenuItemCompat.getActionProvider(shareItem); mShareActionProvider.setShareIntent(getDefaultIntent()); return super.onCreateOptionsMenu(menu); } <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:yourapp="http://schemas.android.com/apk/res-auto" > <item android:id="@+id/save_wotkout_ab" android:title="Add Item" android:icon="@android:drawable/ic_menu_save" /> <item android:id="@+id/action_share" yourapp:actionProviderClass="android.support.v7.widget.ShareActionProvider" yourapp:showAsAction="ifRoom" android:title="share"/> </menu> 這樣無法build 會一直出現錯誤訊息: No resource identifier found for attribute 'actionProviderClass' No resource identifier found for attribute 'showAsAction' 如果把yourapp改成android就可以build 但執行時會出現ClassCastException android.support.v7.widget.ShareActionProvider cannot be cast to android.view.ActionProvider 不知道有沒有人有類似的經驗? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.242.250.151

11/13 00:31, , 1F
未定義attr
11/13 00:31, 1F
文章代碼(AID): #1IWWKFn- (AndroidDev)