WARNING: Does not work in iOS7
Update 10/4/2013: Unfortuantely iOS7 completely broke this component. I currently do not have time to try and fix it, nor does this type of element make sense in iOS7, in my opinion.
This is a generic UIPicker and a DateTime Picker for MonoTouch.Dialog.
It's heavily based on ClanceyLib: https://github.com/Clancey/ClanceyLib
- MonoTouch.Dialog (now part of MonoTouch): http://docs.xamarin.com/ios/tutorials/MonoTouch.Dialog
Requirements for dismissing Picker when another cell is selected
crdeutsch version of MonoTouch.Dialog: https://github.com/crdeutsch/MonoTouch.Dialog
Find the line in PickerElement under "// MonoTouch.Dialog CUSTOM:" and comment in. Now the Picker will hide if you select a different cell to edit.
Differences from Clancey version
- Added a DateTime Picker that functions consitantly with the generic Picker.
- Highlights the row you are showing the picker for and scrolls it into focus to avoid the picker hiding the row.
- Updated it to hide the keyboard or picker when selecting different cells to edit.
- Actually has a sample of how to use it. ;)
- Independent DisplayMember and ValueMember
- Fixed bug with rapidly clicking PickerElements causing the view to resizing too many times.
- Fixed bug with DatePickerElement2 re-appearing when an app is closed and relaunched.
- Fixed bug with DateTimeElement2 resizing the label when it redraws.
- Added support for setting label TextColor for PickerElement
- Added support for hiding PickerElement without animation.
- Added support for hiding DatePicker without animation. Useful when view is disappearing.
- Added ValueChanged Event to PickerElement.
- Improved the ability to control the size of the Value in the table cell versus the caption.
- Added flag to control whether done button is show or not.
- Added feature that highlights the row the picker is being shown for and also scrolls the row into view rather then potentially covering it up.
Created DateTimeElement2 that creates a UIDatePicker on the same view just like the PickerElement, instead of pushing a new view like the regular MonoTouch.Dialog DateTimeElement.
Refactored PickerElement and DateTimeElement2 to inherit from EntryElement to fix issue with labels lining up, and deleted ReadOnlyStringElement.cs
Worked on adding support for when "Next" key is pressed on regular EntryElement. Unfortunately this will require another MonoTouch.Dialog change to work.
Added SelectedItem property to PickerElement so you can retrieve the selected object instead of just the value.
- Removed support for using a UIView for the rows since the picker often loses the rows when there are multiple pickers.
- Added support for setting DisplayMember and ValueMember independently.
- Added support for setting the Width of the Picker.