【iOS - 周总结】开发中遇到的小知识点(2018.12.17-2018.12.22)

本周知识点遇到的少。

部分知识点是关于图表的,已在前几篇文章中显示。

1.键值监听要注意关闭

在一个播放视频的页面返回后,在6s上运行没问题,可是在5s上运行会崩溃。我查看日志发现是kvo的问题。发现我在页面消失后没有去除观察者。从而出现崩溃。

// 在viewdidload中
// 监听播放
    [self.avPlayer addObserver:self forKeyPath:@"status" options:NSKeyValueObservingOptionNew context:nil];

- (void)dealloc {
    [self.avPlayer removeObserver:self forKeyPath:@"status"];
}

2.多注意查看源码

CWLateralSlide一个很不错的侧滑抽屉效果的库。有仿QQ的侧滑效果,还有直接覆盖的效果,种类很多。

在开发中我只是调用了最简单的,没有仔细看代码,以为它不支持这么多效果,闹了笑话。以后要多注意查看源码。

3.NSAttributedString 设置部分文字上移实现上对齐

添加下划线、换字体颜色等等功能都知道。可是在本周的开发中我遇到一个问题就是第一个字小 后面的字大,而且要求上对齐,这就不好实现了,我开始想的是直接写两个label。可是这样会比较麻烦。毕竟之前是按照一个label写的。这是我查看NSAttributedString发现其中有一个上移的属性

//调整基线位置 从而改变字体初始位置(垂直方向,正数往上,负数往下)
NSString *const NSBaselineOffsetAttributeName;
NSMutableAttributedString * mAttribute = [[NSMutableAttributedString alloc] initWithString:ligatureStr];
[mAttribute addAttribute:NSBaselineOffsetAttributeName
                   value:@10
                   range:NSMakeRange(0, 10)];

参考:一个相当全的NSAttributedString使用文档

4.仿微信朋友圈设置图片模式

微信朋友圈小图展示的时候不论大图小图都是充满,不变形。我是这样实现的

// 先设置按比例填充
_videoImageView.contentMode = UIViewContentModeScaleAspectFill;
// 这是如果是大图就会出现外面也有的情况。这就需要切割
_videoImageView.clipsToBounds = YES;

5.使用[url stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];警告

// 使用这个替换
[url stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]];

原文地址:https://www.cnblogs.com/weicyNo-1/p/10161770.html

时间: 2024-08-25 08:36:37

【iOS - 周总结】开发中遇到的小知识点(2018.12.17-2018.12.22)的相关文章

【周总结】开发中遇到的小知识点(2019.01.14-2019.01.19)

本周还是比较轻松的,小程序开发也接近了尾声,就是一些简单的修改了.我也就有了时间来回归老本行,重写iOS.这周我花了一些时间来把之前仿写的Swift项目完成.这个应用比较简单,但是实用点还是不少的.下面听我一一道来. 首先是搭建框架,在之前OC中我有自己的一套框架,用起来比较顺手.于是在swift中我也准备弄一套类似的框架.在最开始我失败了.在我创建父控制器的时候,我创建新的子控制器继承他发现不能自动生成viewdidload()方法.后来慢慢就好了,这应该是编译器的问题.靠苹果自己解决了. 然

【iOS - 周总结】开发中遇到的小知识点(2018.12.10-2018.12.15)

1.WKWebview加载html文本图片过大,没有自适应屏幕宽高. 在用Webview加载html文本有时候会遇到加载的图片过大,不能自适应屏幕宽高的问题.那么如何解决这个问题?如何使图片自适应屏幕?很简单,只需要加一个js就可以. 直接上代码: - (WKWebView *)detailWeb { if (!_detailWeb) { NSString *jScript = @"var meta = document.createElement('meta'); meta.setAttrib

(iOS)开发中收集的小方法

1.颜色转变成图片 - (UIImage *)createImageWithColor:(UIColor *)color {     CGRect rect = CGRectMake(0.0f, 0.0f, 1.0f, 1.0f);     UIGraphicsBeginImageContext(rect.size);     CGContextRef context = UIGraphicsGetCurrentContext();     CGContextSetFillColorWithCo

Android开发中遇到的小问题 一

1)想要ListView活着Girdview左右留些空隙,但Scrollbar要在屏幕最右边 在xml中加入 android:paddingLeft="8dp" android:paddingRight="8dp" android:scrollbarStyle="outsideOverlay" 2)用XML实现一个圆角矩形的drawable <?xml version="1.0" encoding="utf-8

Android开发中15条小经验

Android开发中15条小经验 1. TextView中的getTextSize返回值是以像素(px)为单位的,而setTextSize()是以sp为单位的. 所以如果直接用返回的值来设置会出错,解决办法是用setTextSize()的另外一种形式,可以指定单位: setTextSize(intunit,intsize) TypedValue.COMPLEX_UNIT_PX:Pixels TypedValue.COMPLEX_UNIT_SP:ScaledPixels TypedValue.CO

iOS开发中的那些小技巧

一,前言 看到这个图,你会想起谁?是不是想起了,曾经的用户名输入框,密码输入框... 那么,问题来了:作为iOS开发的你,这个输入框你是怎么实现的,成为关键. 二,方案 方案1:弄一个UIView,在这个视图上分别放三个控件:UIImageView,UILabel与UITextField.(这个方案很直接,如果你只是简单的直接将三个控件放到视图上,那么你的月薪暴露了,最多3K.如果你是对这个视图重写了,将那三个控件封装起来了,放在.h文件,那你的月薪应该是3.5K,如果是将那三个控件放到.m文件

Snail—iOS开发中得一些小技巧

开发中 常常会使父视图的透明度改变,而子视图不受父视图的影响,则下面这段代码可以完美解决.... fatherView.backgroundColor = [[UIColor lightGrayColor] colorWithAlphaComponent:0.6]; 版权声明:本文为博主原创文章,未经博主允许不得转载.

JAVA开发中遇到的小白点

这里主要是自己个人开发中遇到的一些小问题,自己攒起来,来弥补自己薄弱的JAVA基础,大神不要见笑 1. DateFormat格式化的HH和hh区别: public static boolean compare_date(String DATE1, String DATE2) { DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); try { Date dt1 = df.parse(DATE1); Date dt2 =

Android开发中实现桌面小部件

在Android开发中,有时候我们的App设计的功能比较多的时候,需要根据需要更简洁的为用户提供清晰已用的某些功能的时候,用桌面小部件就是一个很好的选择,即App Widget,下面我们就用Android studio来创建一个简单的桌面小部件: 选择New->Widget->App Wight                                                                 接下来设置App Widget的一些信息