相关疑难解决方法(0)

动态更改UITableView高度

我想基于其单元格高度的总和从另一个viewcontroller更改tableview的高度,因为它们是动态的.它可能吗?谢谢

添加在:

我基本上拥有一个UserProfileViewController,它在屏幕的一半上有一个容器视图.在那里我添加了不同的其他viewcontrollers:

在此输入图像描述

在此输入图像描述

在wall按钮的情况下,这是我添加viewcontroller的方式,它是后续的tableview:

- (IBAction)wallButtonPressed:(id)sender
{
    //Check if there is an instance of the viewcontroller we want to display. If not make one and set it's tableview frame to the container's view bounds
    if(!_userWallViewController) {
        self.userWallViewController = [[WallViewController alloc] init];
//        self.userWallViewController.activityFeedTableView.frame = self.containerView.bounds;

    }

    [self.userWallViewController.containerView addSubview:self.userWallViewController.activityFeedTableView];
    //If the currentviewcontroller adn it's view are already added to the hierarchy remove them
    [self.currentViewController.view removeFromSuperview];
    [self.currentViewController removeFromParentViewController];

    //Add the desired viewcontroller to the currentviewcontroller
    self.currentViewController = self.userWallViewController;

    //Pass the data needed …
Run Code Online (Sandbox Code Playgroud)

height dynamic uitableview ios

62
推荐指数
5
解决办法
12万
查看次数

具有动态高度iOS的UITableViewCell

我在我的应用程序中使用CustomCell实现了TableView,

我想UITableViewCell根据文字长度调整我的动态高度UITableViewCell,

这是快照 Customcell

:这是我的快照 UITableView :代码段 heightForRowAtIndexPath

#define FONT_SIZE 14.0f
#define CELL_CONTENT_WIDTH 320.0f
#define CELL_CONTENT_MARGIN 10.0f

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;
{
    NSString *text = [DescArr objectAtIndex:[indexPath row]];
    CGSize constraint = CGSizeMake(CELL_CONTENT_WIDTH - (CELL_CONTENT_MARGIN * 2), 20000.0f);
    CGSize size = [text sizeWithFont:[UIFont systemFontOfSize:FONT_SIZE] constrainedToSize:constraint lineBreakMode:UILineBreakModeWordWrap];
    CGFloat height = MAX(size.height, 100.0);
    return height; 
}
Run Code Online (Sandbox Code Playgroud)

正如您在第二张图片中看到的那样,单元格的高度是固定的,它不会随着文本(内容)大小而变化.

我哪里弄错了?如何根据其内容/文本制作标签或单元格以更新其大小?

objective-c row-height uitableview ios swift

11
推荐指数
5
解决办法
5万
查看次数

如何动态设置UITableView的高度?

我有一个使用该heightForRowAtIndexPath:方法的不同单元格高度的tableview .

我想动态设置一个高度UITableView.目前我正在viewDidLoad使用以下方法设置tableView的尺寸:

self.tableView = [[UITableView alloc] initWithFrame:CGRectMake(10, 770, 310, 400)];
self.tableView.dataSource = self;
self.tableView.delegate = self;
Run Code Online (Sandbox Code Playgroud)

我想也许我可以添加这个:self.tableView.contentSize.height;但问题当然是内容大小只在表加载后计算,所以如果我把它放入

self.tableView = [[UITableView alloc] initWithFrame:CGRectMake(10, 770, 310, self.tableView.contentSize.height)];
Run Code Online (Sandbox Code Playgroud)

它不起作用.

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
    NSString *description = [photosFromCommentsArray objectAtIndex:indexPath.row];
    //   NSLog(@"description is %@",description);

    if(description == (id)[NSNull null])
    {
        return 70; 
    }
    else
    {
        return 200;
    }
}
Run Code Online (Sandbox Code Playgroud)

objective-c uitableview ios

7
推荐指数
1
解决办法
9324
查看次数

标签 统计

ios ×3

uitableview ×3

objective-c ×2

dynamic ×1

height ×1

row-height ×1

swift ×1