2013-06-03 72 views
2

我點擊不同的按鈕時有UITableView加載不同的數組。我想要的是將UIButton標題更新到選定的表格單元格。舉例來說:用戶選擇了具有文本「2013年4月」的表格行4。該按鈕將其標題更新爲「2013年4月」。 這是行得通的。現在,用戶通過單擊按鈕(在SAME數組中加載新數據)在TableView之間切換。名爲「2013年4月」的錶行4的UITableView使用相同的數組更新其字段,並且之前選擇的字段仍保留,但現在使用不同的數據。然而,UIButton標題仍然顯示「2013年4月」,我想改變它,以便當點擊按鈕並更改數組的數據時,按鈕標題也會改變。將UIButton標題設置爲選定的表格單元格

didSelectRowAtIndexPath方法:

if([self.delegate respondsToSelector:@selector(dateSpecifiedButtonText:)]) 
{ 
    [self.delegate dateSpecifiedButtonText:selCell.textLabel.text]; 
} 

ViewController.m:

- (void)dateSpecifiedButtonText:strText2 
{ 
    [self.dateSpecifiedButton setTitle:strText2 forState:UIControlStateNormal]; 
} 

總之:我如何更新UIButton標題來顯示當前選中的單元格。

我希望你能理解這個問題。

+0

全部重置按鈕標題每當你的tableView的之間的切換。 – NSUserDefault

+0

我寧願建議,而不是保存數據,保存索引,即保存第4行,並且當您顯示新數據時只需突出顯示第4行。因此,它會自動顯示第4行爲突出顯示。 –

+0

我將如何執行這些方法? – Torylon

回答

0

而不是設置基於單元的內容的按鈕標題,嘗試設置基於陣列的內容的標題:

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 
NSString *titleToUse = [arrayWithData objectAtIndex:indexPath.row]; 

if([self.delegate respondsToSelector:@selector(dateSpecifiedButtonText:)]) 
{ 
    [self.delegate dateSpecifiedButtonText:titleToUse]; 
} 

} 
相關問題