开发者

how to reload tableview of another uiviewcontroller in current viewcontroller

开发者 https://www.devze.com 2023-03-29 05:01 出处:网络
Please help me out. I am very sorry if it is duplicate but i didn开发者_如何转开发\'t get required answer that is why i am asking again.

Please help me out. I am very sorry if it is duplicate but i didn开发者_如何转开发't get required answer that is why i am asking again.

I want to reload table of anotherview in my first view.

Thanks in adavance.


In the first viewcontroller.m, I put this in the viewDidLoad method:

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

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

In the second viewcontroller.m:

    [[NSNotificationCenter defaultCenter] postNotificationName:@"reload_data" object:self];


  1. Create property for UITableview with nonatomic and retain.. (view controller 1)

  2. in View Controller 2 create object of viewcontroller 1.

  3. now with help of viewcontroller 1 object you can access it.

Example:

In ViewController2 .m file:

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

[objV1.yourTableView reloadData];


Do it in below way:

Suppose you have 2 view controller.

  • ViewController1

  • ViewController2

And you have UITableView object tblTable in ViewController2.

in ViewController2.h file:

@property(nonatomic, retain) UITableView *tblTable;

in ViewController2.m file:

@synthesize tblTable;

Now in in ViewController1.m file:

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

[objV1.tblTable reloadData];

I hope it will be helpful to you.

Let me know in case of any difficulty.

Cheers.


I had similar issue and I was using storyboard this is how I fixed it. Suppose u want to reload the table which is in ViewController2 from a function in ViewController1. Do the following:

 #import "ViewController2.h"

Now put this code in the function or any button action under which u want to reload

ViewController2 *ob= (ViewController2*)[self.navigationController topViewController];
    [ob.viewController2Table reloadData];
0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号