如何在 android 的选项菜单中为 chromecast 添加自定义投射按钮?

Posted

技术标签:

【中文标题】如何在 android 的选项菜单中为 chromecast 添加自定义投射按钮?【英文标题】:How to add the custom cast button in option menu in android for chromecast? 【发布时间】:2014-08-02 13:12:37 【问题描述】:

我几乎完成了 Chromecast 集成,但我只需要在我的活动选项菜单中添加自定义投射按钮。怎么做?,将自定义转换按钮添加为菜单中的项目时出现空指针异常。

我的代码部分是:

    public void onCreate(Bundle savedInstanceState) 

    mMediaRouter = MediaRouter.getInstance(getApplicationContext());
    mMediaRouteSelector = new MediaRouteSelector.Builder()
    .addControlCategory(CastMediaControlIntent.categoryForCast(APP_ID)).build();

    mMediaRouteButton = (MediaRouteButton) findViewById(R.id.media_route_button);
    mMediaRouterCallback = new MediaRouterCallback();
    mCastListener = new CastListener();
    mConnectionCallbacks = new ConnectionCallbacks();
    mConnectionFailedListener = new ConnectionFailedListener();

    // Set the MediaRouteButton selector for device discovery.
    mMediaRouteButton.setRouteSelector(mMediaRouteSelector);



    <?xml version="1.0" encoding="utf-8"?>
    <menu xmlns:android="http://schemas.android.com/apk/res/android">
          <item android:id="@+id/share"
            android:title="Share"
            android:icon="@drawable/ic_menu_share" />

           <item android:id="@+id/feedback"
            android:title="Feedback"
            android:icon="@drawable/ic_menu_feedback" />

            <item android:id="@+id/quit"
            android:title="Quit"
            android:icon="@drawable/ic_menu_close_clear_cancel" />

            <android.support.v7.app.MediaRouteButton
            android:id="@+id/media_route_button"
            android:layout_
            android:layout_
            android:mediaRouteTypes="user"
            android:visibility="gone" />
           </menu> 

【问题讨论】:

【参考方案1】:

对于 MediaRouteButton,您的活动需要扩展 FragmentActivity

【讨论】:

感谢您的回复,我已经扩展了 FragmentActivity 但仍然出现 mMediaRouteButton 的空指针异常 看看这个示例应用程序,了解如何正确添加按钮:github.com/googlecast/MediaRouter-Cast-Button-android 我已经查看了他们在布局视图中分别使用投射按钮的位置,但我只需要在选项菜单中添加投射按钮作为项目之一,所以请给出一些想法。 Cast Design Checklist 要求 Cast 按钮显示在操作栏的顶层。 是的,我已经看到了该清单,并且每个人都主要显示在操作栏上。那么是否有可能在选项菜单中显示自定义投射按钮?

以上是关于如何在 android 的选项菜单中为 chromecast 添加自定义投射按钮?的主要内容,如果未能解决你的问题,请参考以下文章

如何更改Android Studio的代码字体和颜色

如何在引导选择选择器中为选项(下拉菜单)设置固定宽度

android studio 如何将git 得到最新的版本

如何在Android ListView中为菜单项创建图标?

如何在 Delphi Form Designer 中为自定义组件添加上下文菜单操作?

如何在 Android 中为 SocketIO 设置传输?