我遇到了一个问题,在我的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中的任何位置调整框架的大小
我有一个微调器,我想检测用户何时点击它.当用户单击它打开时,我想调用端点,然后用新数据更新微调器.但我无法弄清楚如何做到这一点并导致无限循环:
我在这里调用API:
public View getDropDownView(int position, View convertView, ViewGroup parent) {
// Call API here
// Do render with old data.
}
Run Code Online (Sandbox Code Playgroud)
当API成功时,我调用更新:
@Override
public void onSuccess(final Response response) {
Helper.update(...);
}
public void update(...) {
...
adapter.setItems(newData);
adapter.notifyDataSetChanged();
}
Run Code Online (Sandbox Code Playgroud)
然后getDropDownView()再次触发.在用户点击打开微调器后,我无法弄清楚还有什么叫getDropDownView().我怎么解决这个问题?