0

我有一个标签的情况!我制作了一个 tableView,它与解析时的数据表连接。当我选择视图控制器传递给视图的行但值是!我所有的 NSLog 都指定了数据传递的事实!但我无法在我的 viewController 的标签上显示它!请帮忙..我错过了什么?所有的连接都与文件所有者..这些是我的文件..

-(void) tableView: (UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {


  PFObject *object = [self.objects objectAtIndex:indexPath.row];

   NSInteger row = [indexPath row];
NSLog(@"%i",row);

MyTableViewDetail * MTD = [[MyTableViewDetail alloc] initWithNibName:@"MyTableViewDetail" bundle:nil];

NSLog(@"text=%@",[object objectForKey:@"columntext"]);
MTD.label1 = [object objectForKey:@"columntext"];
NSLog(@"label1= %@",MTD.label1);

[self.navigationController pushViewController:MTD animated:YES];
//tableView.backgroundColor =[UIColor clearColor];


}

我所有的 NSLog 都指向正确的方向。但由于某种原因 label1 没有显示值..这是我的其他文件..

#import "MyTableViewDetail.h"
#import "MyTableController.h"

@interface MyTableViewDetail ()

@end

@implementation MyTableViewDetail
@synthesize label1;
@synthesize imagedetail;

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {


    // Custom initialization
}
return self;
}


- (void)viewDidLoad{
[super viewDidLoad];
}


- (void)viewDidUnload
{
[self setLabel1:nil];
[self setImagedetail:nil];
[super viewDidUnload];
// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
}

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}

@end

和我的.h:

#import <UIKit/UIKit.h>
#import <Parse/Parse.h>
#import "MyTableController.h"

@interface MyTableViewDetail : UIViewController{

}

@property (strong, nonatomic) IBOutlet UILabel *label1;
@property (strong, nonatomic) IBOutlet UIImageView *imagedetail;

@end
4

1 回答 1

2

MTD.label1.text = ...您应该使用而不是设置标签的文本MTD.label1 = ...

更新:

从您评论中的 NSLog() 输出中,可以看出最初MTD.label1是这样的。nil原因是标签仅在新视图实际加载后才连接。解决方案是在 中创建一个单独的属性,例如“columntext” MyTableViewDetail,然后

  • 设置MTD.columntext = [object objectForKey:@"columntext"];
  • 设置self.label1.text = self.columntext;在。viewDidLoad_MyTableViewDetail
于 2012-08-26T05:47:52.370 回答