0

ActionBarSherlock をサポートする既存のアプリケーションに chromecast を統合しています。このリンクhttp://www.droidorbit.com/2013/10/mediarouter-and-actionbarsherlock.htmlをたどりました。しかし、コンパイル時にエラーが発生しました:

MediaRouterJellybean cannot be resolved to a type.  
MediaRouterJellybeanMr1 cannot be resolved to a type  
MediaRouterJellybeanMr2 cannot be resolved to a type  in SystemMediaRouteProvider.java file.  
R.attr.isLightTheme cannot be resolved or is not a field in MediaRouterThemeHelper.java file.

現在、エラーがないようにこれらのコードにコメントを付けてから、Cast サンプル プロジェクトに統合しています。android.support.v7.app.MediaRouteActionProviderプロジェクトでは、使用する代わりにActionBar にキャスト アイコンを表示しますMediaRouteButton。しかし、実行時にエラーが発生しましたonCreateOptionMenu():

java.lang.ClassCastException: android.support.v7.app.MediaRouteActionProvider cannot be cast to com.actionbarsherlock.view.ActionProvider

修正方法がわかりません。誰でも私を助けることができますか?
前もって感謝します。
P/S: Eclipse を使用して MediaRouter lib を変更する手順を教えてください。

4

1 に答える 1

3

私はそれを解決しました。

関数内のコードにコメントを付けてisLightTheme()false を返すだけです。3 つのファイルを packet に
コピーします。 その時点で、まだエラーが発生しますMediaRouterJellybean.java, MediaRouterJellybeanMr1.java, MediaRouterJellybeanMr2.javaandroid.support.v7.media

MediaRouterJellybeanMr2 cannot be resolved to a type  in SystemMediaRouteProvider.  

AndroidManifest.xml、ターゲット バージョン = 18 に設定し、プロジェクトを右クリックして を選択しますAndroid Tool -> Clear Lint Marker
P/S: Android studio ではなくEclipseを使用しています。

それが役に立てば幸い!

于 2013-10-31T02:56:22.390 に答える