Кастомизация строки состоит в том чтобы изменить в строке в определенном слове или символе цвет, шрифт, высоту и т.д. За все это отвечают классы NSAttributedString и NSMutableAttributedString. Например поменяем шрифт для первых пяти символов:
NSMutableAttributedString *seatText = [[NSMutableAttributedString alloc] initWithString:[NSString stringWithFormat:@"Seats\n%d", seats]];
[seatText addAttribute:NSFontAttributeName
value:[UIFont boldSystemFontOfSize:25.0F]
...
20 апр. 2014 г.
14 апр. 2014 г.
View-based NSTableView на основе ячеек из NSView

Суть построения View-based таблицы заключается в том, чтобы вместо обычных строк, состоящих из NSImageView и NSTextField (как показано в предыдущем примере), создать кастомную (свою модель компонентов в строке) строку. И здесь как всегда на помощь приходит NSView, а точнее NSViewController - класс.
Создаем новый проект. Назовем его ViewBasedNSTableViewWithNSView (Вы можете его назвать по своему, суть этого не меняется). Как и в предыдущем примере...
9 апр. 2014 г.
Класс NSNumber - примеры
Этот класс является одним из самых странных дополнений в языке Objective-C. Для обработки числовых типов достаточно внутренних функций и методов. Единственная, как бы, цель класса NSNumber это обработка объектов NSArray, который хранит в себе только объекты.
Инициализация объекта NSNumber
Суть такова, что основные методы инициализации начинаются одинаково, но отличаются лишь конечным типом числа, т.е. что имеется в виду:
numberWith<Unsigned><Type>
Исходя из этого полное имя метода, для определенного типа числа, выглядит так:
numberWithBool
numberWithChar
numberWithDouble
numberWithFloat
numberWithInt
numberWithInteger
numberWithLong
numberWithLongLong
numberWithShort
numberWithUnsignedChar
numberWithUnsignedInt
numberWithUnsignedInteger
numberWithUnsignedLong
numberWithUnsignedLongLong
numberWithUnsignedShort
Например:
NSNumber...
6 апр. 2014 г.
Определение объема HDD и оставшегося свободного места
Определение объема HDD и оставшегося свободного места
//get startup disk total size+(NSNumber *)getDiskTotalSize{ NSDictionary *attr = [[NSFileManager defaultManager] attributesOfFileSystemForPath:@"/" error:nil]; return [attr objectForKey:NSFileSystemSize];}//get startup disk's free size+(NSNumber *)getDiskAvailableSize{ NSDictionary *attr = [[NSFileManager defaultManager] attributesOfFileSystemForPath:@"/" error:nil]; return [attr objectForKey:NSFileS...
Определение домашней папки пользователя
Определение домашней папки пользователя
//get user home+(NSString *)getUserHome{ const char *home = getpwuid(getuid())->pw_dir; NSString *path = [[NSFileManager defaultManager] stringWithFileSystemRepresentation:home length:strlen(home)]; NSString *realHomeDirectory = [[NSURL fileURLWithPath:path isDirectory:YES] path]; ...
Перекодировка строки в UTF8 и обратно
Код перекодировки строки в UTF8 и обратно
//Encode NSString to UTF8
+ (NSString *)encode2UTF8:(NSString *)originalStr
{
NSString *encodedString = (NSString *)CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,(CFStringRef)originalStr,NULL,NULL,kCFStringEncodingUTF8));
return encodedString;
}
//Decode UTF8 NSString
+ (NSString *)decodeFromUTF8:(NSString *)utf8Str
{
return [utf8Str stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
...
3 апр. 2014 г.
Системные директории в Objective-C
Директория /tmp
Большинство операционных систем имеют стандартный каталог предоставленный специально для целей временного хранения файлов. Другие системы также обеспечивают другую временную папку для каждого пользователя. Точное место отличается в зависимости от платформы. Самым безопасным будет использование NSTemporaryDirectory(), чтобы определить соответствующий каталог. Эта функция возвращает временный каталог для текущего пользователя в виде объекта NSString.
Следующий фрагмент кода определяет и затем отображает временный каталог, используя...
2 апр. 2014 г.
Обработка файлов с помощью класса NSFileHandle
Класс NSFileHandle предоставляет широкий спектр методов, предназначенных для обеспечения более продвинутого механизма работы с файлами. В дополнение к файлам, этот класс также может быть использован для работы с устройствами и сетевыми сокетами. В следующих пунктах Мы рассмотрим некоторые из наиболее распространенных применений данного класса.
Инициализация NSFileHandle класса
Объект NSFileHandle создется при открытии файла для чтения, записи или обновления (чтение и запись). Это достигается с помощью fileHandleForReadingAtPath, fileHandleForWritingAtPath...
NSFileManager - работа с каталогами и файлами (примеры). Часть 2
Продолжение первой части примеров по NSFileManager.
Копирование файла
Копирование файлов может быть достигнуто с помощью метода copyItemAtPath. Как и в методе перемещения, этот метод принимает в качестве аргументов путь-источник и путь назначения, а также дополнительный объект NSError. Успех операции в возвращенном логическое значении:
NSFileManager *filemgr;
filemgr = [NSFileManager defaultManager];
if ([filemgr copyItemAtPath: @"/tmp/myfile.txt" toPath: @"/Users/demo/newfile.txt" error: NULL] == YES)
NSLog (@"Скопировано");
else
...
NSFileManager - работа с каталогами и файлами (примеры). Часть 1
Инициализация NSFileManager
Класс NSFileManager содержит метод класса с именем defaultManager, который используется для создания экземпляра класса. Например: получить ссылку на экземпляр объекта NSFileManager:
NSFileManager *filemgr;
filemgr = [NSFileManager defaultManager];
Проверка на наличие или отсутствие файла
Класс NSFileManager содержит метод экземпляра с именем fileExistsAtPath, который проверяет, существует ли указанный файл. Метод принимает в качестве аргумента объект NSString, содержащий путь к файлу и возвращает логическое...