SwiftUI Book for App UI Design
New SwiftUI book from Apress for App development
New SwiftUI book from Apress for App development
Check out the playlist for the “5-Minute iOS Tips” I did for Accelebrate – there will be 4 in the series as of now. The related code files are here. In this video I show you how to use shorthand argument names in your Swift Higher Order Functions. Shorthand argument names help you make Read more about 5-Minute iOS Tips Video Series[…]
Like many others, when I upgraded to Xcode 10, I wasn’t a fan of the missing Object Library. Once I found it, I knew I’d learn that short cut really fast: ⇧⌘L But it was still annoying that it disappeared after the put something in Interface Builder. Then once, by accident, I was able Read more about Xcode 10 – How to Keep the Object Library Open[…]
I recently developed this course for Linkedin Learning/Lynda.com to help people getting started with AWS. The idea is that there are many courses and certifications but many of them just cover a slice of AWS. This is meant to cover the topics in the AWS Associate-Developer certification. Not that you can pass the test after Read more about Learning Amazon Web Services (AWS) for Developers (Online Course)[…]
We often need to add a slide in menu to a UIViewController. It’s no easy task in Interface Builder. Here’s how to make one in code… Slide in Menu as an UIViewController Extension First create a new file called MenuMgr.swift in your project. Declare the class… (link to the code at the bottom) Read more about Slide in Menu as an UIViewController Extension[…]
The all important question everyone has to ask is: how much will it cost? App development cost varies based on several factors and can range widely. App Development Cost Of course the requirements of the app drive the app development cost. However, that’s not very clear since some requirements are easy/cheap and some are very Read more about App Development Cost – What Does it Cost?[…]
I started getting the Xcode 7 Invalid Bundle error: ERROR ITMS-90474: “Bundle Invalid. iPad Multitasking support requires there orientations:’UIInterfaceOrientationPortrait,UIIinterfaceOrientationPortraitUpsideDown,UIInterfaceOrientationLandscapeLeft,UIInterfaceOrientationLandscapeRight’. Found ‘UIInterfaceOrientationPortrait’ in bundle. Xcode 7 Invalid Bundle Fortunately the fix is easy: Select your project Select the General Tab Select your Target Check the box titled “Requires full screen” Done. More: xcode submit invalid bundle ipad Read more about Xcode 7 Invalid Bundle – iPad Multitasking Required Orientations[…]
From MacRumors.com… There are quite a few major changes in iOS 9, like split-screen multitasking for the iPad, improvements to search and Siri, under-the-hood performance boosts, and revamped apps, but there are also dozens if not hundreds of lesser-known tweaks and refinements that make the iOS 9 experience better than ever before. Weve had a Read more about iOS 9 Hidden Features: Settings Search, Selfie Folder, Home Sharing for Music, Go Back to App, and More – Mac Rumors[…]
There were several new big announcements at the apple ‘hey siri’ events. iPhone 6s with 3D touch, tvOS for the new Apple TV and the large iPad Pro were the highlights… Hey Siri Source: Mac Rumors: Apple Mac iOS Rumors and News You Care About Apple was on stage at the Bill Graham Civic Read more about Mac Rumors: ‘Hey Siri’ Event Roundup: iPhone 6s, iPad Pro, New Apple TV and More[…]
KGI Securities analyst Ming-Chi Kuo has issued a new report that suggests next year’s “iPhone 7” could be Apple’s thinnest smartphone yet, with a thickness of somewhere between 6.0mm and 6.5mm, which Kuo mentions is a near similar measurement of the current iPod touch’s 6.1mm. As a comparison, the current model of the iPhone 6 Read more about Mac Rumors: ‘iPhone 7’ Thickness Likely to Approach iPod Touch[…]
I’ve been seeing the libGPUSupportMercury.dylib iOS Crash and having a tough time nailing it down. I still can’t reproduce it predictably. However, I believe I have enough to avoid it. libGPUSupportMercury.dylib iOS Crash For me it’s happening in the initWithFrame: call for MKMapView in the background. The app monitors for significant location changes. When it’s Read more about libGPUSupportMercury.dylib iOS Crash[…]
Testing location functionality can be tough. Significant location change updates especially so. Here’s how to test SLC in the simulator… Test Significant Location Change You may need to reset the simulator (iOS Simulator>Reset Contents and Settings…) to test Significant Location Change. These steps assume you have setup your app to use the Location Manager to monitor Read more about Test Significant Location Change – iOS Simulator[…]
Drew Baye had a great idea for an app to be able to calculate the resistance on an Ivanko Super Gripper. He had the data and I created a simple app: Invanko Super Gripper App Invanko Super Gripper App The calculator allows you to quickly and easily determine the spring configuration required for Read more about Invanko Super Gripper App – Resistance Calculator[…]
I recently started using Parse.com’ crash reporting and wanted to pay better attention to my build numbers in Xcode. I found this post on stackoverflow about it and used the solution. It works great and I certainly want to give credit where it’s due. Xcode 6 Auto-Increment Build Number Steps: Read more about Xcode 6 Auto-Increment Build Number Script[…]
I needed to simulate slow network speeds for the iOS simulator. There’s a pretty easy provided way to do it. Click on Xcode>Open Developer Tool>More Developer Tools… This will take you to an Apple website to download more tools (or just click here). Pick “Hardware IO Tools for Xcode” and download it. The dmg Read more about iOS/iPhone Simulator – Simulate Slow Network Speeds[…]
I kept getting an error like this… NSCocoaErrorDomain Code=133020 “The operation couldn’t be completed. (Cocoa error 133020.)” UserInfo=0x1115a6d0 {conflictList=( “NSMergeConflict (0x1115a670) for NSManagedObject I chased the bug for a while looking at all types of threading issues. In the end, it was just that my background context didn’t have a merge policy set on it… Read more about NSMergeConflict CoreData Crash in iOS 7[…]
In addition to a larger display, the iPhone 6 is expected to launch this September with a thinner design, a faster processor, and an improved camera. The larger 5.5-inch iPhone 6 is also rumored to exclusively have optical image stabilization to also differentiate it from the smaller iPhone 6, which will instead have an advanced Read more about Only the 5.5-Inch iPhone 6 May Offer 128GB Models – Mac Rumors[…]
There’s a lot to digest from the WWDC Keynote. Many new SDK frameworks, updates, UI changes, features,… so much… but no new hardware. Interesting. I intend to digest it a bit and then update this post w/ the real content. For now, I’ll just post my notes… WWDC 2014 Keynote 70% first Read more about WWDC Keynote Summary[…]
Apple recently released iOS 7.1 w/ some new/updated features. I like the minor UI changes they made to make things sharper, but there’s a few other settings that aren’t so obvious you might want to check out here: iOS 7.1 Features: Top 5 new iOS 7.1 features to try right now | BGR. I particularly Read more about iOS 7.1 Features: Top 5 new iOS 7.1 features[…]
ContractIQ has an interesting infogram up on their dashboard today. It talks about costs by angencies, expectations of rising in costs, cross-platform thoughts, etc. It’s pretty interesting and along the lines I’d expect to see. Check it out! Among some of the interesting aspects of the infogram, are these stats… 54% of mobile dev Read more about ContractIQ Infrogram about App Costs[…]
In some cases, you want to disable ARC in your project just for one or some subset of files. Usually this is the case, for me, that I’m using a file from an online repository that I don’t want to change for various reasons. The way to disable ARC for that file is in the Read more about Disable ARC Compilation in Xcode for an iOS/Objective-C File[…]
Brainwash Inc. is featured today on ContractIQ. They are showcasing the ITGO app developed for interval training using the user’s fast/slow playlists for the various intervals. ITGO utilizes a very custom interface with dials and nobs. Also, the interval timing is displayed with a circle of on/off LED-like images. The playlists are created by the Read more about Featured on ContractIQ[…]
Sometimes it’s necessary to change the font on an app and you don’t want to go into Interface Builder and manually change them all. Ug. So you can recursively call a method to change the font on all subviews that respond to the setFont: method.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
+(void)changeFontOnSubviews:(UIView*)view font:(UIFont*)font color:(UIColor*)color; { // 1. Set font on this control if ([view respondsToSelector:@selector(setFont:)]) [view performSelector:@selector(setFont:) withObject:font]; // 2. Set the text color (if color is passed in) if (color && [view respondsToSelector:@selector(setTextColor:)]) [view performSelector:@selector(setTextColor:) withObject:color]; // 3. Variation: UIButton title color if (color && [view isKindOfClass:[UIButton class]]) [(UIButton*)view setTitleColor:color forState:UIControlStateNormal]; // 4. Other vaiations? // 5. Do the same for subviews for (UIView *v in view.subviews) [MBConstants changeFontOnSubviews:v font:font color:color]; } |
Check that it responds to the selector and call Read more about Changing iOS Font on All Widgets (UILabel, UIButton, etc.)[…]
Sometimes I can’t help but notice how much blue Apple tends to use in their icons. Both OSX and iOS. I wonder if it’s b/c they have a preference for that color for some reason or if it’s more for flow and appearance??? Some other icons are designs (maps) or another color (iTunesConnect) and such, Read more about Apple Loves Blue???[…]
I had a unique problem today – if a page opens a new ‘window’ in a UIWebView and then calls window.close to close it, how is that handled in iOS? UPDATE: Swift version added at the bottom. On top of that, the pop-up window was to allow the user to select a value for Read more about iOS UIWebView Handle window.open/window.close PopUp Page[…]
Apple – iPhone 5s – Tips and Tricks. Many people have been confused by the changes in iOS 7. Apple has published a list of Tips and Tricks. It’s geared towards iPhone 5S so it may not all apply to iOS 7, but there are other pages for: 4s and 5c.
I found my popover’s going to iOS 7 didn’t look so great. I searched around and posts were pointing to subclassing the abstract UIPopoverBackgroundView class. I found GIKPopoverBackgroundView and the demo app for it looked good. It was fairly easy to use – Copy GIKPopoverBackgroundView.h/.m into my project Copy the images from the images folder Read more about UIPopoverBackgroundView[…]
If you’re reading this, you’ve probably received the email from Apple saying your iCloud storage is almost full BUT you can’t see what it taking up all the space. Hopefully this will help…
[…]
I decided to add ChartBoost to a Unity game I was developing. I went to chartboost.com and got the unity plugin. The doco there was pretty good, but seemed to end w/ “These scripts demonstrate how to hook up exposed methods” and I wasn’t sure where to go.
[…]
Here’s a quick/easy demo project using OpenCV to detect a circle or smile (two different view controllers): https://github.com/lukagabric/iOS-OpenCV
[…]
The WWDC videos are being released here: https://developer.apple.com/wwdc/videos/ Enjoy!
Sometimes it’s necessary to restart an app, but if you just run it again, it may still be in memory.
To remove it from executing/running memory, follow these steps…
[…]
No In-App Purchases – one price you get it. A simple tool to track your 400 rep workout. Randomly generated 4-move workout. 10 reps, 10 times. 400 reps. Great for a quick, at-home workout. A variation of the deck-of-cards workout but with out the variation of 2, 3, 4 reps – it’s all 10 reps. Read more about Fit4Today – Fitness App[…]
As a moderator at RayWenderlich.com, I’ve started answering some users’ questions. Here’s one of the first I was able to answer for someone that others might find interesting. In case you ever need to find out the file name from the iOS photo album.
I have several domains and a) want to check them all from 1 account and b) want to be able to write from them using that one account.
This isn’t tough w/ web clients (I use Yahoo!) but for my iOS devices it has the added challenge that I want to use the native client. That way if an app kicks me to the email UI, I can carry on as usual.
So the other emails are just forwards to my Yahoo account. No problem. But to have them as options to write from is different.
I found a couple sites that helped me figure out how to do this…
[…]
The Moms With Apps blog supports family-friendly developers seeking to promote quality apps for kids and families.
Moms With Apps is based on the following principles:
Apple docs on Dynamic Method Resolution UPDATED FOR ARC BELOW. If you want a class to respond to a given method w/o knowing what that method is when coding, you can use Dynamic Method Resolution. In my case, I wanted to store some values in a dictionary not knowing what would be stored there (JSON Read more about iOS Dynamic Method Resolution[…]
Some great content, quotes and charts in this article comparing analytics from iOS vs Android… For every 10 apps that developers build, roughly 7 are for iOS. via App Developers Signal Apple Allegiance Ahead of WWDC and Google I/O. Another good quote from the article… “For every $1.00 a developer earns on iOS, he can Read more about App Developers Signal Apple Allegiance Ahead of WWDC and Google I/O[…]
Todo4Today‘s new email feature let’s you send an email to create a todo item in your todo list. Once you have the app and purchase the Email feature (Settings>Additional Features), you can email 4TodayApps.com using these guidelines: Email Address For Time: For todo’s without a time, just send to todo@4todayapps.com. If you want a reminder Read more about Todo List Item via Email – Todo4Today iOS App[…]
Tom Harrington post on CoreData/JSON conversion… You may know me as @atomicbird on Twitter. Just a few days ago my book Core Data for iOS: Developing Data-Driven Applications for the iPad, iPhone, and iPod touch (co-written with the excellent Tim Isted) was published, and Matt invited me to contribute some Core Data tips to CIMGF. Read more about Saving JSON to Core Data | Cocoa Is My Girlfriend[…]
A couple of good, similar posts about getting your Core Data database in iCloud for apps… iOS How-To : Using Core Data with iCloud – Une goutte d’eau dans la mare du web. http://timroadley.com/2012/04/03/core-data-in-icloud/ These steps/methods are pretty much cut-and-paste but require some Provisioning Portal steps, etc. I had to remove the dispatch call… dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, Read more about iPhone Development: Using Core Data with iCloud[…]
This was tricky… I kept getting: iPhone/iPod Touch: Icon.png: icon dimensions (0 x 0) don’t meet the size requirements. The icon file must be 57×57 pixels, in .png format (-19014) I found the fix here: MacOSX 10.7.3 Update Breaks iOS App Validation. Thanks Manbolo! Basically, get the latest version of Application Loader, run it and Read more about MacOSX 10.7.3 Update Breaks iOS App Validation[…]
If your app plays music, you may want to handle the remove audio control events. And you might also want to display applicable info like album art and the track name. It’s not complicated, you mainly just need to know when to update it and what’s available to update. I use a method called updateNowPlaying. Read more about How to Make an App: iPhone Lock Screen Image[…]
Allowing your app to receive remote audio control events is pretty easy. The gist of it is to just tell the OS you’re interested in being told of the events. Then you just have a callback for the events and you can act on them. For the view controller that’s playing music, you can declare Read more about How to Build an App: iOS Background Audio Controls[…]
I added a new category called ‘how to build an app‘ and this is a great post for it. It’s certainly not the very first step in how to make an app, but it’s important. TestFlight is a great, free service that allows you to send builds to testers for use on their device. Read more about How to Build an App: TestFlight – Testing Apps by Users[…]
UIImage imageNamed is nice that it caches, but w/o being able to control when it clears the cache, it can be trouble. However, as this example (below) shows, there’s an easy way to avoid the imageNamed cache, create your own references and clear it when you’d like. via imageNamed is evil « Under The Bridge.
[myTableView setBackgroundView:nil]; via UITableView backgroundColor always gray on iPad – Stack Overflow. I ran into this problem where the view backgrounds were always gray. Confusing! As the post stats, try one of these:
1 2 3 4 5 6 7 |
[myTableView setBackgroundView:nil]; [myTableView setBackgroundView:[[[UIView alloc] init] autorelease]; I tried the first - ignoring the warnings as a test - and it worked. This is for an internal/prototype app so I'll wait to see if I get in trouble before heeding the warnings. :) Living on the EDGE! |
VIDEO: Apple to make iPhone announcement Tuesday – News – Daily Campus – Southern Methodist University. Some video including me being interviewed on the upcoming (now past) announcement of the iPhone 4S.
Can’t create iPad XIB with Xcode 4 – Stack Overflow. A helpful post about how to do something that was quite easy in Xcode 3…