Find out what's covered in our Custom Controls in iOS video course!
This is a companion discussion topic for the original entry at https://www.raywenderlich.com/4433-custom-controls-in-ios/lessons/1
Find out what's covered in our Custom Controls in iOS video course!
Hi I have problem with using Asset pdf image file for universal with UIControl.
My custom control didnât render pdf to match button within my custom control, I test it on iOS 10.2 simulator.
Improper Swift programming here. The instructors are not programming the Swift way where attribute encapsulation is outlined in a protocol where the âgettingâ and/or âsettingâ behavior is to be defined. Use of fileprivate, etc. is incorrect and not needed in modern OOP design patterns.
I really really tried to like this lesson and follow it along, but this is badly paced. The examples are way too involved with core image and there isnât much explanation. A lot of the code is already provided but without much context.
For the most part this lesson feels like debugging controllers that are 90% built. The first example that covers composition is well built since it start from the beginning and explains all aspects of it, but the three ring slider and the colorgon are rushed through. It also feels like there could be three or four other examples between the DeluxeButton and ThreeRingSlider.
Thank you for the feedback!
If you could let us know what code you think falls into the âalready provided but without much contextâ category, that will be useful when we update the course in the future.
Did you go through the challenges by any chance? We put a lot of code there that supports what happens in the following videos. From this point on, the challenges are going to be in video form also, which hopefully will help.
Hi Jessy,
Yes I did go through all of the challenges I donât think thatâs the issue. I just think the ThreeRing
and Colorgon
are too âmeatyâ for a lesson like this. They have too many moving parts and trying to touch on them in a single lesson feels overwhelming. This is where students might feel some aspect of the lesson is out of context and wish there was more background info. Now I know this is an advance course and has its prerequisites, but the prerequisite to completely understand what is going on is already advanced enough that anyone who knows it, probably wouldnât need this course.
Some examples of where I thought more context and background was needed:
With CircularGradientLayer
, that class was shown and skipped over without much explanation on how itâs creating the color effect. This layer uses CIColorKernel
and some shading scripting that as far I was concerned was a black box that magically created the desired effect.
In AdvanceAnimation
,I found myself pausing and looking stuff up continuously. I think covering the CAKeyframeAnimation
extension in more detail would have been helpful. Again, I think someone who knows CoreAnimation well enough to completely follow along, wouldnât need this part, and someone who doesnât wouldnât be able to follow it.
In CoreImage
CoreGraphics
, you guys cover a ton of stuff. Within 11 minutes you had touched on CoreImage Kernel, Layer draw, creating a ciImage from a kernel, using cgContext, prepareForInterfaceBuilder, creating CAShapeLayer mask using CGMutablePath, Strides and etc.
That being said, I thought you guys are great at presenting the material and itâs obvious you know your stuff. The deluxeButton example was great and the Gesture Recognizer section was perfect. I just wish instead of the ThreeRing
and Colorgon
, you guys had used simpler examples. Something that focuses more on how to design and develop a custom controller from the ground up using more basic aspects of CoreImage
, CoreGraphics
and CoreAnimation
Thank you (again) so much for the fantastic feedback. Our own feelings are reflected in much of what youâve said. For the next time we update this course, or something based on it, weâll be sure to devote more time to the topics, across more videos. Either those videos should be in the course itself, or covered in new courses that are clearly marked as being prerequisites.
Why do you use CIColorKernel for the gradient instead of CAGradientLayer?
@jessycatterwaul Could you please take care of this one when you get a chance? Thank you - much appreciated! :]
Hi there!
To which use of CIColorKernel
are you referring? Thereâs one use of it in the second project, and one in the third.
In CircularGradientLayer from HealthRings.
Not to sound mean but the instruction style of these 2 instructors is not good.
First having 2 instructor which switch randomly is distracting.
Second the girls voice is to high pitched and wavy.
Third they move their body a lot which distractsâŠ
Fourth I do not know why many interesting topics are covered by these 2 instructors
Hi, anyone has tips on best practise testing custom controls in iOS? UnitTest or similar? Thanks
@catie Can you please help with this when you get a chance? Thank you - much appreciated! :]