Как перезагрузить табличное представление другого контроллера uiview в текущем контроллере представления - PullRequest
6 голосов
/ 20 августа 2011

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

Спасибо, аванс.

Ответы [ 4 ]

12 голосов
/ 22 мая 2014

В первом viewcontroller.m я помещаю это в метод viewDidLoad:

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(handle_data) name:@"reload_data" object:nil];

    -(void)handle_data {
        [yourtableview reloaddata];
    }

Во втором viewcontroller.m:

    [[NSNotificationCenter defaultCenter] postNotificationName:@"reload_data" object:self];
3 голосов
/ 20 августа 2011
  1. Создать свойство для UITableview с nonatomic и retain .. (просмотр контроллера 1)

  2. в View Controller 2 создать объект viewcontroller 1.

  3. теперь с помощью объекта viewcontroller 1 вы можете получить к нему доступ.

Пример

В файле ViewController2 .m:

ViewController1 *objV1 = [ViewController1 alloc]initWithNibName....];   

[objV1.yourTableView reloadData];
1 голос
/ 20 августа 2011

Сделайте это следующим образом:

Предположим, у вас есть 2 контроллера вида.

  • ViewController1

  • ViewController2

И у вас есть UITableView объект tblTable в ViewController2.

в ViewController2.h файле:

@property(nonatomic, retain) UITableView *tblTable;

в ViewController2.m файле:

@synthesize tblTable;

Сейчас в ViewController1.m файле:

ViewController1 *objV1 = [ViewController1 alloc]initWithNibName....];

[objV1.tblTable reloadData];

Надеюсь, это будет вам полезно.

Дайте мне знать, если возникнут какие-либо трудности.

Приветствие.

0 голосов
/ 09 октября 2013

У меня была похожая проблема, и я использовал раскадровку, вот как я ее исправил.Предположим, вы хотите перезагрузить таблицу, которая находится в ViewController2 из функции в ViewController1.Сделайте следующее:

 #import "ViewController2.h"

Теперь вставьте этот код в функцию или любое действие кнопки, под которым вы хотите перезагрузить

ViewController2 *ob= (ViewController2*)[self.navigationController topViewController];
    [ob.viewController2Table reloadData];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...