Friday, October 24, 2014

Making a numeric/pin pad with NSLayoutConstraints


NSLayoutConstraints are awesome. But like many cocoa technologies (strangely, all the ones that I like) the learning curve is fairly steep.

The goals was simple, I wanted to make a Numeric pin pad that would center itself in it's container view, while ensuring that all the buttons remained square, and aligned .... Ok, maybe not so simple.


Personally I hate resorting to changing the constraint priority, as I feel that most of the time it's a sign that your approaching the problem incorrectly. You can see a gist of the constraints below, ultimately I found the trick was this gem "-(>=1)-". By placing this between the outermost views and then pinning these to the superview, they provide the layout with the flexibility to meet all of it's requirements without having to adjust the superview or simply "explode".

Lastly, if your wondering why i've adopted this strange grouping mechanism inside my loop, I wanted the subview index have a 1-1 mapping with the button number, with out having to resort to setting tags. This way in the button handers I can look up the index of the sender in the subview collection, and know which button it is.

Like 99% of cocoa code, it's not concise. Disfrutarlo!

Monday, July 07, 2014

Future by Design

As a child I loved popular science magazine. Mainly because I was busy designing the future of space propulsion. Hint, it used "controlled" nuclear explosions.

However I've felt that since the 90's we (as a society) have lost our wondering quest for the next generation society. Today I discovered an inventor/futurist named Jacque Fresco. He's been pumping out ideas since before the second world war, some of which I think are brilliant, he also has some interesting views on society, and why it works as it does.
   

Tuesday, February 11, 2014

Filing Corporation Tax: CT600

I've been running my own UK Private limited company for a few years now. Because I'm cheap, I do my taxes myself. Usually from a location that would be considered glamorous by UK standards. As such calling the support line isn't really an option.

In recent years I've had a number of issues downloading the CT600 form. If you want to file independently you have to do it via this form, there is no alternative. This of course creates an issue if your nearing the deadline, and can't access the form.

If you happen to be having issues I have a single tip for you. Private browsing mode. Works for me every time.

Happy Tax filling day.

Tuesday, January 07, 2014

2014: Feliz Nuevo Año

A Kite Surfer in Cabo de La Vela, Colombia
While I doubt 2014 will mean that I suddenly start posting on a regular basis. For my millions of readers, Happy New Year.