1
我有一個tableViewController裏面有一個動態UIView,它的圖層位置發生變化,所以它保持在狀態欄的下面。我使用UIScrollView對普通的View控制器做了同樣的事情。CALayer沒有改變UIScrollview的位置
其中tableViewController中的「狀態橫幅」所做的事情,viewController中的狀態橫幅沒有做到這一點。
狀態欄的位置在每個視圖控制器內的viewDidScroll方法中被修改。
爲什麼第二個視圖控制器中的橫幅不能移動?
下面是代碼,它是在這兩個視圖控制器相同的:
-(void)scrollViewDidScroll: (UIScrollView*)scrollView
{
CALayer *layer = _statusBanner.layer;
float scrollOffset = scrollView.contentOffset.y;
if (scrollOffset > 10)
{
[[self navigationController] setNavigationBarHidden:YES animated:YES ];
[_statusBanner setHidden:NO];
layer.position = CGPointMake(layer.position.x, scrollOffset + 10);
}
else {
[[self navigationController] setNavigationBarHidden:NO animated:YES ];
[_statusBanner setHidden:YES];
}
}
你在爲iOS6或7開發嗎? – Woodstock
我正在爲iOS7開發 – Jargen89
您可以在桌面視圖控制器的頂部而不是在視圖控制器的頂部使用視圖嗎?然後在滾動表格時它將始終保持在同一個地方。 – Macondo2Seattle