Какие вспомогательные функции Cocoa / Core Foundation вы хотели бы знать примерно 2 года назад?

13
задан Mark 3 February 2009 в 21:05
поделиться

7 ответов

Я нашел NSStringFrom* () полезным при входе структур как CGRect, CGPoint, и т.д.

можно найти всесторонний обзор в Ссылке Функций Основы Apple (ссылка Wayback Machine).

16
ответ дан Jason Medeiros 4 February 2009 в 07:05
поделиться
  • 1
    Можно ли доказать нижнюю границу для этой проблемы? – meta 10 March 2010 в 15:15

Это - то, что мне жаль, что я не знал приблизительно 6 месяцев назад. Я создавал наше первое приложение для iPhone, и я хотел создать простой справочный файл, который был основан на HTML с помощью Контроллера UIWebView.

Однако я не мог выяснить, как встроить локальные изображения, которые я сохранил в Пакете, и я не хотел, чтобы у пользователя должен был быть доступ в Интернет для выборки изображений с сервера.

Мало я знал, что мог сделать следующее для получения изображений от Основного Пакета

NSString *bundlePath = [[NSBundle mainBundle] bundlePath];
NSURL *bundleBaseURL = [NSURL fileURLWithPath: bundlePath];

[webView loadHTMLString:htmlContent baseURL: bundleBaseURL];

, Изображение в HTML может затем назвать локальные изображения непосредственно.

<img src="yourImageFromTheMainBundle.jpg" />

я понятия не имел, что мог установить baseURL с местоположением Пакета.

4
ответ дан Niels Hansen 4 February 2009 в 07:05
поделиться
  • 1
    Почему делают Вы говорите " высокий probability" вместо того, чтобы вычислить его? Идеальная вероятность это can' t быть преодоленным (1 - 1/MAX_INT). – P Shved 9 March 2010 в 02:42

Большая часть материала в NSPathUtilities.h. Я действительно знал об этом два года назад, но когда я сначала нашел его, я желал I’d, замеченного это двумя годами ранее. :-)

В какой-то момент я потратил впустую довольно мало времени, потому что я didn’t знают приблизительно NSCountedSet и сделали путаницу моей основанной на словаре замены. Я знаю о нескольких случаях, где люди сделали тот же вид вещи, потому что они didn’t знают приблизительно NSSet вообще. Другой хороший “hidden” набор CFBinaryHeap, который реализует приоритетную очередь, но doesn’t имеют эквивалентный NS.

4
ответ дан aleclarson 4 February 2009 в 07:05
поделиться

Один я помню

+ (NSBezierPath *)bezierPathWithRoundedRect:(NSRect)rect xRadius:(CGFloat)xRadius yRadius:(CGFloat)yRadius

Предоставленное выяснение, как потянуть скругленный прямоугольник, вручную довольно хорошее осуществление. Существуют другие, к которым я именно так привык теперь.

3
ответ дан Colin Wheeler 4 February 2009 в 07:05
поделиться
  • 1
    I' m не убежденный, что это - 100%, но эй, если you' ре на интервью, можно сделать хуже, вероятно. – Larry 9 March 2010 в 01:32

Создание цвета от шаблона отображает с

[UIColor colorWithPatternImage:[UIImage imageNamed:@"mypattern.png"]];
3
ответ дан nduplessis 4 February 2009 в 07:05
поделиться

Это - ярлык вместо звонка библиотеки, который я пропустил, но это находится в духе потока.

Один ярлык, что я использую много, использует встроенный оператор формата в вызовах NSLog.


NSLog(@"x=%@", [someobject className]);

вместо более подробного


NSLog([NSString stringWithFormat:@"x=%@", [someobject classname]]);
-1
ответ дан Mark 4 February 2009 в 07:05
поделиться
  • 1
    Той логикой, на ограниченном целом числе, создают хэш-таблицу размера MAX_INT. Это - константа, I' m уверенный в нем!; P – Larry 8 March 2010 в 17:04

Вспомогательная функция для рисования трех частей изображения с левой крышкой, заливкой и правой крышкой. Идеально подходит для пользовательских кнопок

void NSDrawThreePartImage(NSRect frame,
    NSImage *startCap,
    NSImage *centerFill,
    NSImage *endCap,
    BOOL vertical,
    NSCompositingOperation op,
    CGFloat alphaFraction,
    BOOL flipped
);

Также посмотрите NSDrawNinePartImage

5
ответ дан 1 December 2019 в 19:41
поделиться