2013-07-28 13 views

Odpowiedz

17

Można wyświetlić go w pasku akcji poprzez dodanie go do swojego menu paska Działanie:

<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"/> 

Wtedy świadczenia inicjalizacji w 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

Proszę dać mi rozwiązanie, aby wyświetlić ikonę przesyłania w actionbar przy użyciu biblioteki ActionBarSherlock. Dzięki –

+0

Jeśli dodaję ten kod na 'onCreateOptionsMenu', otrzymam zawsze wyłączony przycisk. Jeśli umieściłem go na 'onPrepareOptionsMenu', to przycisk działa dobrze, chyba że obrócę ekran, w którym to przypadku wróci do włączonego, nawet jeśli już wybrałem urządzenie. Czy były jakieś problemy? – casolorz

+0

@Jason, nie działa ... app stil crash –

Powiązane problemy