6

问题:

我使用了包含两个按钮的自定义 UITalbeViewCell,它们在纵向上工作正常。旋转后,它们都停止响应按钮修饰内部功能。有些人在旋转后出现按钮无法正确绘制的问题。我的看起来不错,因为按钮在旋转后显示在正确的位置,但它们不再响应按钮按下。

对于我的应用程序中的这个特定视图,我使用 UIPageController 在视图中实现多页,对于嵌入在页面滚动控制器中的视图(现在将其命名为 EmbeddedView),有一个包含自定义 UITableViewCell 的 UITableView。自定义表格视图单元格只有一个 nib,文件的所有者是 EmbeddedView。

在嵌入式视图中:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
/*===== This is the most memory efficient way of creating table view cells =====*/

static NSString *CellIdentifier = @"CellIdentifier";

CustomTableViewCell *cell = (CustomTableViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
{
    [[self customTableCellNib] instantiateWithOwner:self options:nil];
    cell = [self customTableCell];
    [self setCustomTableCell:nil];
    }
}

我尝试了什么:

我为自定义表格视图单元格创建了另一个 nib 文件并在 -cellForRowAtIndexPath() 中使用它,我检查了方向并使用不同的 nib 动态创建单元格,没有运气。

我在 -didRotateFromInterfaceOrientation() 中添加了 [tableview reloadData],没有做任何事情。

请有人指出我正确的方向吗?任何帮助表示赞赏。

这是 IB 中的表视图 Autosizing:

在此处输入图像描述

看起来不错,但按钮不起作用

在此处输入图像描述

更新:我尝试在 IB 中为表格视图指定不同的 Autosizing 掩码,结果如下所示:

<1>

在此处输入图像描述 在此处输入图像描述

在此处输入图像描述

<2>

在此处输入图像描述 在此处输入图像描述

在此处输入图像描述

<3>

在此处输入图像描述

在此处输入图像描述

<4>

在此处输入图像描述

在此处输入图像描述

4

1 回答 1

4

Have you checked how the superview is being resized?

Check if the superview has 'clip to bounds' checked. If it is not check it. That will make the view clip its contents so you see if it is resizing ok.

I'd say the superview is not sizing correctly and because of that the touch events are not well delivered also.

EDIT - So this was the tip that could let the OP reach the solution:

What I normally do in cases like of unexpected behavior in resizing and such is to change every view in the hierarchy to a different, well recognizable, color. Right now you have view A and view B with the same background color (or clear) and you don't see if view B is resizing well. Good luck.

于 2013-01-21T15:12:39.957 回答