<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" > <channel><title>Comments for toxicsoftware.com</title> <atom:link href="http://toxicsoftware.com/comments/feed/" rel="self" type="application/rss+xml" /><link>http://toxicsoftware.com</link> <description>RANDOMIZE USR 0</description> <lastBuildDate>Tue, 24 Jan 2012 20:00:16 +0000</lastBuildDate> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.3.1</generator> <item><title>Comment on UIStoryboard Issues by UIStoryboard Power Drill [Jason Lust] (iDevBlogADay) &#124; zdima.net</title><link>http://toxicsoftware.com/uistoryboard-issues/comment-page-1/#comment-22361</link> <dc:creator>UIStoryboard Power Drill [Jason Lust] (iDevBlogADay) &#124; zdima.net</dc:creator> <pubDate>Tue, 24 Jan 2012 20:00:16 +0000</pubDate> <guid isPermaLink="false">http://toxicsoftware.com/?p=548#comment-22361</guid> <description>&lt;p&gt;[...] read some good reasons why Storyboards are not ready for prime time. Some of the articles like Jonathan at toxic software.com simply help me find out that I wasn’t doing something wrong, it just wasn’t meant for that. But [...]&lt;/p&gt; </description> <content:encoded><![CDATA[<p>[...] read some good reasons why Storyboards are not ready for prime time. Some of the articles like Jonathan at toxic software.com simply help me find out that I wasn’t doing something wrong, it just wasn’t meant for that. But [...]</p>]]></content:encoded> </item> <item><title>Comment on UIStoryboard Issues by Wayne Hartman</title><link>http://toxicsoftware.com/uistoryboard-issues/comment-page-1/#comment-22360</link> <dc:creator>Wayne Hartman</dc:creator> <pubDate>Sun, 08 Jan 2012 00:13:00 +0000</pubDate> <guid isPermaLink="false">http://toxicsoftware.com/?p=548#comment-22360</guid> <description>&lt;p&gt;Great post.  I&#039;ve been using storyboards for over a month now and have run into the same issues.  However, I did discover some even more rotten ones:&lt;/p&gt;&lt;p&gt;1) You can&#039;t just use segue.destinationController if you are using a VC that is wrapped in a navigation controller.  You must dig into the controller hierarchy and find it.  For example:&lt;/p&gt;&lt;p&gt;       UIViewController* viewController = nil;&lt;/p&gt;&lt;p&gt;        if ([[segue destinationViewController] isKindOfClass:[UINavigationController class]]) {             UINavigationController* navController = [segue destinationViewController];             viewController = (UIViewController&lt;em&gt;)[navController topViewController];         } else {             viewController = (UIViewController&lt;/em&gt;)segue.destinationViewController;         }&lt;/p&gt;&lt;p&gt;This is very troublesome to me and just doesn&#039;t smell right.&lt;/p&gt;&lt;p&gt;2)  There is no automatic prepareForSegue for an accessory view action on a table view cell.  You have to implement this yourself.  So much code...&lt;/p&gt;&lt;p&gt;3)  There is a reproducible flaw I discovered with an overrelease on a UISearchViewController if you create one as part of your storyboard and a low memory situation occurs.  So much for ARC.    If you&#039;d like an example project on this, fell free to hit me up.&lt;/p&gt;&lt;p&gt;4)  If you are doing a Universal app, you must keep the segues in sync. If you change a segue name in the iPhone version, you must make a corresponding change in the iPad version, else use branching logic.  Having to duplicate or keep these sorts of things in sync really rubs me the wrong way.  The problem is that I can&#039;t think of a good alternative.&lt;/p&gt;&lt;p&gt;5)  Popovers on iPad are the worst.         a)  You cannot programmatically set the anchorView nor the anchorRect without using a private API.                 i) This is important to be able to do when you may not create everything through IB.         b)  The expected order of operations in a popover differ from other segue transitions:                ii) The view is loaded first, then the prepareForSegue call is made.                ii)  In other segue transitions, prepareForSegue is called first, then the view is loaded.                iii)This is detrimental to the design of your ViewControllers because some UI modifications may have been expected to be made based on models you set in prepareForSegue, thus causing you to write more code to overcome the difference in behavior...&lt;/p&gt; </description> <content:encoded><![CDATA[<p>Great post.  I&#8217;ve been using storyboards for over a month now and have run into the same issues.  However, I did discover some even more rotten ones:</p><p>1) You can&#8217;t just use segue.destinationController if you are using a VC that is wrapped in a navigation controller.  You must dig into the controller hierarchy and find it.  For example:</p><p>       UIViewController* viewController = nil;</p><p>        if ([[segue destinationViewController] isKindOfClass:[UINavigationController class]]) {             UINavigationController* navController = [segue destinationViewController];             viewController = (UIViewController<em>)[navController topViewController];         } else {             viewController = (UIViewController</em>)segue.destinationViewController;         }</p><p>This is very troublesome to me and just doesn&#8217;t smell right.</p><p>2)  There is no automatic prepareForSegue for an accessory view action on a table view cell.  You have to implement this yourself.  So much code&#8230;</p><p>3)  There is a reproducible flaw I discovered with an overrelease on a UISearchViewController if you create one as part of your storyboard and a low memory situation occurs.  So much for ARC.    If you&#8217;d like an example project on this, fell free to hit me up.</p><p>4)  If you are doing a Universal app, you must keep the segues in sync. If you change a segue name in the iPhone version, you must make a corresponding change in the iPad version, else use branching logic.  Having to duplicate or keep these sorts of things in sync really rubs me the wrong way.  The problem is that I can&#8217;t think of a good alternative.</p><p>5)  Popovers on iPad are the worst.         a)  You cannot programmatically set the anchorView nor the anchorRect without using a private API.                 i) This is important to be able to do when you may not create everything through IB.         b)  The expected order of operations in a popover differ from other segue transitions:                ii) The view is loaded first, then the prepareForSegue call is made.                ii)  In other segue transitions, prepareForSegue is called first, then the view is loaded.                iii)This is detrimental to the design of your ViewControllers because some UI modifications may have been expected to be made based on models you set in prepareForSegue, thus causing you to write more code to overcome the difference in behavior&#8230;</p>]]></content:encoded> </item> <item><title>Comment on UIStoryboard Issues by Hitting the wall with Storyboards &#124; a Small Teapot</title><link>http://toxicsoftware.com/uistoryboard-issues/comment-page-1/#comment-22359</link> <dc:creator>Hitting the wall with Storyboards &#124; a Small Teapot</dc:creator> <pubDate>Tue, 03 Jan 2012 19:34:20 +0000</pubDate> <guid isPermaLink="false">http://toxicsoftware.com/?p=548#comment-22359</guid> <description>&lt;p&gt;[...] Wight wrote about the problems with iOS 5’s new Storyboards API back in December, just as I was starting to use them for myself. At the time, I thought I would be [...]&lt;/p&gt; </description> <content:encoded><![CDATA[<p>[...] Wight wrote about the problems with iOS 5’s new Storyboards API back in December, just as I was starting to use them for myself. At the time, I thought I would be [...]</p>]]></content:encoded> </item> <item><title>Comment on UIStoryboard Issues by Matt</title><link>http://toxicsoftware.com/uistoryboard-issues/comment-page-1/#comment-22358</link> <dc:creator>Matt</dc:creator> <pubDate>Fri, 23 Dec 2011 02:05:00 +0000</pubDate> <guid isPermaLink="false">http://toxicsoftware.com/?p=548#comment-22358</guid> <description>&lt;p&gt;Enjoyed this post a lot.&lt;/p&gt;&lt;p&gt;The bloated prepareForSegue is a bad smell, in the Refactoring sense. And I would have expected that the solution would be the same as in Refactoring: multiple UIStoryboardSegue subclasses. Unfortunately the inventors of storyboards didn&#039;t think of that, so prepareForSegue is sent to the source view controller and we end up with spaghetti.And string identifiers - could anything be less maintainable, more error-prone? And they didn&#039;t even think to show the identifier in big letters in the canvas part of the storyboard editor?Plus, the whole prepareForSegue architecture is just wrong; instead of letting the destination view controller specify its own designated initializer, so that it must be given the right data in order to be instantiated and can then do with that data what it likes, the source view controller winds up having to know the inner mechanisms of the destination view controller and set its properties or call its methods. That is not correct OOP design. Storyboards feel like a sop to beginners who don&#039;t understand view controllers, but I don&#039;t think they actually make life better for them or for anyone else. I do understand view controllers and I&#039;m very nimble with them; storyboards just get in my way.Nevertheless, the basic idea is intriguing, especially the insight that the whole repertoire of things that must happen as a view transition takes place can be clumped into an object (a segue).&lt;/p&gt; </description> <content:encoded><![CDATA[<p>Enjoyed this post a lot.</p><p>The bloated prepareForSegue is a bad smell, in the Refactoring sense. And I would have expected that the solution would be the same as in Refactoring: multiple UIStoryboardSegue subclasses. Unfortunately the inventors of storyboards didn&#8217;t think of that, so prepareForSegue is sent to the source view controller and we end up with spaghetti.And string identifiers &#8211; could anything be less maintainable, more error-prone? And they didn&#8217;t even think to show the identifier in big letters in the canvas part of the storyboard editor?Plus, the whole prepareForSegue architecture is just wrong; instead of letting the destination view controller specify its own designated initializer, so that it must be given the right data in order to be instantiated and can then do with that data what it likes, the source view controller winds up having to know the inner mechanisms of the destination view controller and set its properties or call its methods. That is not correct OOP design. Storyboards feel like a sop to beginners who don&#8217;t understand view controllers, but I don&#8217;t think they actually make life better for them or for anyone else. I do understand view controllers and I&#8217;m very nimble with them; storyboards just get in my way.Nevertheless, the basic idea is intriguing, especially the insight that the whole repertoire of things that must happen as a view transition takes place can be clumped into an object (a segue).</p>]]></content:encoded> </item> <item><title>Comment on UIStoryboard Issues by Drew McKinney</title><link>http://toxicsoftware.com/uistoryboard-issues/comment-page-1/#comment-22357</link> <dc:creator>Drew McKinney</dc:creator> <pubDate>Sun, 18 Dec 2011 16:02:00 +0000</pubDate> <guid isPermaLink="false">http://toxicsoftware.com/?p=548#comment-22357</guid> <description>&lt;p&gt;I&#039;m happy you posted this. I&#039;m struggling with Storyboards from a fundamentals standpoint. I&#039;m used to being able to access objects like the TabBar as an outlet without interference, but with Storyboards I am forced to grab the rootViewController from the window and trust that it&#039;s correct. Granted, this happens without storyboards, but it adds a new level of confusion by not allowing me to connect some things to code but not others. Granted, I&#039;m doing this to perform a more advanced interface action, but it&#039;s nothing out of question for an developer creating any kind of quality App.&lt;/p&gt;&lt;p&gt;Storyboards seem suited for those new to cocoa, allowing them to focus on the ViewController actions and not have to bother with the particulars of App delegate up front. Also, I&#039;ve used Storyboards with designers to visually place interface elements, allowing them partial exposure to the development process. But as you mentioned, these are simply too inflexible for any kind of advanced use. &lt;/p&gt; </description> <content:encoded><![CDATA[<p>I&#8217;m happy you posted this. I&#8217;m struggling with Storyboards from a fundamentals standpoint. I&#8217;m used to being able to access objects like the TabBar as an outlet without interference, but with Storyboards I am forced to grab the rootViewController from the window and trust that it&#8217;s correct. Granted, this happens without storyboards, but it adds a new level of confusion by not allowing me to connect some things to code but not others. Granted, I&#8217;m doing this to perform a more advanced interface action, but it&#8217;s nothing out of question for an developer creating any kind of quality App.</p><p>Storyboards seem suited for those new to cocoa, allowing them to focus on the ViewController actions and not have to bother with the particulars of App delegate up front. Also, I&#8217;ve used Storyboards with designers to visually place interface elements, allowing them partial exposure to the development process. But as you mentioned, these are simply too inflexible for any kind of advanced use. </p>]]></content:encoded> </item> <item><title>Comment on UIStoryboard Issues by Peter</title><link>http://toxicsoftware.com/uistoryboard-issues/comment-page-1/#comment-22356</link> <dc:creator>Peter</dc:creator> <pubDate>Sat, 17 Dec 2011 05:41:00 +0000</pubDate> <guid isPermaLink="false">http://toxicsoftware.com/?p=548#comment-22356</guid> <description>&lt;p&gt;I cannot be more agree with you. Storyboards suck.&lt;/p&gt; </description> <content:encoded><![CDATA[<p>I cannot be more agree with you. Storyboards suck.</p>]]></content:encoded> </item> <item><title>Comment on UIStoryboard Issues by kra</title><link>http://toxicsoftware.com/uistoryboard-issues/comment-page-1/#comment-22355</link> <dc:creator>kra</dc:creator> <pubDate>Thu, 15 Dec 2011 05:26:00 +0000</pubDate> <guid isPermaLink="false">http://toxicsoftware.com/?p=548#comment-22355</guid> <description>&lt;p&gt;Definitely agree with you. I&#039;m getting super weird behaviour on viewdidload/unload with container VCs. Bsically, the initial VC is a container VC, we have the children in the storyboard, loaded with instantiateVCWithIdentifier on demand. When a child VC is &quot;off screen&quot; (ie after removeFromParentVC), a memory warning does drop the views and outlets, as expected. But when it comes back (ie addChildVC), it loads only whatever is wired to the main view, the NSobject outlets not directly under the VC&#039;s main view are just not loaded. Not even init&#039;d. And even worse, wiring views into those nsobjects just crashes the app. Works fine if i move the children to a regular nib (one per nib).&lt;/p&gt; </description> <content:encoded><![CDATA[<p>Definitely agree with you. I&#8217;m getting super weird behaviour on viewdidload/unload with container VCs. Bsically, the initial VC is a container VC, we have the children in the storyboard, loaded with instantiateVCWithIdentifier on demand. When a child VC is &#8220;off screen&#8221; (ie after removeFromParentVC), a memory warning does drop the views and outlets, as expected. But when it comes back (ie addChildVC), it loads only whatever is wired to the main view, the NSobject outlets not directly under the VC&#8217;s main view are just not loaded. Not even init&#8217;d. And even worse, wiring views into those nsobjects just crashes the app. Works fine if i move the children to a regular nib (one per nib).</p>]]></content:encoded> </item> <item><title>Comment on UIStoryboard Issues by schwa</title><link>http://toxicsoftware.com/uistoryboard-issues/comment-page-1/#comment-22354</link> <dc:creator>schwa</dc:creator> <pubDate>Wed, 14 Dec 2011 19:06:00 +0000</pubDate> <guid isPermaLink="false">http://toxicsoftware.com/?p=548#comment-22354</guid> <description>&lt;p&gt;Madness! Madness I say.&lt;/p&gt;&lt;p&gt;There&#039;s nothing intrinsically wrong with UIStoryboard. I think &lt;em&gt;if&lt;/em&gt; Apple improves upon it , it could be really useful. I just don&#039;t think the current version of it is ready.&lt;/p&gt; </description> <content:encoded><![CDATA[<p>Madness! Madness I say.</p><p>There&#8217;s nothing intrinsically wrong with UIStoryboard. I think <em>if</em> Apple improves upon it , it could be really useful. I just don&#8217;t think the current version of it is ready.</p>]]></content:encoded> </item> </channel> </rss>
<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic
Page Caching using disk: basic
Database Caching using disk: basic
Object Caching 323/323 objects using disk: basic

Served from: toxicsoftware.com @ 2012-02-08 14:40:55 -->
