gpt4 book ai didi

iphone - 为 uitableviewcells 加载横向和纵向 xib 文件的最佳方式是什么?

转载 作者:搜寻专家 更新时间:2023-10-30 20:20:39 27 4
gpt4 key购买 nike

我的肖像 tableviewcell 在风景中效果不佳,即使使用自动调整大小蒙版也是如此,所以我用新的 xib 文件重新排列了东西。

实现这一新格局的最佳方式是什么?我使用一堆 if 语句检查方向让它工作,但这似乎不太优雅。有没有更好的办法?

最佳答案

为纵向和横向创建两个 UITableViewCell nib 文件..和一个自定义类(CustomCell.h 和 CustomCell.m),以 UITableViewCell 作为基类,这两个 NIB 将继承并使用您的自定义单元格实现以下内容..

-(void) willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration {


if ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPad) {
[[NSBundle mainBundle] loadNibNamed:@"customCell-Landscape" owner:self options:nil];

}else
{
[[NSBundle mainBundle] loadNibNamed:@"customCell-Portrait" owner:self options:nil];

}

[tableView reloadData];

}

然后在tableview数据源中

..

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @" identifier";
CustomCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

if (!cell) {
if(UIInterfaceOrientationIsLandscape(self.interfaceOrientation)) {
[[NSBundle mainBundle] loadNibNamed:@"customCell-Landscape" owner:self options:nil];
}else {
[[NSBundle mainBundle] loadNibNamed:@"customCell-Portrait" owner:self options:nil];
}

}

关于iphone - 为 uitableviewcells 加载横向和纵向 xib 文件的最佳方式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12400317/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com