2013-02-09 16 views
0

我開始在iOS開發中。我一直在尋找解決方案的日子,我無法得到它。我得到了下面的代碼:在ViewController上找不到屬性

@interface SAProfileViewController : UITableViewController { 
    @public NSNumber *userId; 
} 

    @property (weak, nonatomic) IBOutlet UIView *awesomeProfileHeader; 

    @property (nonatomic, assign) NSNumber *userId; 

@end 

正如你可以看到我聲明我的財產,在那之後我這樣做:

@implementation SAProfileViewController 

@synthesize userId = _userId; 

... 

上的其他視圖控制器我導入SAProfileViewController。

#import "SAProfileViewController.h" 
... 

-(void)goToUserProfile :(id) sender 
{ 
    UITapGestureRecognizer *gesture = (UITapGestureRecognizer *) sender; 

    SAProfileViewController *controller = [[SAProfileViewController alloc] init]; 

    controller.userId = gesture.view.tag; // << HERE THE ERROR APPEARS 

    [self.navigationController pushViewController:controller animated:YES]; 
} 

就是這樣,這是我的代碼,我得到以下錯誤: 「屬性‘用戶id’事先就輸入‘SAProfileViewController *’

感謝的對象沒有找到

+1

Uhm。清理項目?另外:一旦你編譯它會崩潰。看看'controller.userId'和'gesture.view.tag'的類型。 – 2013-02-09 22:07:21

回答

2

你已經做了錯誤與屬性類型。

變化

@property (nonatomic, assign) NSNumber *userId; 

@property (nonatomic, retain) NSNumber *userId; 

比你要創建的gesture.view.tag一個NSNumber例如像這樣

controller.userId = [NSNumber numberWithInteger:gesture.view.tag]; 

,也可將用戶id改變NSInteger而不是NSNumber*

@property (nonatomic, assign) NSInteger userId; 

(你有對於對象屬性userId也是這樣)

+0

我嘗試了所有你說的,但我繼續得到同樣的錯誤,似乎它是無形的。我搞不清楚了。 – 2013-02-09 22:55:54

+0

你可以說哪個錯誤發生?這是一個編譯錯誤還是拋出異常? – who9vy 2013-02-10 11:08:37

+0

當我嘗試編譯它時,我收到了這個:http://d.pr/i/vH8F – 2013-02-10 12:53:09