protected override void OnElementChanged(ElementChangedEventArgs <MyCastButton> e) { base.OnElementChanged(e); if (e.NewElement != null) { if (Control == null) { mediaRouteButton = new MediaRouteButton(Context); mediaRouter = MediaRouter.GetInstance(Context); mediaRouteSelector = new MediaRouteSelector .Builder() .AddControlCategory(CastMediaControlIntent.CategoryForCast("0A6928D1")) .Build(); mediaRouterCallback = new CustomMediaRouterCallBack(); mediaRouter.AddCallback(mediaRouteSelector, mediaRouterCallback, MediaRouter.CallbackFlagPerformActiveScan); mediaRouteButton.RouteSelector = mediaRouteSelector; //CastButtonFactory.SetUpMediaRouteButton(Context, mediaRouteButton); //var castContext = CastContext.SharedInstance; //castContext. linearLayout = new LinearLayout(Context); linearLayout.AddView(mediaRouteButton); SetNativeControl(linearLayout); } } }
protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); // Set our view from the "main" layout resource SetContentView(Resource.Layout.Main); mediaRouteButton = FindViewById <MediaRouteButton> (Resource.Id.mediaRouteButton); Init(); }
protected override void OnElementChanged(ElementChangedEventArgs <AudioOutputView> e) { base.OnElementChanged(e); var activity = CrossCurrentActivity.Current.Activity as MainActivity; if (activity != null) { button = new MediaRouteButton(Context) { RouteSelector = activity.MediaRouteSelector, }; //button.SetAlwaysVisible(true); SetNativeControl(button); } }