2009-12-14 1 views
0

Если у меня есть что-то, что я хочу повторить в приложении для iPhone Xcode, как его настроить и назвать?Как «PERFORM» или вызывать что-то, повторно?

Например, если бы я хотел сделать это простые линии много раз из множества различных мест в приложении: label1.text = @"Hello";

И потом, что если бы я хотел, чтобы позвонить или выполнить его из множества различных приложений: как я бы преобразовал его в свою собственную библиотеку, чтобы я мог импортировать весь свой общий код?

(я COBOL программист пытается научиться программировать для iPhone в Xcode. COBOL кажется так легко по сравнению с Objective-C и XCode!)

+0

Возможно, вы захотите немного уточнить свой вопрос. Я предполагаю, что вы не спрашиваете, как сделать базовый цикл. Вы также можете переместить каждый из ваших отдельных вопросов в разные должности. Вопрос библиотеки не имеет ничего общего с названием. – TechZen

ответ

1

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

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

+0

Благодарю всех вас за полезные ответы. Сначала я стараюсь сосредоточиться на основах - и боюсь! Я получил этот код работать: - (IBAction) buttonPressed { \t [самоуправления performSelector: @selector (doThis) withObject: ноль afterDelay: 0,0]; } - (void) doThis { \t l1.text = @ "Это сделано."; } Это работает - но нет ли более простого способа? Является ли моя пустота методом или классом? Что, если я хочу передать ему информацию или вернуться? Мне нравится идея размещения общего кода в отдельный заголовочный файл и исходные файлы или отдельный проект, но сначала нужно сначала отсортировать этот первый этап. Спасибо за помощь. – philh

+0

В разделе комментариев вам нелегко ответить, лучше спросите его как новый вопрос. – StackedCrooked

0

Вещь для поиска - это «Статическая библиотека», вот что вы хотите создать, чтобы люди могли использовать ваш код в качестве библиотеки.

Этот сайт имеет довольно хорошее прохождение игры:

http://blog.stormyprods.com/2008/11/using-static-libraries-with-iphone-sdk.html

Если ваш код достаточно просто, публиковать исходные файлы, которые другие люди могут включать в проект достаточно.

0

Например, если я хотел бы сделать это простые линии много раз от большого количества разных мест в приложении: Label1.Text = @ «Hello»;

Во-первых, в каждом классе, где вы хотите запустить линию, вам нужно будет иметь ссылку на объект label1. Поскольку в этом случае это элемент интерфейса, самым простым способом было бы установить выход в ваш заголовок, а затем подключить его в построителе интерфейса.

@interface MyController : UIViewController 
{ 
    IBOutlet UILabel *label1; 
} 
@property(nonatomic, retain) IBOutlet UILabel *label1; 
@end 

Каждый экземпляр класса, который ссылается на экземпляр этикетки должен иметь выход, указывающий на него, а затем вы должны подключить выход к соответствующему метки в интерфейсе строителя. (Вы также можете создавать отношения программно, но это сложнее.) Таким образом, когда вы устанавливаете текст метки в своем коде, среда выполнения знает, к какому объекту отправляется сообщение.

Если у вас есть фон на языке программирования, например Cobol (содрогание), вам придется изменить свое мышление на одно на основе объектно-ориентированной программы. Дизайн Objective-C еще больше зависит от объекта, чем другие общие языки ООП.

+0

У меня нет опыта работы с Objective-C, но вы не могли бы создать метод, который принимает объект UILabel по ссылке и изменяет свойство Text объекта? –

+0

Да, но у вас будет одна и та же основная проблема - получить ссылку на ярлык. Затем, если вы не хотите, чтобы какая-либо метка была изменена, вам нужно будет отфильтровать соответствующую метку. Этот метод также должен быть припаркован в классе кем-то (как практический вопрос). Поскольку вам нужно создать ссылку, и вам, скорее всего, придется относиться к каждому ярлыку по-другому, выход - это самый простой способ. Хорошая идея о шаблонах проектирования делегатов и контроллеров заключается в том, что вы можете настраивать без подкласса. – TechZen

Смежные вопросы