上有UIView的1臺,我想改變細胞的高度時,按下按鈕其他細胞的高度保持相同當點擊按鈕(單元格中的按鈕)應該更改特定單元格?
1
A
回答
1
通過委託方法傳遞按鈕按下事件視圖控制器和重載表視圖如下。
[self.tableView reloadData];
鑑於控制器(即,數據源爲表視圖),實施heightForRowAtIndexPath
方法,並根據需要返回的高度。
1
您可以在委託方法
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
if(indexPath.row == clickedRow)
return newHeitht;
return cellHeight;
}
可以設置在點擊按鈕的一些條件,並重新加載使用[tableView reloadData]
的實現代碼如下更改單元格高度。這個函數將被調用。爲特定單元格返回一個新的高度。
0
[self.tableView beginUpdates];
[self.tableView reloadRowsAtIndexPaths:toReloadRows withRowAnimation: UITableViewRowAnimationNone];
[self.tableView endUpdates];
然後
[self.tableView beginUpdates];
[self.tableView endUpdates];
0
-(void)buttonClick {
[self.tableview reloadData];
selectedRow = //do something here
}
,並在您的UITableView數據源
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath*)indexPath {
if(indexPath.row == selectedRow)
return selectedRowHeight;
else
return defaultHeight;
}
0
(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
if (isSearching && indexPath.row == selectedIndex) {
return 110;
}
else {
return rowHeight;
}
0
1)創建一個自定義的UITableViewCell類。 2)填充你的細胞,但你認爲合適。我自己使用'hydrateWithArray'類型的函數。 3)數據填充後,使用'sizeToFit'函數調整大小和重新定位元素,以強制標籤符合您放入其中的任何尺寸。 protip:通過首先設置標籤的框架,並將行的數量設置爲0 ...當您填充文本和sizetofit時,它只會垂直拉伸標籤並強制寬度保持不變。 4)創建一個單獨的函數(我的稱爲calculatedHeight),它返回一個浮點數並返回希望單元格在表格中的高度(基於步驟3中重新定位的對象)。
- (float)calculatedHeight {
return textLabel.frame.origin.ytextLabel.frame.size.height5;
}
5)在你的UITableView類,你需要導入tableViewCell類,並創建一個虛擬單元對象。你將使用這個類來計算每個單元格的高度。然後在heightOfRowAtIndex方法....
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
float height;
if (!dummyCell) dummyCell = [[CustomCell alloc] initWithFrame:CGRectMake(0,0,0,0) reuseIdentifier:@"myCell"];
[dummyCell hydrateWithTweet:[tableArray objectAtIndex:indexPath.row]];
height = [dummyCell calculatedHeight];
if (height == 0) height = 50;
return height;
}
這是一個非常簡單的例子,所以你可能需要去瘋狂在您的特定使用錯誤檢查,但是這至少應該點你在正確的方向。請享用!
相關問題
- 1. 如何在點擊某個特定單元格時更改該按鈕?
- 2. 單擊tableviewcell上的按鈕單擊單元格不按鈕
- 3. 如何在單擊該單元格中的按鈕時更改自定義單元格中的標籤文本
- 4. 在按鈕上更改DataGridView單元格的值單擊
- 5. UICollectionViewCell按鈕單擊並更改單元格上的文本
- 6. 更改按鈕上的JQGrid單元格值單擊
- 7. 當選擇tableView單元格時更改單元格上的按鈕圖像
- 8. 單擊更改單元格按鈕圖像
- 9. 單擊按鈕時JTable單元格發生更改?
- 10. JTable:單擊按鈕時更改單元格背景
- 11. 單擊編輯按鈕時更改單元格顏色
- 12. 按下按鈕時更改表格的單元格
- 13. 在單選按鈕單擊後,取消更改表格單元格的顏色
- 14. HTML單元格按鈕
- 15. tableview中的單選按鈕單元格
- 16. 當按下TableView單元格中的按鈕時,我怎麼知道按下了哪一行單元格按鈕?
- 17. 查找表格單元格中單擊按鈕的行索引
- 18. 如何更改表格單元格中的UIImageView圖像,單擊單元格上的按鈕?
- 19. 點擊表格單元格內的按鈕
- 20. 如何更改按鈕點擊自定義單元格的高度?
- 21. 在單元格中的單擊按鈕上添加新的單元格行
- 22. 無法識別當前單元格對象當我點擊UITableView單元格的自定義按鈕時
- 23. 更新UItableviewcell按鈕點擊單元格後
- 24. jquery datatables:點擊按鈕後更新表格單元
- 25. 在表格視圖單元格中動態更改按鈕
- 26. 作爲按鈕的表格單元格
- 27. 玉表格單元格內的按鈕
- 28. 如何在swift ios中點擊單元格中的按鈕?
- 29. iOS - 使用UITableView自定義單元格編輯按鈕點擊
- 30. 在單擊定製單元格中的按鈕時獲取包裝單元
你在哪裏得到按鈕按下事件?在UITableViewCell子類或視圖控制器? – Ilanchezhian 2012-03-20 05:02:58
按下按鈕時,每個單元格上都有自定義單元格和按鈕,只更改特定單元格高度 – Birju 2012-03-20 05:04:45