[MonoTouch] UITableViews made simple
Brent Schooley
schooleybrent at gmail.com
Sat Nov 14 01:59:53 EST 2009
Maybe it's just the fact that it's late, but I'm not sure I got what
the point of this thing was. That being said, I prefer the look of
style 2.
Can you explain this again?
-Brent
On Nov 14, 2009, at 1:28 AM, Miguel de Icaza <miguel at novell.com> wrote:
> Hey folks,
>
> I have been thinking about writing a control that would simplify
> making configuration-like UITableView, and I am struggling between the
> Mono.Options-like model for creating the data to be debugged and a
> setup
> with classes and attributes.
>
> For example, this is what the code would look like using classes
> and
> attributes, it would use Reflection over public field names to extract
> default captions and attributes to spice up the UI (icons, separators,
> parameters).
>
> Another option would be to build it like Mono.Options, where the UI
> is constructed one item at a time and would be trivial to add event
> handlers that respond on changes (with delegates):
>
> Style 1:
>
> class SoundConfig : Configurable {
> [Icon ("airplane.png")]
> public bool AirplaneMode;
>
> [Text ("Wi-Fi"), Icon ("wifi.png")]
> public Configurable WiFi;
>
> [Icon ("Notifications")]
> public Configurable Notifications;
>
> [Icon ("Silent.png")]
> public Separator Silent;
> public bool Vibrate;
>
> [Icon ("Ring")]
> public Separator Ring;
> public bool on;
>
> [Slider ("mute.png", "full-volume.png")]
> public float value;
> }
>
> UIViewController Do ()
> {
> var s = new SoundConfig () {
> AirplaneMode = true,
> WiFi = ...;
> Notifications = ...;
> Vibrate = true;
> on = false;
> value = -0.5;
> }
> return new ReflectionViewController (s);
> }
>
>
> Style 2:
> class Demo {
> static bool airplane;
> static string wi_fi;
>
> void Setup ()
> {
>
> var settings = new SettingsViewController (){
> { airplane_icon, airplane, "Airplane Mode", v => airplane
> = v },
> { wifi_icon, wi_fi, "Wi-Fi", r => return r.ToString () }
> };
>
>
> }
>
> }
>
> _______________________________________________
> MonoTouch mailing list
> MonoTouch at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/monotouch
More information about the MonoTouch
mailing list