public ARDVideoCallView(CGRect frame) : base(frame) { RemoteView = new RTCEAGLVideoView { Delegate = this }; AddSubview(RemoteView); LocalVideoView = new RTCCameraPreviewView(); AddSubview(LocalVideoView); StatsView = new ARDStatsView(CGRect.Empty); StatsView.Hidden = true; AddSubview(StatsView); _routeChangeButton = new UIButton(UIButtonType.Custom); _routeChangeButton.BackgroundColor = UIColor.White; _routeChangeButton.Layer.CornerRadius = kButtonSize / 2; _routeChangeButton.Layer.MasksToBounds = true; _routeChangeButton.SetImage(UIImage.FromBundle("ic_surround_sound_black_24dp.png"), UIControlState.Normal); _routeChangeButton.TouchUpInside += OnRouteChange; AddSubview(_routeChangeButton); _cameraSwitchButton = new UIButton(UIButtonType.Custom); _cameraSwitchButton.BackgroundColor = UIColor.White; _cameraSwitchButton.Layer.CornerRadius = kButtonSize / 2; _cameraSwitchButton.Layer.MasksToBounds = true; _cameraSwitchButton.SetImage(UIImage.FromBundle("ic_switch_video_black_24dp.png"), UIControlState.Normal); _cameraSwitchButton.TouchUpInside += OnCameraSwitch; AddSubview(_cameraSwitchButton); _hangupButton = new UIButton(UIButtonType.Custom); _hangupButton.BackgroundColor = UIColor.White; _hangupButton.Layer.CornerRadius = kButtonSize / 2; _hangupButton.Layer.MasksToBounds = true; _hangupButton.SetImage(UIImage.FromBundle("ic_call_end_black_24dp.png").ChangeColor(UIColor.Red), UIControlState.Normal); _hangupButton.TouchUpInside += OnHangup; AddSubview(_hangupButton); StatusLabel = new UILabel(); StatusLabel.Font = UIFont.FromName("Roboto", 16); StatusLabel.TextColor = UIColor.White; AddSubview(StatusLabel); var tapRecognizer = new UITapGestureRecognizer(DidTripleTap); tapRecognizer.NumberOfTapsRequired = 3; AddGestureRecognizer(tapRecognizer); }
public VideoCallView(CGRect _frame, bool _useCameraPreview) : base(_frame) { RemoteView = new RTCEAGLVideoView { Delegate = this }; AddSubview(RemoteView); if (_useCameraPreview) { LocalVideoView = new RTCCameraPreviewView(); } else { LocalVideoView = new RTCEAGLVideoView { Delegate = this }; } AddSubview(LocalVideoView); StatsView = new StatsView(_frame); StatsView.Hidden = true; AddSubview(StatsView); routeChangeBtn = new UIButton(UIButtonType.InfoDark); routeChangeBtn.TouchUpInside += OnRouteChanged; AddSubview(routeChangeBtn); cameraSwitchBtn = new UIButton(UIButtonType.DetailDisclosure); cameraSwitchBtn.TouchUpInside += OnCameraSwitched; AddSubview(cameraSwitchBtn); hangUpBtn = new UIButton(UIButtonType.Close); hangUpBtn.TouchUpInside += OnHangup; AddSubview(hangUpBtn); StatusLabel = new UILabel(); StatusLabel.Font = UIFont.SystemFontOfSize(16); StatusLabel.TextColor = UIColor.White; AddSubview(StatusLabel); var tapRecognizer = new UITapGestureRecognizer(DidTripleTapped); tapRecognizer.NumberOfTapsRequired = 3; AddGestureRecognizer(tapRecognizer); }