0

Control For Easily Adding Customizable Keys Above The iPhone/iPad Keyboard

-

A few months ago I mentioned a custom iOS UI control that allows you to add a row of convenience keys for easier text entry on the iPad.

Here’s a new control from Denis Lebedev called DLIDEKeyboard that builds upon this idea.

What this control provides is custom keys on both the iPhone and iPad and an easy way to add and customize these keys.  You can use simple key values or have buttons perform completely custom actions with custom images (the included example project demonstrates this).

Here’s an image from the Github page showing the included example project:

DLIDEKeyboard

You can find DLIdeKeyboard on Github here.

A nice straightforward component for adding custom keys.

0

Get List of Installed International Keyboards

-

The NSUserDefaults object is typically used to save/restore your application related preferences, configuration data, etc – see Write and Read User Preferences for more information. In addition to application specifics, there is a system wide default list that is available to all applications, accessible using the class methodstandardUserDefaults in the NSUserDefaults object.

To get a list of the system wide settings:

  1. NSDictionary* defaults = [[NSUserDefaults standardUserDefaults] dictionaryRepresentation];
  2. NSLog(@"Defaults: %@", defaults);
NSDictionary* defaults = [[NSUserDefaults standardUserDefaults] dictionaryRepresentation];
NSLog(@"Defaults: %@", defaults);

 

A partial list of the output on my device follows:

  1. Defaults: {
  2.     AppleICUForce24HourTime = 0;
  3.     AppleITunesStoreItemKinds =     (
  4.         wemix,
  5.         podcast,
  6.         ...
  7.     );
  8.     AppleKeyboards =     (
  9.         "en_US@hw=US;sw=QWERTY",
  10.         "zh_Hant-HWR@sw=HWR",
  11.         "emoji@sw=Emoji"
  12.     );
  13.     AppleKeyboardsExpanded = 1;
  14.     AppleLanguages =     (
  15.         en,
  16.         "zh-Hant",
  17.         fr,
  18.         de,
  19.   ...
  20. }
Defaults: {
    AppleICUForce24HourTime = 0;
    AppleITunesStoreItemKinds =     (
        wemix,
        podcast,
        ...
    );
    AppleKeyboards =     (
        "en_US@hw=US;sw=QWERTY",
        "zh_Hant-HWR@sw=HWR",
        "emoji@sw=Emoji"
    );
    AppleKeyboardsExpanded = 1;
    AppleLanguages =     (
        en,
        "zh-Hant",
        fr,
        de,
  ...
}

As you can tell, the defaults returned above are contained within a dictionary object. The list of keyboards in the dictionary is stored as an NSArray object. To retrieve the array, simply request the object for the key “AppleKeyboards”

  1. NSArray *array = [[NSUserDefaults standardUserDefaults] objectForKey:@"AppleKeyboards"];
  2. NSLog(@"Keyboards: %@", array);
NSArray *array = [[NSUserDefaults standardUserDefaults] objectForKey:@"AppleKeyboards"];
NSLog(@"Keyboards: %@", array);

The output of all the installed international keyboards looks as follows:

  1. Keyboards: (
  2.     "en_US@hw=US;sw=QWERTY",
  3.     "zh_Hant-HWR@sw=HWR",
  4.     "emoji@sw=Emoji"
  5. )
Keyboards: (
    "en_US@hw=US;sw=QWERTY",
    "zh_Hant-HWR@sw=HWR",
    "emoji@sw=Emoji"
)
0

Xcode 4 Keyboard Shortcuts now available!

-

Xc4 kbsc

The Xcode 4 Keyboard Shortcuts are now available. I've decided to make forking it and creating your own version easier by putting it up on Github. This will make it easier to browse forks and merge new formats in. Additionally it makes it easy to have a consistent go to place that doesn't change for updates to the shortcuts.

You can download the Xcode 4 keyboard shortcuts here:
Xcode Keyboard Shortcuts Repository
Xcode 4.0 Keyboard Shortcuts (Blue)
Xcode 4.0 Keyboard Shortcuts (Black and White)

Believe it or not I got a few requests to actually charge for the shortcuts. For something like this, it is just not my style, but if you want to contribute maybe so I can afford some better tools than pages or spend more time on maintaining them and updating them faster, then you can donate whatever you feel like here http://pledgie.com/campaigns/14858.