与UITableView结合使用时,UINavigationBar下缺少放置阴影
当我尝试向导航栏添加自定义背景时,它们在表视图的顶部没有阴影。在子视图中,一切正常 这是我使用的代码与UITableView结合使用时,UINavigationBar下缺少放置阴影,uitableview,ios6,uinavigationbar,Uitableview,Ios6,Uinavigationbar,当我尝试向导航栏添加自定义背景时,它们在表视图的顶部没有阴影。在子视图中,一切正常 这是我使用的代码 // Create resizable images UIImage *gradientImage44 = [[UIImage imageNamed:@"navbar"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 0)]; // Set the
// Create resizable images
UIImage *gradientImage44 = [[UIImage imageNamed:@"navbar"]
resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 0)];
// Set the background image for *all* UINavigationBars
[[UINavigationBar appearance] setBackgroundImage:gradientImage44
forBarMetrics:UIBarMetricsDefault];
// Customize NavBar Shadow
[[UINavigationBar appearance] setShadowImage:nil];
不存在阴影
现有阴影
更新:
找到了这个,但不起作用。我完全是用同样的方法来做的:-(.替换
[[UINavigationBar外观]设置阴影图像:nil];
与
[[UINavigationBar外观]设置阴影图像:[UIImage ImageName:@“SomeShadowImage”]];
它适用于iOS 6.0及更高版本。我通过重新实现导航控制器修复了它。视图层次结构如下所示
UIView
+- Navigation View
+- Table View
我将UIView更改为表视图,并将其添加到UINavigation控制器中。这修复了缺少的阴影问题。我遵循@madcat的回答。在我的情况下,UITableView或UITableViewController(嵌入容器视图)必须位于导航栏上方(拖到视图上)在层次结构中。就像那样,导航栏是在UITableView/容器测试之后/之上绘制的阴影,但仍然不工作。我现在在子视图中获得了一个新阴影。!你不想要那个蓝色阴影吗?到底什么不起作用?不,我不想要蓝色阴影。我使用它只是为了将其与标准阴影区分开来。我的应用程序哈s 2个屏幕。主屏幕是一个带有表格视图的导航栏。它们没有阴影。第二个屏幕是细节视图,顶部有一个导航栏。它们是阴影。我唯一想实现的是,我在两个屏幕上都有阴影。这对苹果来说非常不合逻辑,但正确。+1