Thursday, September 26, 2013

encode URL

Igy tudunk URL encode-olni egy string-et:

NSString *fullPath = [NSString stringWithFormat:@"www.example.com/find?query=%@", query];
fullPath = [fullPath stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

de ezzel az a baj, hogy a query-ben levo URL karaktereket nem encode-olja. Erre itt van Simon javalata:

NSString * encodedString = (NSString *)CFURLCreateStringByAddingPercentEscapes(
     NULL,
     (CFStringRef)query,
     NULL,
     (CFStringRef)@"!*'();:@&=+$,/?%#[]",
     kCFStringEncodingUTF8 );

utana ezt az encodedString-et hasznalhatjuk a fullPath osszeallitasanal es akkor mar nem is kell a stringByAddingPercentEscapesUsingEncoding-ot meghivni.

Ha ugyanezt ARC-cal akarjuk hasznalni akkor pedig:
NSString *encodedQuery = (__bridge_transfer NSString*)CFURLCreateStringByAddingPercentEscapes(
     NULL,
     (CFStringRef)query,
     NULL,
     (CFStringRef)@"!*'();:@&=+$,/?%#[]",
     kCFStringEncodingUTF8 ); 

Ez viszont nem oldja meg a query-ben elfordulo " encode-olasat.

Wednesday, September 11, 2013

UIPickerView magassaga

Csak erre a harom ertekre lehet beallitani:
162.0, 180.0, 216.0

Tuesday, September 10, 2013

NSInteger to NSString

[@(myInt) stringValue];