В контроллере одного вида (основного вида) у меня есть кнопка UIB, которая создает новую кнопку UIB.Когда вы делаете долгое нажатие на новую кнопку UIB, новый контроллер представления (второе представление) представляется presentmodalviewcontroller.Во втором представлении у меня есть UITableView
, а в первом UITableViewCell
есть UITextField
.Я хочу, чтобы, когда вы что-то вводили в UITextField
, новый заголовок UIButtons
менялся на это.
Я сделал для создания NSString
в моем делегате приложения.Во втором представлении в
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
я использовал этот код:
// Passing the TextFieldText to NewButton.
iAppAppDelegate *AppDelegate = (iAppAppDelegate *)[[UIApplication sharedApplication] delegate];
AppDelegate.ButtonText = [TextFieldText text];
iAppView = [[iAppViewController alloc] initWithNibName:@"iAppViewController" bundle:nil];
[TextFieldText addTarget:iAppView action:@selector(ApplyAllObjectsSettings) forControlEvents:UIControlEventEditingChanged];
В основном представлении я использовал это действие для изменения нового заголовка UIButtons:
- (void)ApplyAllObjectsSettings {
iAppAppDelegate *AppDelegate = (iAppAppDelegate *)[[UIApplication sharedApplication] delegate];
[NewButton setTitle:AppDelegate.ButtonText forState:UIControlStateNormal]; }
Однако это не работает.Любая идея о том, как сделать эту работу или другой способ сделать это, будет очень цениться:)
Заранее спасибо:)
Обновление:
На мой второй взгляд.h файл, который я сослался на первый контроллер вида следующим образом:
@class iAppViewController;
@interface ButtonSettings : UIViewController < UIPickerViewDataSource, UIPickerViewDelegate > {
// iAppViewController
iAppViewController *iAppView;
в файле .m я импортировал первый контроллер вида
#import "iAppViewController.h"
И это код Iиспользуйте для вызова действия:
[TextFieldText addTarget:iAppView action:@selector(ApplyAllObjectsSettings:) forControlEvents:UIControlEventEditingChanged];
И это действие в первом контроллере представления:
- (void)ApplyAllObjectsSettings:(id)sender {
[NewButton setTitle:((UITextField *)sender).text forState:UIControlStateNormal];
}