public async void setupGridView() { await Task.Delay(TimeSpan.FromMilliseconds(2)); selectedSensor = new SensorStatusPopup(View); selectedSensor.gridVC = this; selectedSensor.analyzerSlot = fromAnalyzer; selectedSensor.fromWorkbench = fromWorkbench; View.AddSubview(selectedSensor.popupView); gridTapped = new UITapGestureRecognizer(() => { selectedSensor.popupView.Hidden = true; selectedSensor.shouldOpen = false; selectedSensor.sensor.onSensorEvent -= selectedSensor.updateSensor; }); gridTapped.CancelsTouchesInView = false; gridTapped.ShouldReceiveTouch += (recognizer, touch) => !(selectedSensor.popupView.Hidden); gridView.AddGestureRecognizer(gridTapped); gridView.RegisterClassForCell(typeof(GridCellConnected), GridCellConnected.CellID); gridView.RegisterClassForCell(typeof(GridCellDisconnected), GridCellDisconnected.CellID); gridView.RegisterClassForSupplementaryView(typeof(Header), UICollectionElementKindSection.Header, "sectionHeader"); gridView.DataSource = new DeviceGridSource(connectedSensors, disconnectedSensors); gridView.Delegate = new DeviceGridFlowDelegate(selectedSensor); gridView.ReloadData(); ion.deviceManager.onDeviceManagerEvent += OnDeviceManagerEvent; }
public DeviceGridFlowDelegate(SensorStatusPopup selectedSensor) { passPopup = selectedSensor; }