2013-07-28 10 views

答えて

17

あなたのアクションバーメニューに追加することで、アクションバーに表示することができます

<item 
    android:id="@+id/action_mediaroute" 
    android:actionProviderClass="android.support.v7.app.MediaRouteActionProvider" 
    android:actionViewClass="android.support.v7.app.MediaRouteButton" 
    android:showAsAction="always" 
    android:title="@string/action_chromecast"/> 

次にあなたがonCreateOptionsMenuで初期化を提供します。

public boolean onCreateOptionsMenu(Menu menu) { 

    getMenuInflater().inflate(R.menu.main, menu); 

    MenuItem mediaRouteItem = menu.findItem(R.id.action_mediaroute); 
    mMediaRouteButton = (MediaRouteButton) mediaRouteItem.getActionView(); 

    mCastContext = new CastContext(getApplicationContext()); 
    MediaRouteHelper.registerMinimalMediaRouteProvider(mCastContext, this); 
    mMediaRouter = MediaRouter.getInstance(getApplicationContext()); 
    mMediaRouteSelector = MediaRouteHelper.buildMediaRouteSelector(MediaRouteHelper.CATEGORY_CAST); 
    mMediaRouteButton.setRouteSelector(mMediaRouteSelector); 
    mMediaRouterCallback = new MyMediaRouterCallback(); 

    return true; 
} 
+0

を私にキャストアイコンを表示するための解決策を教えてくださいActionBarSherlockのlibを使用してアクションバーで。ありがとう –

+0

'onCreateOptionsMenu'にそのコードを追加すると、常に無効なボタンが表示されます。 'onPrepareOptionsMenu'に置くと、ボタンがうまくいきます。画面を回転させないと、既にデバイスを選択していても有効になります。そのような問題はありましたか? – casolorz

+0

@ Jason、働いていない... app stil crash –

関連する問題