0

我们有一个 iphone 应用程序,现在正在开发它作为通用应用程序。我们想使用相同的视图,包括表格视图。在左侧,我们使用可以动态扩展的 tableview 进行导航,在右侧,我们的 viewControllers 与 iPhone 基本相同。

由于设计和用户体验的原因,我们不想拉伸它们以填充右侧的整个视图,我们希望它们居中并在左侧和右侧填充。这个填充应该是动态的,因为如果左侧的菜单展开,填充应该减少。

我们试图通过覆盖单元格的 setframe 方法来实现,但它有点尴尬,之前尝试过你们中的某个人吗?

蒂亚

4

1 回答 1

0

在我的顶层内部UIView,我UIViewController会创建一个填充视图。让它全宽,superview根据需要增长/收缩并将其固定在左侧和右侧。

在填充视图中,创建您的内容视图。使视图变得任意宽,不要水平调整大小,也不要将其固定在左侧或右侧。将其粘贴在填充视图的中心。

现在,如果您说...将填充视图向右移动并通过更改框架上的 origin.x 和 size.width 来缩小它,内部内容视图将保持固定大小并在填充视图中居中。这也将使您滑入屏幕左侧或右侧的菜单。

根据评论编辑: 如果您的内部内容视图是表格,但您希望滚动条位于最右侧。

更改frame.size.height您的内部内容视图(UITableView以匹配您的表格视图的contentSize.height值。这将使表格与内容一样大。关闭垂直滚动。(注意:您必须在修改时更新表格视图的高度内容的高度。)

与其让你的填充简单UIView,不如让它成为UIScrollView.

现在你的表格视图是一个静态高度并且不滚动,没有滚动条。填充视图现在控制滚动,这意味着您可以通过触摸填充以及在填充视图的右侧边缘放置滚动条来滚动。

于 2013-01-08T14:04:15.330 回答