Continuing the discussion from Rhino for Mac UI Question:
iRhino 3D was originally written in Objective-C using Apple’s Xcode IDE - the standard method of writing Mac and iOS applications. Over the past year or so, we rewrote iRhino 3D in C# using Xamarin. There are lots of advantages to Xamarin, chief among them being the ability to use the native UI - as well as UI building tools.
We used Xamarin Studio on the Mac (Xamarin’s IDE) - along with Xcode - to build the UI for iRhino 3D. Xamarin Studio allows you to open Apple’s interface builder (.xib) files in Xcode - edit them there just as you would if you were working with Xcode and Objective-C. You use Interface Builder as you normally would, creating outlets and actions and linking them up to your UI elements. When you save the .xib, Xamarin automagically generates the C# properties (that bind to these elements UI) for you.
Just as with Objective-C and Xcode, you don’t have to use interface builder when using C# and Xamarin. You can write the UI yourself from scratch without ever creating a .xib should you so choose. From a back-end plumbing perspective, iOS/CocoaTouch doesn’t care if your UI is inflated from a .xib or created in code …just as long as all the actions/outlets (read: methods/properties) load when it comes time to tap a button.