use*_*974 15 iphone objective-c uitableview ios
我遇到了一个问题,在我的UITableViewController中,最后一行总是截止一半.
如果我有20行,那么第20行将被切断; 如果我有30,那么第30个将被切断.
我试图调整contentSize的大小,以及UITableViewController的框架,但它不起作用.
有没有办法将UITableViewController调整到正确的大小?
提前致谢.
一些代码:
在另一个类中初始化它:
settingsTable = [[SettingTableViewController alloc] init];
settingsTable.view.frame = CGRectMake(0, 0, 320, 480);
[self.view addSubview:settingsTable.view];
Run Code Online (Sandbox Code Playgroud)
在UITableViewController中:
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return [settingsData count];
}
- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
{
return [[settingsData objectForKey:[NSString stringWithFormat:@"%d", section]] objectAtIndex:0];
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return [[[settingsData objectForKey:[NSString stringWithFormat:@"%d", section]] objectAtIndex:1] intValue];
}
Run Code Online (Sandbox Code Playgroud)
我没有在UITableViewController中的任何位置调整框架的大小
cho*_*own 16
在界面构建器中,选择UITableView,然后在"查看"选项下删除底部自动调整栏.如果它们与下面的屏幕截图不同,您可以将所有其他人保留原样.重要的是底部垂直条.
改变这个:

对此:

或者,以编程方式执行:
settingsTable.autoresizingMask &= ~UIViewAutoresizingFlexibleBottomMargin;
Run Code Online (Sandbox Code Playgroud)
编辑(来自评论):
您的状态栏是设置为显示还是隐藏?如果显示,则将框架线更改为:
settingsTable.view.frame = CGRectMake(0, 0, 320, 460);
Run Code Online (Sandbox Code Playgroud)
或者,尝试其中任何一个,看看它们是否有用:
settingsTable.view.frame = self.view.bounds;
// or
settingsTable.view.frame = self.view.frame;
Run Code Online (Sandbox Code Playgroud)
vis*_*hnu 11
使用的UITableViewController容器控制器和半透明UI酒吧内,当设定),所以我认为这是"应用程序的一面",妥善处理其contentInset.
你可以试试
self.tableView.contentInset = UIEdgeInsetsMake(0, 0, 44, 0);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16573 次 |
| 最近记录: |