Victor Choi

  • Home
  • Business
    • Internet
    • Market
    • Stock
  • Parent Category
    • Child Category 1
      • Sub Child Category 1
      • Sub Child Category 2
      • Sub Child Category 3
    • Child Category 2
    • Child Category 3
    • Child Category 4
  • Featured
  • Health
    • Childcare
    • Doctors
  • Home
  • Business
    • Internet
    • Market
    • Stock
  • Downloads
    • Dvd
    • Games
    • Software
      • Office
  • Parent Category
    • Child Category 1
      • Sub Child Category 1
      • Sub Child Category 2
      • Sub Child Category 3
    • Child Category 2
    • Child Category 3
    • Child Category 4
  • Featured
  • Health
    • Childcare
    • Doctors
  • Uncategorized

3/27/2017

Keynote 7.1 , Easy to replace a font in Keynote

 1:10 PM     Apple, Font, keynote, Keynote 7.1, Mac, Management, Replace     1 comment   

Today Apple released Keynote 7.1. One of the new features is easy to replace a font in your presentation.

If you open your presentation in Keynote 7.1, there is a new font management window.

Font Replacement Window in Keynote 7.1
Font Replacement Window in Keynote 7.1

My first impression is much better intuitive to manage my font. I encourage you to use Keynote 7.1. You can update your Keynote through MacAppstore now.

Read More
  • Share This:  
  •  Facebook
  •  Twitter
  •  Google+
  •  Stumble
  •  Digg

3/23/2017

P.O.P - Power of Presentation

 7:46 AM     No comments   

Read More
  • Share This:  
  •  Facebook
  •  Twitter
  •  Google+
  •  Stumble
  •  Digg

12/26/2016

Bug - CLLocationManager deferredLocationUpdatesAvailable always returns false in iOS10

 3:53 PM     CLLocationManager, deferredLocationUpdatesAvailable, iOS10     No comments   

Recently I tried to use this method for my development in iOS10. By the way the function isn’t work in iOS10. It always returns false value.

I hope that Apple fixs it as soon as possible.

Read More
  • Share This:  
  •  Facebook
  •  Twitter
  •  Google+
  •  Stumble
  •  Digg

12/15/2016

iOS Keychain in Swift3

 4:03 PM     iOS, Keychain, Swift3     No comments   

In Swift3 you should cast all dictionary values to AnyObject if the objects are derived from NSObject.

Refer the link

Read More
  • Share This:  
  •  Facebook
  •  Twitter
  •  Google+
  •  Stumble
  •  Digg

12/13/2016

How to localize plist file?

 2:37 PM     internationalization, localization, plist, translation     No comments   

You must create InfoPlist.strings file and localize it. After that remember you need to key value to translate a text in infoplist file.
"NSLocationWhenInUseUsageDescription" = "BlahBlahBlah"
Read More
  • Share This:  
  •  Facebook
  •  Twitter
  •  Google+
  •  Stumble
  •  Digg

11/16/2016

Isn't LeftBarButtonItem showing on navigation bar?

 11:13 PM     LeftBarButtonItem, NavigationBar     No comments   

If you manually create a parent and child relationship between two view controllers, the child view controller might not have a navigation bar in this case. So you might be wondered why the navigation item of the child view controller doesn’t effect on the navigation bar. But you need to understand that the navigation bar on the child view controller is not the child view controller’s navigation bar. Because the child view controller is embedded into the parent view controller. So you need to create a LeftBarButtonItem on the parent’s navigation bar and customize the button with a target and an action pattern in the parent view controller.

Read More
  • Share This:  
  •  Facebook
  •  Twitter
  •  Google+
  •  Stumble
  •  Digg

Wait unitil a loop with asynchronous tasks finishes executing

 2:27 PM     dispatch, dispatch_group, GCD, loop, Swift, thread     No comments   

A completion Handler in iOS takes a thread to asynchronously get it done. So it means that we can’t know an exact point which the tasks finish. For example, if we use a for loop to execute several tasks in the background, how could we know all the task are done?

In this case you can use dispatch_group.

  1. Create a dispatch group which graps all the tasks in a for loop with dispatch_group_create().
  2. You point out a position which your code enters the dispatch group with dispatch_group_enter(groupname).
  3. You point out a position which your code leave the dispatch group with dispatch_group_leave(groupname).
  4. Lastly you can get a notification when all the tasks you assigned to a dispatch group is done with dispatch_group_notify.

If you want to see a concrete example for it, please refer this.

Read More
  • Share This:  
  •  Facebook
  •  Twitter
  •  Google+
  •  Stumble
  •  Digg
Newer Posts Older Posts Home

Search This Blog

Popular Posts

  • Remove "Desktop Video Firmware Updater" process in Mac

Blog Archive

  • ▼  2020 (2)
    • ▼  January (2)
      • Error- helm docker-registry does not have any acti...
      • How to clean up none docker images
  • ►  2019 (21)
    • ►  December (2)
    • ►  November (6)
    • ►  October (5)
    • ►  September (2)
    • ►  August (3)
    • ►  July (2)
    • ►  June (1)
  • ►  2017 (11)
    • ►  December (2)
    • ►  November (2)
    • ►  July (2)
    • ►  May (1)
    • ►  April (1)
    • ►  March (3)
  • ►  2016 (48)
    • ►  December (3)
    • ►  November (2)
    • ►  September (1)
    • ►  August (10)
    • ►  July (5)
    • ►  June (7)
    • ►  May (2)
    • ►  April (18)
Powered by Blogger.

Navigation Menu

  • Home
  • About
  • Documentation
  • Contact

Contact Us

Name

Email *

Message *

Copyright © Victor Choi | Powered by Blogger
Design by Hardeep Asrani | Blogger Theme by NewBloggerThemes.com | Distributed By Gooyaabi Templates