ios学习--给UITableViewCell动态调整高度
来源:互联网 发布:ddns域名注册 编辑:程序博客网 时间:2024/05/29 19:36
在网上看到有人如此实现动态调整高度:点击。不至于为了获取高度创建一个不需要的cell。
主要有两个地方需要调整高度,一个是自己创建的UILabel或其它,另一个就是cell的高度。在创建cell的地方只需要定义好label的属性就行了:
- - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
- {
- static NSString *cellIdentifier = @"cell";
- UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
- if (cell == nil)
- {
- cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:cellIdentifier] autorelease];
- UILabel *contentLabel = [[UILabel alloc] initWithFrame:CGRectZero];
- [contentLabel setLineBreakMode:UILineBreakModeWordWrap];
- [contentLabel setNumberOfLines:0];
- [contentLabel setFont:FONT_CELL];
- [contentLabel setTag:TAG_LABEL];
- [[cell contentView] addSubview:contentLabel];
- [contentLabel release];
- }
- cell.textLabel.text = @"";
- CGSize captionSize = [cell.textLabel.text sizeWithFont:FONT_CELL];
- contentLabel.frame = CGRectMake(captionSize.width + 10, 0,
- CGRectGetWidth(cell.bounds) - captionSize.width - 10,
- [self tableView:nil heightForRowAtIndexPath:[NSIndexPath indexPathForRow:indexPath.row inSection:0]]);
- -(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
- if (indexPath.row < …) {
- return 90;
- } else if (indexPath.row == ...) {
- NSString *caption = @"";
- CGSize contentSize = getTextSize(caption, FONT_CELL, @"data",
- CGRectGetWidth(self.tableView.bounds));
- return contentSize.height > 44 ? contentSize.height : 44;
- }
- return 44;
- }
- CGSize getTextSize(NSString *offsetText,UIFont *font,NSString *text, CGFloat maxWidth){
- CGSize offsetTextSize = [offsetText sizeWithFont:font];
- CGSize textSize = [text sizeWithFont:font
- constrainedToSize:CGSizeMake(maxWidth-offsetTextSize.width, MAXFLOAT)
- lineBreakMode:UILineBreakModeWordWrap];
- return textSize;
- }
- ios学习--给UITableViewCell动态调整高度
- 给UITableViewCell动态调整高度
- 给UITableViewCell动态调整高度
- 给UITableViewCell动态调整高度
- iOS-动态调整UITableViewCell的高度
- IOs动态调整 UITableViewCell的高度
- iOS-动态调整UITableViewCell的高度
- iOS-动态调整UITableViewCell的高度
- 动态调整UITableViewCell高度
- 动态调整 UITableViewCell高度
- iOS学习之路十三(动态调整UITableViewCell的高度)
- 动态调整UITableViewCell的高度
- 动态调整UITableViewCell的高度
- 动态调整UITableViewCell的高度
- ios动态调整UITableViewCell高度的实现方法
- 动态调整UITableViewCell高度的实现方法
- 动态调整UITableViewCell高度的实现方法
- 动态调整UITableViewCell高度的实现方法
- wcf svctil.exe命令行
- spring_security之Web权限配置
- Ubuntu下SVN服务器的安装与配置
- HDU1022(堆栈应用)
- java IO操作:IO的一般使用原则
- ios学习--给UITableViewCell动态调整高度
- spring+xfire发布webservice
- SQL Server 带输出参数和返回装填值的存储过程
- How to completely uninstall mysql on Ubuntu
- MPEG-2系统复用 1
- CSS的position:fixed的使用
- Android Camera HAL浅析
- 关于cloud_foundry自己的ruby, gem, bundle
- VB.Net CSV文件处理类