026 iPhreaks Show – Custom UI Controls with Sam Davies

    0
    210

    Panel

    Sam Davies (twitter github blog)
    Rod Schmidt (twitter github infiniteNIL)
    Ben Scheirman (twitter github blog NSSreencast)
    Jaim Zuber (twitter Sharp Five Software)
    Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up)

    Discussion
    00:57 – Sam Davies Introduction

    ShinobiControls

    01:47 – Custom UI Controls
    04:50 – Design-Time Experience and Documentation
    09:49 – When Should You Use Custom Controls?
    11:40 – Controls

    UISlider
    TableView
    UIView

    25:40 – OpenGL

    CAEAGLLayer Class Reference

    27:01 – Transitioning Custom Controls
    30:04 – New for iOS7

    Picks

    The iOS Design Cheat Sheet (Jaim)
    AFNetworking-ASIHTTPRequest (Jaim)
    Cocoa Controls (Ben)
    Lufthansa Airlines (Ben)
    Samarkand (Ben)
    Geist Dark (Ben)
    NSCalendar-EqualWithGranularity (Rod)
    JVFloatLabeledTextField (Rod)
    Sublime Text (Sam)
    Dash (Sam)
    Introducing iOS7 Day-by-Day (Sam)
    what-if.xkcd.com (Sam)

    Next Week
    iOS Game Development with Kyle Richter and Nathan Eror
    Transcript
    BEN: Sounds like you need a shot of espresso, Chuck.

    [Laughter]

    JAIM: Do pushups maybe, you know.

    ROD: Cold shower.

    CHUCK: Cold shower, yeah. [Laughs]

    CHUCK: Hey everybody and welcome to Episode 26 of The iPhreaks Show! This week on our panel, we have Rod Schmidt.

    ROD: Hello from Salt Lake City!

    CHUCK: Ben Scheirman.

    BEN: Hello from Houston!

    CHUCK: Jaim Zuber.

    JAIM: I’m good enough, I’m smart enough, doggone it, people – sorry. Hello from Minnesota!

    BEN: [Laughs]

    JAIM: Can you believe that guy is my senator?

    CHUCK: [Laughs]

    JAIM: No. He don’t get back to work. I don’t know what’s going on here.

    CHUCK: [Chuckles] I’m Charles Max Wood from DevChat.tv, with a quick reminder to go check out GoingRogueVideo.com. I have a 30-minute video on how I went freelance. And we also have a special guest this week, and that’s Sam Davies.

    SAM: Hello there from Bristol, the UK!

    CHUCK: Do you want to introduce yourself for the people who don’t know who you are?

    SAM: Sure! I’m Sam Davies. I work now for a company called ShinobiControls, and we build various different UI controls for both iOS and for Android and things. All kinds of different things; I’m not going to [unclear] you with exactly what we do, but charting and all kinds of different to help people’s [unclear]. I stay at that life as a computer vision researcher back in the day a few years ago. I spent a while of doing that. But Academia just doesn’t really have any money so I had to leave Academia and go do something a bit more applicable so I started doing mobile development and kind of stuff at working machine over a few years ago. Now, I work as a developer evangelist so kind of writing different bits and pieces and teaching people about things as well. I like talking to devs and doing dev work as well.

    CHUCK: Very nice. We brought you on the show to talk about “Custom UIControls”.

    SAM: Yup! I guess, sure, I’d talk a little bit about what – what they are and why you would want to make custom UIcontrols.

    CHUCK: Yeah, that sounds like a good start to me.

    SAM: UIControls, we all know exactly what UIControls are because we use them all the time, but what that actually means for somebody who’s using something that really helpful for lots of different groups of people including designers, developers, and for the end user as well. They represent a common vocabulary of ways and what you interact with an app. So we’re all used to UIControls in iOS because we have things like UISliders, we have Buttons, we have segment of control, whole selection of different things, and they were really, really useful.

    But the question always comes when you get to the stage where you want something that doesn’t quite – whether the existing ones from iOS don’t exactly do what you want to do – you want to have something slightly different. An example I always give whenever anybody wants to talk to me about this kind of thing is,