2015-03-02 48 views
0

我有一个UIPageViewController两页。第一个是自定义UIViewController,第二个是UITableViewController。该应用程序有一个UINavigationController和一个选项卡栏。带有框架的UIPageViewController

我想设置围绕UIViewControllerUITableViewController的框架或边框。我尝试了几种解决方案,但没有人适合我的问题。

我试图用我的UIPageViewController这里面代码:

CGRect pageViewRect = self.view.bounds; 
pageViewRect = CGRectInset(pageViewRect, 10.0, 10.0); 
self.pageViewController.view.frame = pageViewRect; 

框架是很好的,但是当用户更改页面框架不动。

我尝试另一种解决方案,这是这样设置边框的UITableView各地:

CALayer *layer = self.tableView.layer; 

[layer setFrame:CGRectMake(52, 52, 50, 50)]; 
[layer setBorderWidth:52.0]; 
[layer setBorderColor:[[UIColor colorWithWhite: 0.8 alpha: 1.0] CGColor]]; 
[layer setMasksToBounds:YES]; 

在这种情况下,框架是太大,但就是一个例子。问题是框​​架始终位于表格视图上并覆盖文本。

我只需要一个自定义视图和用户更改页面时移动的表视图。

让我知道你是否需要更多的信息。

UPDATE

我试图通过的LoVo和马赫什阿格拉瓦尔sugested的解决方案,但同样我想,问题可以看出图像中:

border over table

正如你所看到的边框位于标题上(再次,边框更大以查看问题)。

回答

1

我认为这将有助于你

[self.tableView.layer setBorderWidth:2.0]; 
[self.tableView.layer setBorderColor:[UIColor whiteColor]]; 
[self.tableView.layer setMasksToBounds:YES]; 

尝试一次。和你的另一种观点一样。

UPDATE

CGFloat borderWidth = 2.0f; 

self.tableView.frame = CGRectInset(self.frame, -borderWidth, -borderWidth); 
self.tableView.layer.borderColor = [UIColor yellowColor].CGColor; 
self.tableView.layer.borderWidth = borderWidth; 
self.tableView.layer.masksToBounds = YES; 
+0

谢谢,但不起作用。我更新了问题以显示此解决方案的问题。 – 2015-03-02 14:13:53

+0

看到我更新的答案。我认为这会有所帮助。 – 2015-03-02 14:42:05

+0

我对这个解决方案有同样的问题。边框总是在tableView之上。我不能使用self.frame,我尝试了self.tableView.frame或self.view.frame。 – 2015-03-03 11:49:46

0

你试试这个?

self.view.layer.borderWidth = 1.0; 
self.view.layer.borderColor = [UIColor blackColor].CGColor; 
+0

谢谢,但不起作用。我更新了问题以显示此解决方案的问题。 – 2015-03-02 14:13:49

0

也许你应该改变你的tableview框架的大小。

CGRect frame = CGRectMake(1,1,self.view.frame.size.width - 2,self.view.frame.size.height - 2); 
//or whatever width your border should have 

self.pageViewController.view.frame = frame; 

self.view.backgroundColor = [UIColor blackColor]; 
+0

此解决方案的问题在于,当您更改pageviewController中的页面时,框架不会随页面一起移动。 – 2015-03-03 11:52:42