gpt4 book ai didi

objective-c - UIView 模态弹出窗口带有嵌入式 UITableView 和 UIToolbar,工具栏随表格移动

转载 作者:行者123 更新时间:2023-11-29 04:16:49 25 4
gpt4 key购买 nike

这让我发疯! (iOS 5+,ARC)

这里的概念非常简单:我有一个带有嵌入式 UITableView 的 UIView,当单击特定单元格时,我让 iOS 启动带有 segue 的 modalview。此 modalview 是一个 UIView,其中嵌入了 UITableView,并填充了数据源中的名称。您可以在此 View 中选择多个项目(使用cellaccessory:复选标记)

目标显示某种“完成”按钮

好吧,经过多次尝试,我了解到模态窗口实际上不允许 navigationController 项。默认情况下没有工具栏,没有导航栏。好的,所以我将创建自己的。

- (void)viewDidLoad
{
[super viewDidLoad];

NSInteger tbHeight = 50;
UIToolbar *tb = [[UIToolbar alloc] initWithFrame:CGRectMake(0, (self.view.frame.size.height - tbHeight), self.view.frame.size.width, tbHeight)];
tb.translucent = YES;

UIBarButtonItem *flexibleSpace = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
UIBarButtonItem *doneButton = [[UIBarButtonItem alloc] initWithTitle:@"Done" style:UIBarButtonItemStyleBordered target:self action:@selector(doneAction:)];

NSArray *barButton = [[NSArray alloc] initWithObjects:flexibleSpace,doneButton,nil];
[tb setItems:barButton];


[self.view addSubview:tb];

barButton = nil;

//....

}

足够简单吧?

嗯,工具栏确实出现了,这是肯定的。但是,它并没有像预期的那样粘在底部。事实上,当您上下滚动嵌入的 tableview 时,UIToolbar 也会随之移动,几乎就像它以某种方式卡在 tablevie 上一样。

我花了几个小时寻找解决方案,但一无所获。想知道这里有人有什么想法吗?

如果您需要更多信息,请务必询问:)

最佳答案

如果是UIViewController,那么你的工具栏会随着表格滚动,这很奇怪。子类,除非您已将 UITableView 分配给 self.view 或其他东西...但既然如此,这就是我在向 TableView 添加固定项目时所做的事情:

-(void) scrollViewDidScroll:(UIScrollView *)scrollView {

tb.frame = CGRectMake(0, self.view.bounds.size.height-tb.bounds.size.height+scrollView.contentOffset.y, self.view.bounds.size.width, tb.bounds.size.height);

}

关于objective-c - UIView 模态弹出窗口带有嵌入式 UITableView 和 UIToolbar,工具栏随表格移动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13574744/

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