边开发,边添加。
1、有UIscroview的时候,从屏幕顶端开始,视图自动下沉20像素避开状态,这个方法是11后的,要坐下适配
_collectionView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever; //tableview、scroview、collectionview都可以用这个方法调整
2、导航栏的titleView设置宽度被改变了,这个_searchView就是我的自定义titleView,代码如下:
_searchView = [[APPHPSearchView alloc]initWithFrame:CGRectMake(0, -5, APPScreenWidth*0.7, 30.0)];
__weak typeof(self)weakSelf = self;
_searchView.searchViewIsClickBlock = ^{
APPSearchViewController *searchVC = [[APPSearchViewController alloc]init];
searchVC.hidesBottomBarWhenPushed = YES;
[weakSelf.navigationController pushViewController:searchVC animated:NO];
};
_searchView.layer.cornerRadius = 12.5;
//这个方法,创个视图,再加上去,有问题,方法一方法二都是一个怂样子,size对了,但是不居中,方法三是在重写的View里面加个方法,不能直接设置 _searchView.intrinsicContentSize属性,需要再类里面重写,是只读的
//方法一
self.navigationItem.titleView = [[UIView alloc]init];
[self.navigationItem.titleView addSubview:_searchView];
//方法二:
self.navigationItem.titleView = _searchView;
_searchView.translatesAutoresizingMaskIntoConstraints = YES;
//再_searchView的.m中写下这个方法
-(CGSize)intrinsicContentSize{
return CGSizeMake(APPScreenWidth*0.7, 30.0);
}
很奇怪,同样一个文件,再我另外一个工程里面,什么没设置就如下写了,就没事,不同的是就设置了导航栏透明、transulate、clipsToBounds,我把代码都加到这个有问题的里面,也没出现想要的效果,苹果爸爸太牛逼了,MLGB
//配置导航栏
-(void)configNavigationBarItem{
_searchView = [[APPHPSearchView alloc]initWithFrame:CGRectMake(0, -5, APPScreenWidth*0.7, 30.0)];
__weak typeof(self)weakSelf = self;
_searchView.searchViewIsClickBlock = ^{
APPSearchViewController *searchVC = [[APPSearchViewController alloc]init];
searchVC.hidesBottomBarWhenPushed = YES;
[weakSelf.navigationController pushViewController:searchVC animated:NO];
};
_searchView.layer.cornerRadius = 12.5;
self.navigationItem.titleView = _searchView;
}
不设置效果.jpeg
法一、二效果.jpeg
法三.jpeg
网友评论