2012-04-20 75 views
-1

我試圖讓UILabel.text採用一個NSString自定義功能,但與錯誤被難住了。我仍然是iOS的新手,但我的直覺認爲它與語法有關。提前錯誤與自定義函數

- (void)viewDidLoad 
{ 
    ... 

    //Creating scrollable view 
    CGRect scrollViewFrame = CGRectMake(0, 0, 320, 460); 
    UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:scrollViewFrame]; 
    [self.view addSubview:scrollView]; 

    CGSize scrollViewContentSize = CGSizeMake(320, 800); 
    [scrollView setContentSize:scrollViewContentSize]; 

    //Inserting Title 
    UILabel *title = [[UILabel alloc]init]; 
    [title setFrame:CGRectMake(0, 0, 300, 40)]; 
    title.backgroundColor = [UIColor clearColor]; 
    title.text = self.setQuestion;<-error 
    [scrollView addSubview:title]; 
    [title release]; 
} 
- (void) setQuestion{ 
    NSString *qn = [NSString stringWithFormat:@"What do you get with%@", 5]; 

} 

感謝名單...

+0

你到底想幹什麼?您不能將方法分配給NSString *。 – mydogisbox 2012-04-20 16:10:33

+1

問題是什麼? – 2012-04-20 16:14:07

回答

2

title.text = [self setQuestion];

setQuestion不正確編碼。應該是:

- (NSString*) setQuestion{ 
    return [NSString stringWithFormat:@"What do you get with %d", 5]; 
} 

而且不要忘了包括setQuestion原型在.h文件中。

(嗯,其實,格式字符串不正確編碼了。應該是「你怎麼對待%d得到」。)

+1

順便說一句,這個方法實際上並沒有設置任何東西,所以更好的名字就像'textForQuestion'。 – Chuck 2012-04-20 17:31:11

+0

原因是因爲'問題'部分只是冰山的一角。我還必須提供這個問題的選擇。所以我想我可以使用(NSString *)。它必須是NSArray ... – 2012-04-21 17:30:08

+0

@TeamStar - 那麼你不能直接將結果賦給'text'屬性,但必須以某種方式對數組進行索引,或者將這些值連接成單個字符串。 – 2012-04-22 00:26:00