【发布时间】:2014-10-25 07:33:59
【问题描述】:
我正在开发一个 Swift + SpriteKit 游戏,我想将一个小的 UITableViewController 插入一个小的 (100 x 200) UIView,然后将该视图添加到我的 SKScene。我正在使用此代码:
class BugsScene: SKScene {
override func didMoveToView(view: SKView) {
anchorPoint = CGPoint(x: 0.5, y: 0.5)
NSUserDefaults.standardUserDefaults().setObject("bugs", forKey: "lastSceneViewed")
let bugsTableView: BugsTVC = BugsTVC()
let nav = UINavigationController(rootViewController: bugsTableView)
let smallerRect = CGRectMake(0, 0, 100, 200)
let smallerView = UIView(frame: smallerRect)
smallerView.addSubview(nav.view)
self.view.addSubview(smallerView)
}
}
但是,在横向模式下(我的应用只支持左右横向,没有纵向),tableview 占据了横向模式的整个高度,纵向有 iPad 的宽度。
如何在 swift/spritekit 中将一个小的 UIView 添加到一个更大的场景中?
【问题讨论】:
-
更改视图的框架属性
-
所以在上面的代码中,我在初始化UIView的时候设置了它的frame。你的意思和这个不同吗?将较小视图的框架与 init 分开设置似乎没有影响。
-
@LearnCocos2D 你的评论是正确的。我的问题是我未能设置导航控制器的框架,其中 tableview 位于。把它变成一个答案,我会选择它作为正确的。谢谢!
标签: uitableview swift sprite-kit