如何从其他班级重新加载我的表格?

时间:2012-02-29 21:32:32

标签: ios uitableview

我正在尝试从另一个类重新加载我的表。但似乎我做不到。

myclass1.h
@interface CalendarViewController : UIViewController <UITableViewDelegate,UITableViewDataSource> {


UITableView *tablo;

myclass1.m

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] autorelease];
    }     


// Configure the cell...
cell.textLabel.text=@"mytext";

    return cell;
}

and myclass2.m
`(NSDate*) dateSelected{

    CalendarViewController *cal1=[[CalendarViewController 

alloc]initWithNibName:@"CalendarViewController" bundle:nil];
[cal1.tablo  reloadData];


}

我不知道如何解决这个问题。任何人都可以帮助我吗?

2 个答案:

答案 0 :(得分:0)

如果您声明了iVar而不是使用@property和@synthesize,则必须自己创建getter和setter。

而不是标题中的UITableView *tablo;代替:

@interface CalendarViewController : UIViewController

@property(nonatomic, strong)UITableView *tablo;

@end

然后在实现文件中:

@synthesize tablo = _tablo;

然后你应该能够访问cal1.tablo

答案 1 :(得分:0)

使用单例或静态方法(+)

+ (void) DoSomethingWithTable {
  // ...
}

并使用[ClassName DoSomethingWithTable]

进行调用