Я думаю, что соглашение состоит в том, чтобы автоматически выпустить его в операторе alloc:
UILabel *l = [[[UILabel alloc] initWithFrame:CGRectMake(0, 0, 300, 44)] autorelease];
Поскольку объект должен существовать после выхода из метода, у вас нет другого выбора, кроме как использовать авторелиз. Как правило, в вызывающем методе необходимо убедиться, что вы сохранили копию, иначе она может быть передана вам случайным образом. В этом случае pickerView сделает это за вас, так что не беспокойтесь.