Archives du tag: Développement

Développement iPhone

Formations vidéos au développement iOS sur iPhone

Un petit billet rapide pour vous informer que j’ai réalisé une formation complète au développement iOS.

Bien entendu, tous les sujets n’ont pas pu être traités. C’est pourquoi je me suis appuyé sur l’expérience de Kaeli Soft afin de proposer les réponses les plus complètes aux questions les plus courantes.

Grâce à cette formation proposée par video2brain, vous aurez toutes les bases nécessaires au développement iOS (et un peu plus encore)

Vous pouvez visualiser gratuitement quelques extraits et voir le détail de la formation à l’adresse suivante : http://www.video2brain.com/fr/products-241.htm

Share
Développement

Utilisation optimale de UIImagePickerController

Quand vous utilisez UIImagePickerController pour prendre une photo avec l’iPhone depuis la bibliothèque ou bien l’appareil photo, il vous est possible d’éditer cette dernière grâce à l’option setAllowsEditing.

Cela se présente donc comme ceci :

if (imagePickerController == nil) { 		imagePickerController = [[UIImagePickerController alloc] init]; 		[imagePickerController setDelegate:self]; 		[imagePickerController setSourceType:UIImagePickerControllerSourceTypeCamera]; 		[imagePickerController setAllowsEditing:YES]; 	}   	[self presentModalViewController:imagePickerController animated:YES];

Jusqu’ici, pas de problème.

Seulement, c’est après que les problèmes arrives. Vous récupérez votre image via

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info { [...] }

Et vous vous rendez compte que l’image originale correspond à la capacité de l’appareil (3Mpx pour le 3GS) mais pas l‘image éditée qui est elle en 320×320 !!!

La méthode à utiliser est donc la suivante :

  • récupérer l’image originale
  • la mettre à l’endroit, car c’est à l’endroit qu’est créé le repère de découpe
  • utiliser le repère pour découper l’image
  • redimensionner l’image découpée aux dimensions souhaitées

Et voilà, vous avez votre belle image bien découpée et de bonne qualité !

Et si vous voulez annuler, voici le code (merci Laurent) :

- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker {     //Cancel     [[picker parentViewController] dismissModalViewControllerAnimated:YES]; }

Vous trouverez un projet d’exemple ci-dessous.

Télécharger le projet XCode d’exemple

Share
Développement iPhone

Activer le clavier Emoji de l’iPhone / iPod Touch

Emoji : kézako ?

Clavier Emoji iPhone OS

Tout d’abord, que sont les caractères Emoji ? Ce sont des émoticônes utilisés pour les SMS par diverses sociétés japonaises, dont Softbank.

Ces caractères sont des caractères Unicode standards.

Ils sont directement affichables dans vos applications iPhone. Testez donc le code suivant dans un UILabel par exemple :

label.text = @"\ue402 youpi !";

Tada !!

Et oui, vous voyez apparaître une icône dans le texte. Il n’est pas nécessaire d’activer le clavier Emoji pour afficher des émoticônes !

Passons à la pratique

Nous allons maintenant voir comment activer cette option.

Partie 1: Déblocage du clavier

Pour les développeurs

Voici le code nécessaire à l’activation du clavier.

Emoji.h

@interface Emoji : NSObject { }   + (id)emoji;   @property (nonatomic,getter=isEnabled) BOOL enabled;   @end

Emoji.m

#import "Emoji.h"   static NSString *const kPreferencesFilePath	= @"/private/var/mobile/Library/Preferences/com.apple.Preferences.plist"; static NSString *const kEmoji				= @"KeyboardEmojiEverywhere";   static NSMutableDictionary	*prefDict		= nil; static Emoji				*sharedEmoji	= nil;   @interface Emoji (hidden)   - (void)initialization;   @end   @implementation Emoji (hidden)   - (void)initialization { 	prefDict = [[NSMutableDictionary alloc] 				initWithContentsOfFile:kPreferencesFilePath]; }   @end   @implementation Emoji   @synthesize enabled;   #pragma mark - #pragma mark Keyboard enabled / disabled   - (void)setEnabled:(BOOL)value { 	if (prefDict == nil) { 		return; 	}   	if ([self isEnabled] == value) { 		return; 	}   	[prefDict setObject:[NSNumber numberWithBool:value] forKey:kEmoji]; 	[prefDict writeToFile:kPreferencesFilePath 			   atomically:NO]; }   - (BOOL)isEnabled { 	if (prefDict == nil) { 		return NO; 	}   	return [[prefDict objectForKey:kEmoji] boolValue]; }   #pragma mark - #pragma mark Singleton   + (id)emoji { 	@synchronized(self) { 		if (sharedEmoji == nil) { 			[[self alloc] init]; 		} 	}   	return sharedEmoji; }   + (id)allocWithZone:(NSZone *)zone { 	@synchronized(self) { 		if (sharedEmoji == nil) { 			sharedEmoji = [super allocWithZone:zone]; 			[sharedEmoji initialization]; 			return sharedEmoji; 		} 	} 	return nil; }   - (id)copyWithZone:(NSZone *)zone { 	return self; }   - (id)retain { 	return self; }   - (unsigned)retainCount { 	return UINT_MAX; }   - (void)release { }   - (id)autorelease { 	return self; }   @end

Le fonctionnement :

Emoji *emoji = [Emoji emoji];   // activation du clavier emoji.enabled = YES;   // désactivation du clavier emoji.enabled = NO;

Et voilà !

Pour les non développeurs

Kaeli Soft est actuellement en train de développer une application gratuite permettant d’activer ce clavier. Vous en saurez plus prochainement.

Partie 2: Activation du clavier

Lancez l’application Réglages.

Allez dans Général.

Puis Clavier.

Ensuite Clavier internationaux.

Sélectionnez le menu Japonais.

Enfin, activez l’option icônes Emoji.

Partie 3: Utilisation

Vous pouvez dès à présent utiliser votre clavier dans n’importe quelle application.

Attention : un redémarrage est nécessaire si vous désirez l’utiliser dans l’application Mail.

Share