iOS 去掉导航栏的边界灰线;去掉搜索框的边界灰线和其中文本输入框的阴影

想要实现上面这种界面,一般都会显示的与预期的不一致,尽管我们设置的颜色是一样。通过下面的步骤就可以实现:

1.关闭navigationBar的透明度

self.navigationController.navigationBar.translucent
= NO;

2.利用本机数码测色计,测出导航栏颜色的rgb,再次设置导航栏的颜色和下面view的背景颜色。

3.去除导航栏下面的灰色分割线

[self.navigationController.navigationBar
setBackgroundImage:[[UIImage
alloc]init]
forBarMetrics:UIBarMetricsDefault];

[self.navigationController.navigationBar
setShadowImage:[[UIImage
alloc]init]];

去掉导航栏的边界灰线

[self.navigationController.navigationBar
setBackgroundImage:[[UIImage
alloc] init]
forBarMetrics:UIBarMetricsDefault];

self.navigationController.navigationBar.shadowImage
= [[UIImage alloc]
init];

去掉搜索框的边界黑线

[self.mySearchBar setBackgroundImage:[[UIImage alloc] init]];

去掉搜索框的文本输入框的阴影

在stroryboard中:选中搜索框——>右边in attribute inspector——>View 在Tint的颜色栏中选择 clear color

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2025-01-05 22:42:19

iOS 去掉导航栏的边界灰线;去掉搜索框的边界灰线和其中文本输入框的阴影的相关文章

iOS 去掉导航栏的边界黑线&去掉搜索框的边界黑线和其中文本输入框的阴影 - 解决方案

去掉导航栏的边界黑线 in viewDidload: [self.navigationController.navigationBar setBackgroundImage:[[UIImage alloc] init] forBarMetrics:UIBarMetricsDefault]; self.navigationController.navigationBar.shadowImage = [[UIImage alloc] init]; 去掉搜索框的边界黑线 in viewDidload:

iOS 为导航栏自定义按钮图案Button Image 运行出来的颜色与原本颜色不一样 -解决方案

为相机制作闪光灯,在导航栏自定义了"闪光"图案,希望点击时变换图片,但是一直没有改变,原来是因为设置了Global Tint的颜色,所以系统会自动把图片的颜色改为Global Tint的颜色. 解决方案,设置图片时,添加:imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal 源码: - (void) setFlashOn:(BOOL)isOn { if (self.captureDevice.hasFlash) { UIIm

去掉导航栏分割线 和 设置导航栏的背景颜色

iOS7之后由于navigationBar.translucent默认是YES,坐标零点默认在(0,0)点 当不透明的时候navigationBar.translucent=no,零点坐标在(0,64): - (void)setNavigationBar { self.automaticallyAdjustsScrollViewInsets = NO; self.edgesForExtendedLayout = UIRectEdgeTop; // 顶部开始 self.navigationCont

iOS 去掉导航栏最下面线的方法

导航栏透明,但是字体就不显示了,所以不可行. 下面两种方法是让导航栏下面的线不显示. // 方法1: [[self.navigationController.navigationBar.subviews objectAtIndex:0] setAlpha:0]; // 方法2: [self.navigationController.navigationBar setBackgroundImage:[[UIImage alloc] init]forBarMetrics:UIBarMetricsDe

让导航栏变透明,去掉导航栏下面的线

下面代码可以让导航栏变透明 [self.navigationController.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsCompact];或者可以照一张透明的图片来填充也可以 隐藏导航栏下面的那根线navigationBar.shadowImage 这个方法不知为啥没用了 现在可以用下面这个代码这个代码是让下面那条线消失NSArray *list = self.navigationBar.

IOS 去掉导航栏(UINavigationBar)下方的横线

这是导航栏的问题,将下边的代码放在  viewWillAppear  方法中就可以实现效果: - (void)viewWillAppear:(BOOL)animated{ // Called when the view is about to made visible. Default does nothing [super viewWillAppear:animated]; //去除导航栏下方的横线 [navigationBar setBackgroundImage:[UIImage imag

iOS开发导航栏控件的作用

一,在iOS开发过程中针对一些导航栏上需要自定义视图的情况,有时候需要用系统自带的处理,有些时候需要自定义一些视图并把视图添加上去,这时候主要是它们的位置有些许差别,下面简单写下demo: 1,用导航栏系统自带的视图处理: 1 //1 中间的图片 2 UIImageView *imageBarView = [[UIImageView alloc] initWithFrame:CGRectMake(kScreenWidth / 2.f - 40.f, 20.f, 80, 30)]; 3 image

iOS项目导航栏返回按钮

最近iOS项目中要求导航栏的返回按钮只保留那个箭头,去掉后边的文字,在网上查了一些资料,最简单且没有副作用的方法就是 [[UIBarButtonItem appearance] setBackButtonTitlePositionAdjustment:UIOffsetMake(0, -60) forBarMetrics:UIBarMetricsDefault]; 参考自这里:http://stackoverflow.com/questions/19078995/removing-the-titl

IOS 自定义导航栏

我们自己新建一个View,来自定义导航栏,如下代码: #import <UIKit/UIKit.h> @interface CustomNavigation : UIView typedef enum { customEventClickLBtn1 ,//点击了最左边的按钮 customEventClickRBtn1 , //最右边的按钮 customEventClickLBtn2 ,//点击了左边第二个按钮 customEventClickRBtn2 //点击了右边最靠左的按钮 }Custo