глобальная строка target-c - PullRequest
       13

глобальная строка target-c

0 голосов
/ 14 января 2012

Я знаю, что об этом спрашивали много раз, но я не могу найти ответ на мою проблему.

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

Я написал так:

NSMutableString *universalString; в AppDelegate.m

Я импортирую эту строку в MainViewController.m:

extern NSMutableString *universalString;

В

`- (void)tableView:(UITableView *)tableView1 didSelectRowAtIndexPath:(NSIndexPath *)indexPath

{

    [tableView1 deselectRowAtIndexPath:indexPath animated:NO];

    TestViewController *viewCon = [[TestViewController alloc]initWithNibName:@"viewCon" bundle:nil];

    [self.navigationController pushViewController:viewCon animated:YES];        
    [viewCon release];

`universalString = [self.array objectAtIndex:indexPath.row];

}`

В TestViewController.m, также extern NSMutableString *universalString;

- (void)viewDidLoad {


    UITextView *newtextview = [[UITextView alloc] initWithFrame: CGRectMake(10, 10, 200, 200)];
    newtextview.backgroundColor = [UIColor blackColor];

    [newtextview setTextColor:[UIColor whiteColor]];    
    newtextview.text = universalString;

    [self.view addSubview:newtextview];
    [newtextview release];
}

Я хочу извлечь universalString из MainViewController., Но ничего не происходит, пока я не нажму дваждывперед и назад, тогда это universalString появляется в TestViewController.m.

Что я сделал не так?

1 Ответ

1 голос
/ 14 января 2012

Хорошо. Я обнаружил немного кода в своем электронном письме, надеюсь, вы сможете его применить:

Что вам нужно сделать, это создать делегат приложения с универсальной строкой, настроенной в качестве свойства. Включите его в оба контроллера представления и используйте следующее для установки / получения.

NamedAppDelegate* navigationDelegate = (NamedAppDelegate *)[[UIApplication sharedApplication] delegate];

newtextview.text = navigationDelegate.universalString; //get
navigationDelegate.universalString = "string"; //set

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...