大家知道現在網上流行的瀑布流,是根據一個外國的網站得來的。能夠大量展現信息的方式。可以用UIScrollView來實現但是想來想去比較麻煩,這個經常用來展現圖片,最好用uitableview的重用機制,這個是官方自己實現好的。所以越簡單越好。
1. 總先做成幾列是事先要清楚,有多少條記錄,這個可以從json或者xml中讀取后知道(json或xml最好將圖片的高度和寬度也顯示出來,便於后面用到)。
2. 假設要做成3列,就用三個uitableview,寬度平均,高度動態,頁面高度取uitableview中最高的。
3. 三個uitableview初始化的時候用到tag(我越來越覺得tag在ios中的用處很大,就像js中讀取html控件中的id一樣),然后showsVerticalScrollIndicator和scrollEnabled設為no,separatorStyle設為UITableViewCellSeparatorStyleNone,添加到UIview中。
獲取高度
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return 當行記錄數/列;
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
int arrIndex= 當前indexPath.row * 列(3)+當前indexPath.column;|
return [[XML/JSON objectAtIndex:arrIndex] objectForKey:@"高度"];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
//從數據源中得到當前數組對應的數據,然后再用uitableviewcell填充
}
以上是大致的思路大家也可以參考:http://www.devdiv.com/home.php?mod=space&uid=35719&do=blog&id=10472