Hey Michael -

It might help to approach this problem with the idea of "If I had multiple view controllers using this view, how would I make that work best".

Event handling is something you would normally manage at the UIView layer. After those events are handled, they're typically translated them into some sort of action, or delegate callback. The delegate call back that builds further meaning belongs in the view controller, but the event capturing and translation into some meaningful gesture should go in the view. UIButton for example tracks a touch and delivers an action. It's up to the button to track the touches, and a controller to receive the action and ascribe some meaning to it.

If you're view is completely generic, and you want to customize a specific instance of it for one view controller, then you should place your view customizing code in you're -[UIViewController viewDidLoad] override. If your view would want these customizations no matter what controller it was working with, you should place them in the view's awakeFromNib method.

Good Luck -
Jon Hess

On Jun 4, 2009, at 3:45 PM, Michael A. Crawford wrote:

Previously, I would have said the view-controller. But I just finished looking at the Metronome sample, which is included in the iPhone SDK. The touch handling code as well as some of the view initialization code (requiring a completely loaded view) is implemented in the UIView-derived class. Is this a bad example of how things should be partitioned or do I have the wrong idea about what the view-controller is for?

Here are some related follow-up questions:

1) What should be implemented in the view-controller?

2) Should all of the view properties be completely setup and configured within the view's own init and awakeFromNib methods or is the intent of viewDidLoad to allow for configuring view properties before proceeding?

Yeah, I'm confused.  Please discuss.  I will watch and learn.

-Michael
----------------------
The difference between genius and stupidity...
...is that genius has its limits."

-- Albert Einstein



_______________________________________________

Cocoa-dev mailing list ([email protected])

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/jhess%40apple.com

This email sent to [email protected]

_______________________________________________

Cocoa-dev mailing list ([email protected])

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to