很多问题我们之前都觉得很蛋疼,觉得需要好费劲的绕一大圈才能解决,其实这些问题APPLE都帮我们考虑了,我们只是不知道而已,相信看完下面这些问题以及解决办法,很多人都会觉得,我次奥,居然就这么简单啊!
OK,let's go。
TableView没有使用完,下面有很多cell空着,但是线却在,我们怎么办,按之前的想法,肯定是自定义一个cell,然后去控制,巴拉巴拉一大堆,好麻烦。
那么apple的解决办法呢?show you
self.tableview.tableFooterView = [[UIView all]init];
仅此一句,我们的问题就解决了。
这就是解决之后的样子。是不是简单到吐血了!
自定义了leftBarbuttonItem作滑返回手势失效了怎么办?
self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]
initWithImage:img
style:UIBarButtonItemStylePlain
target:self
action:@selector(onBack:)];
self.navigationController.interactivePopGestureRecognizer.delegate = (id<uigesturerecognizerdelegate>)self;</uigesturerecognizerdelegate>
ScrollView莫名其妙不能在viewController划到顶怎么办?
self.automaticallyAdjustsScrollViewInsets = NO;
键盘事件写的好烦啊,每次都要写一次,简直想骂人了!
OK,消消气,IQKeyboardManager,可以帮你解决你不想看到的一切问题。(github真不错)
前方高能,请注意!!!
为什么我的APP总是不流畅呢,问题出在哪里!fuck
有个工具叫KMCGeigerCounter,不妨下载下来试试啊! (github 你懂得!)
怎么在不新建一个cell的情况下调整separaLine的位置?
_myTableView.separatorInset = UIEdgeInsetsMake(0, 100, 0, 0);
怎么点击view就让键盘收起,需要添加一个tap事件嘛 ?
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
[self.view endEditing:YES];
}
给每个VC设定默认的BGIMG?
用基类就好了!
如何在代码里面改在XIB里添加的layoutAttributes,代码怎么找啊?
就像拉button一样的拉你的约束,nslayoutattribute也是可以拉线的。
Safari的滑动隐藏navigationbar的效果很赞啊!实现很难吧?
navigationController.hidesBarsOnSwipe = Yes
导航条返回键带的title太讨厌了,怎么搞掉它?
[[UIBarButtonItem appearance] setBackButtonTitlePositionAdjustment:UIOffsetMake(0, -60)
forBarMetrics:UIBarMetricsDefault];
coredata用起来好麻烦啊!!!
MagicRecord来帮你!
collectionView怎么搞定像tableview那种悬停的header?
CSStickyHeaderFlowLayou
用一个pan手势来代替UISwipegesture的各个方向?
- (void)pan:(UIPanGestureRecognizer *)sender
{
typedef NS_ENUM(NSUInteger, UIPanGestureRecognizerDirection) {
UIPanGestureRecognizerDirectionUndefined,
UIPanGestureRecognizerDirectionUp,
UIPanGestureRecognizerDirectionDown,
UIPanGestureRecognizerDirectionLeft,
UIPanGestureRecognizerDirectionRight
};
static UIPanGestureRecognizerDirection direction = UIPanGestureRecognizerDirectionUndefined;
switch (sender.state) {
case UIGestureRecognizerStateBegan: {
if (direction == UIPanGestureRecognizerDirectionUndefined) {
CGPoint velocity = [sender velocityInView:recognizer.view];
BOOL isVerticalGesture = fabs(velocity.y) > fabs(velocity.x);
if (isVerticalGesture) {
if (velocity.y > 0) {
direction = UIPanGestureRecognizerDirectionDown;
} else {
direction = UIPanGestureRecognizerDirectionUp;
}
}
else {
if (velocity.x > 0) {
direction = UIPanGestureRecognizerDirectionRight;
} else {
direction = UIPanGestureRecognizerDirectionLeft;
}
}
}
break;
}
case UIGestureRecognizerStateChanged: {
switch (direction) {
case UIPanGestureRecognizerDirectionUp: {
[self handleUpwardsGesture:sender];
break;
}
case UIPanGestureRecognizerDirectionDown: {
[self handleDownwardsGesture:sender];
break;
}
case UIPanGestureRecognizerDirectionLeft: {
[self handleLeftGesture:sender];
break;
}
case UIPanGestureRecognizerDirectionRight: {
[self handleRightGesture:sender];
break;
}
default: {
break;
}
}
break;
}
case UIGestureRecognizerStateEnded: {
direction = UIPanGestureRecognizerDirectionUndefined;
break;
}
default:
break;
}
}
拉伸图片都变形了,怎么破!?
UIImage *image = [[UIImage imageNamed:@"xxx"] stretchableImageWithLeftCapWidth:10 topCapHeight:10];
GIF好卡啊!怎么办?
FlipBoard出品必为精品。附上链接https://github.com/Flipboard/FLAnimatedImage
上拉刷新好复杂?有简单的嘛?
come on ! https://github.com/samvermette/SVPullToRefresh
[tableView addPullToRefreshWithActionHandler:^{
// prepend data to dataSource, insert cells at top of table view
// call [tableView.pullToRefreshView stopAnimating] when done
} position:SVPullToRefreshPositionBottom];
怎么把tableview里cell的小对勾的颜色改成别的颜色?
TableView.tintColor = [UIColor redColor];
本来我的statusbar是lightcontent的,然后用了UIImagePickerController会导致我的statusbar的样式变成黑色,怎么破?
- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated
{
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
}
怎么把我的navigationbar弄成透明的而不是带模糊的效果?
[self.navigationBar setBackgroundImage:[UIImage new]
forBarMetrics:UIBarMetricsDefault];
self.navigationBar.shadowImage = [UIImage new];
self.navigationBar.translucent = YES;
怎么改变textfield的placeholder的颜色和位置?
继承uitextfield,重写这个方法
- (void) drawPlaceholderInRect:(CGRect)rect {
[[UIColor blueColor] setFill];
[self.placeholder drawInRect:rect withFont:self.font lineBreakMode:UILineBreakModeTailTruncation alignment:self.textAlignment];
}