我正在尝试获取对作为演员图标的 MediaRouteButton 的引用,并且我一直得到一个空值。只是想看看是否有人知道如何获得对这个按钮的引用。我正在使用 onGlobalLayoutListener 来获取通知。
问问题
44 次
1 回答
0
如果您使用 CCL,您应该可以轻松使用 ShowCaseView;看看CastVideos-android应用程序,看看它是如何做到的,基本上你可以使用回调onCastDeviceDetected()
在演员按钮出现时得到通知,然后执行以下操作:
Menu menu = mToolbar.getMenu();
View view = menu.findItem(R.id.media_route_menu_item).getActionView();
if (view != null && view instanceof MediaRouteButton) {
new ShowcaseView.Builder(this)
.setTarget(new ViewTarget(view))
.setContentTitle(R.string.touch_to_cast)
.build();
}
这假设您有一个工具栏。
编辑:如果您有一个 ActionBar,请尝试以下操作:
new ShowcaseView.Builder(this)
.setTarget(new ActionViewTarget(this, ActionViewTarget.Type.MEDIA_ROUTE_BUTTON))
.setContentTitle(R.string.touch_to_cast)
.build();
在某个时候,我已经向 ShowCaseView 项目提交了一个补丁来覆盖 MediaRoute 按钮,因此希望它仍然有效;自从我现在使用工具栏以来,我最近没有尝试过。
于 2015-12-03T23:42:40.300 回答