internal void HandleAction(int tag) { clickedtag = tag; switch (tag) { case 1: model = new PickerModel(displaymodelist); break; case 2: model = new PickerModel(positionlist); break; case 3: model = new PickerModel(selectionindicatorlist); break; case 4: model = new PickerModel(overflowlist); break; } model.PickerChanged -= PickerIndexChanged; model.PickerChanged += PickerIndexChanged; picker.Model = model; picker.ReloadAllComponents(); doneButton.Hidden = false; picker.Hidden = false; BecomeFirstResponder(); }
void SetItemsSource() { if (Element.ItemsSource == null) { return; } var itemCount = Element.ItemsSource.Cast <object>().ToList().Count; if (itemCount > 0) { for (var i = 0; i < itemCount; i++) { AddObjectToSource(i); } } if (collectionChanged == null) { collectionChanged = (INotifyCollectionChanged)Element.ItemsSource; collectionChanged.CollectionChanged += (s, ev) => { if (Element == null || Control == null) { return; } if (ev.Action == NotifyCollectionChangedAction.Add) { AddObjectToSource(ev.NewStartingIndex); } else if (ev.Action == NotifyCollectionChangedAction.Reset) { if (pickerModel != null) { pickerModel.ResetData(); picker.ReloadAllComponents(); //Adapter.NotifyDataSetChanged(); //isReset = true; } } }; } }
/// <summary> /// Updates the picker. /// </summary> private void UpdatePicker() { Control.Placeholder = Element.Title; Control.Text = (Element.SelectedIndex <= -1 || Element.Items == null) ? "" : Element.Items[Element.SelectedIndex]; _picker.ReloadAllComponents(); if (Element.SelectedIndex > -1 && Element.Items != null && Enumerable.Any <string>(Element.Items)) { _picker.Select(Element.SelectedIndex, 0, true); } }
void UpdateItems() { var items = _TextPickerCell.Items ?? new List <object>(); _model.SetItems(items); // Force picker view to reload data from model after change // Otherwise it might access the model based on old view data // causing "Index was out of range" errors and the like. _picker.ReloadAllComponents(); Select(_TextPickerCell.SelectedItem); }
void UpdatePicker() { var selectedIndex = Element.SelectedIndex; var items = Element.Items; _picker.ReloadAllComponents(); if (items == null || items.Count == 0) { return; } UpdatePickerSelectedIndex(selectedIndex); }
public override void Selected(UIPickerView pickerView, nint row, nint component) { if (_styledPicker.SelectedItems.Count > 0 && _styledPicker.SelectedItems.Count >= (int)component) { _styledPicker.SelectedItems[(int)component] = (_styledPicker.ItemsSource[(int)component][(int)row]); } else { _styledPicker.SelectedItems.Add(_styledPicker.ItemsSource[(int)component][(int)row]); } _currentSelected = row; pickerView.ReloadAllComponents(); }
void UpdatePicker() { var selectedIndex = Element.SelectedIndex; var items = Element.Items; Control.Placeholder = Element.Title; var oldText = Control.Text; Control.Text = selectedIndex == -1 || items == null ? "" : items[selectedIndex]; UpdatePickerNativeSize(oldText); _picker.ReloadAllComponents(); if (items == null || items.Count == 0) { return; } UpdatePickerSelectedIndex(selectedIndex); }
void ItemChanged() { if (model != null) { model.CustomSelectionChanged -= Model_SelectedChanged; } var title = segmentedControl.TitleAt(segmentedControl.SelectedSegment); currentAgent = new Agent(title); agentView.ConfigureAgent(currentAgent); currentAgent.Animate(); animations = currentAgent.GetAnimations(); model = new AnimationsModel(animations); pickerView.Model = model; pickerView.ReloadAllComponents(); model.CustomSelectionChanged += Model_SelectedChanged; }
UIAlertController CreateAlert(UITextField uITextField) { var paddingTitle = 0; if (!string.IsNullOrEmpty(VirtualView.Title)) { paddingTitle += 25; } var pickerHeight = 240; var frame = new RectangleF(0, paddingTitle, 269, pickerHeight); var pickerView = new UIPickerView(frame); pickerView.Model = new PickerSource(VirtualView); pickerView?.ReloadAllComponents(); var pickerController = UIAlertController.Create(VirtualView.Title, "", UIAlertControllerStyle.ActionSheet); // needs translation pickerController.AddAction(UIAlertAction.Create("Done", UIAlertActionStyle.Default, action => FinishSelectItem(pickerView, uITextField) )); if (pickerController.View != null && pickerView != null) { pickerController.View.AddSubview(pickerView); var doneButtonHeight = 90; var height = NSLayoutConstraint.Create(pickerController.View, NSLayoutAttribute.Height, NSLayoutRelation.Equal, null, NSLayoutAttribute.NoAttribute, 1, pickerHeight + doneButtonHeight); pickerController.View.AddConstraint(height); } var popoverPresentation = pickerController.PopoverPresentationController; if (popoverPresentation != null) { popoverPresentation.SourceView = uITextField; popoverPresentation.SourceRect = uITextField.Bounds; } return(pickerController); }
public void ReloadAllComponents() { _pickerView.ReloadAllComponents(); }
protected void ReloadData() { _pickerView.ReloadAllComponents(); }
protected override void Reload() { _pickerView.ReloadAllComponents(); _pickerView.Select(0, 0, false); _pickerView.Select(0, 1, false); }