2014-12-05 58 views
0

我已經實現了3個代表3個日期的UIButton。取決於選擇哪個按鈕,我想顯示一個不同的UITableView,它表示所選日期的事件日程安排。如何多次調用numberOfSectionsInTableView?

根據所選的按鈕,我隱藏了其他兩個表格視圖。

我有3個UITableViews,其中的每一個包含在每個UIView的內,例如,UITableView1包含內UIView1所選UIButton1。

怎樣才能調用numberOfSectionsInTableView返回部分的數量取決於哪個按鈕被選中?

我有這樣的事情:

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView 
{ 
    if (date1Selected == YES && date2Selected == NO && date3Selected == NO) 
    { 
     return [date1 count]; 
    } 
    else if (date1Selected == NO && date2Selected == YES && date3Selected == NO) 
    { 
     NSLog(@"test"); 
     return [date2 count]; 
    } 
} 

但是,它似乎永遠不會進入其他如。

我該如何做到這一點?

+3

可以通過調用做到這一點:[myTableView reloadData]; – Mrunal 2014-12-05 12:00:38

+1

對於每個按鈕點擊事件,reloadData都會滿足您的要求。 – 2014-12-05 12:06:06

+0

哪裏會被稱爲?在每個if語句中? – Pangu 2014-12-05 12:09:50

回答

1

上UIButton1的點擊

[UITableView1 reloadData]

UIButton2

[UITableView2 reloadData]的點擊

上的 UIButton3

[UITableView3 reloadData]

點擊

+0

感謝您的協助! – Pangu 2014-12-05 12:21:48

+1

還有一件事我想告訴你,而不是 if(date1Selected == YES && date2Selected == NO && date3Selected == NO) { return [date1 count]; } 如果([tableView isEqual:UITableView1]) { return [date1 count];你可以很容易地寫這個 ; } 如果([的tableView isEqual:方法UITableView2]) { 返回[DATE2計數]; } 完美無缺,請賜教布爾 – 2014-12-05 12:24:27

+0

謝謝! – Pangu 2014-12-05 12:29:36

1

致電[tableView reloadData]。該表將選取數據源中的所有更改。

+0

我有3個不同的tableViews,我會在哪裏爲每個tableView調用reloadData? – Pangu 2014-12-05 12:10:54

+0

只有當前屏幕上可見的那個。 – rounak 2014-12-05 15:19:58

0

重載表視圖[tableView reloadData]