自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 收藏
  • 关注

原创 iOS - 遥控面板的按钮绘制

不规则按钮的绘制,以及点击事件的添加。代码在这里

2021-06-01 11:44:02 251

原创 iOS - 给WKWebView添加头、尾视图

#import "ViewController.h"#import <WebKit/WebKit.h>@interface ViewController ()/// web@property (nonatomic, strong) WKWebView *webView;/// view@property (nonatomic, strong) UIView *bottomView;@end@implementation ViewController- (void).

2021-04-15 17:58:18 667

原创 iOS - 暗黑模式图片、颜色的适配

1、图片的适配以一张图片,图片名字为1为例拖进工程后,选中该图片,展开右侧边栏,把appearances属性展开,选中Any,Dark把对应图片拖进去,适配完成2、颜色的适配// MARK: - 颜色的适配,可以封装成工具类或者宏- (UIColor *)obtainCurrentBGColor { if (@available(iOS 13, *)) { UIColor *currentColor = [UIColor colorWithDyna

2021-03-20 15:53:43 537

原创 iOS - 循环滚动公告栏的实现

封装了一个继承于UIView的类,如下:#import <UIKit/UIKit.h>NS_ASSUME_NONNULL_BEGIN@interface XtayNoticeScrollView : UIView- (instancetype)initWithFrame:(CGRect)frame titleArray:(NSArray<NSString *> *)titleArray;- (void)openTimer; - (void)cl

2021-03-18 17:49:41 1523

原创 iOS - UTC日期和本地时间互转

// MARK: - 将本地时间转换为UTC时间- (NSString *)obtainUTCDateStringWithLocalDateString:(NSString *)localTimeString { NSDateFormatter *format = [[NSDateFormatter alloc] init]; format.dateFormat = @"yyyy-MM-dd HH:mm:ss"; format.timeZone = [NSTimeZone loc.

2021-03-16 16:15:07 1287

转载 Mac - 加密压缩文件(免费)

1、打开终端2、键入 cd desktop 让终端控制桌面3、键入zip -er 【压缩后文件名】.zip 【源文件(含后缀名)】命令4、执行压缩命令,输入加密密码,确认加密密码5桌面出现压缩后的文件6、完成...

2021-01-21 13:28:12 235

原创 iOS - 用代码批量改变文件夹中文件的名字

NSString *path = @"/Users/zhangjinjiang/Desktop/ios"; NSFileManager *fileManager = [NSFileManager defaultManager]; // 创建一个新的文件夹路径 [fileManager createDirectoryAtPath:@"/Users/zhangjinjiang/Desktop/ios111" attributes:nil]; if ([fileManager f.

2021-01-04 22:42:53 551

原创 iOS - iOS 12 之后的归档(NSKeyedArchiver)、解档(NSKeyedUnarchiver)用法

一、iOS 12之后旧的归档解档方法废弃了,更改为:归档:+ (nullable NSData *)archivedDataWithRootObject:(id)object requiringSecureCoding:(BOOL)requiresSecureCoding error:(NSError **)error解档:+ (nullable id)unarchivedObjectOfClasses:(NSSet<Class> *)classes fromData:(N.

2020-12-16 17:46:49 2470

原创 iOS - 检测是否被抓包

- (BOOL)checkProxySetting { NSDictionary *proxySettings = (__bridge NSDictionary *)(CFNetworkCopySystemProxySettings()); NSArray *proxies = (__bridge NSArray *)(CFNetworkCopyProxiesForURL((__bridge CFURLRef _Nonnull)([NSURL URLWithString:@"https:/.

2020-12-12 11:25:20 597

原创 MBProgressHUD的小封装

就是XtayMBHudView 这个类:#import <UIKit/UIKit.h>NS_ASSUME_NONNULL_BEGIN@interface XtayMBHudView : UIView/// 单例+ (instancetype)sharedSingleInstance;- (void)creatTextHudAlertViewWithSuperView:(UIView *)superView title:(NSString *)title detailT..

2020-09-15 14:50:46 267

原创 iOS - UIBezierPath 实现饼状图

首先看效果图:#import <UIKit/UIKit.h>NS_ASSUME_NONNULL_BEGIN@interface CircleView : UIView@property (nonatomic, copy) NSArray<NSNumber *> *valueArray;@endNS_ASSUME_NONNULL_END//...

2019-03-27 14:43:00 333

原创 iOS - 判断类的几种形式

1.创建类@interface Father : NSObject@end@interface Son : Father@end2.设置全局变量@interface ViewController () { Son *_s; Father *_f;} _f = [Father new]; _s = [Son new];下面开始判...

2019-01-14 18:15:42 868

原创 iOS - 自定义结构体

我一直在模仿,还未曾超越大神们......新建一个类,导入#import &lt;UIKit/UIKit.h&gt;框架,创建结构体:#import &lt;UIKit/UIKit.h&gt;typedef struct { int totalCount; int bestCount;}ZJJFriends;typedef struct { int...

2019-01-03 15:47:09 780

原创 iOS - 找出汉字拼音首字母

#import &lt;Foundation/Foundation.h&gt;@interface NSString (PinyinInitials)/**获取汉字拼音的首字母, 返回的字母是大写形式, 例如: @"俺妹", 返回 @"A".*如果字符串开头不是汉字, 而是字母, 则直接返回该字母, 例如: @"b彩票", 返回 @"B".*如果字符串开头不是...

2018-08-29 13:42:29 2501

原创 iOS - 关于 GCD 常用 API 总结

1. dispatch_apply2. dispatch_barrier_async

2018-07-14 22:09:57 422

原创 iOS - 富文本指定文字点击实现(仿超链接)

#import "ViewController.h"@interface ViewController () &lt;UITextViewDelegate&gt;@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loa...

2018-07-05 18:40:48 9343 1

原创 iOS - 网址超链接

代码如下,直接跳转:- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. NSString *str1 = @"我是一只丑小鸭"; NSString *str2 = @"http://www...

2018-07-05 11:38:13 288

原创 iOS - 自定义代码块

https://img-blog.csdn.net/2018050814485955

2018-05-08 14:50:15 230

原创 iOS - 常用通用宏定义

#define SCREEN_WIDTH [UIScreen mainScreen].bounds.size.width#define SCREEN_HEIGHT [UIScreen mainScreen].bounds.size.height// iPhone 机型(尺寸大小)判断#define IPHONE_SE

2018-01-08 11:07:25 353

转载 iOS - 优秀文章收集

好文章的收集。

2017-07-17 10:40:46 257

原创 iOS - 截取屏幕图片的方法

截取手机屏幕图片、自定义分割图片

2017-06-26 10:28:17 568

原创 iOS - UIView 类目关于 frame 的封装

类别属性的简单扩展

2017-06-14 17:56:15 446

原创 iOS - 获取设备型号方法

iOS 获取设备型号的方法

2017-06-12 17:53:24 312

原创 iOS - Xcode 项目上传到自己的GitHub上面

xcode 项目上传 GitHub 的详细步骤

2017-06-12 15:10:23 460

原创 iOS - OC 与 Swift 桥接

OC & Swift 桥接问题

2017-06-09 16:03:52 606

转载 iOS - 关键词的解释

nonatomic与atomic的区别与作用

2017-06-07 15:48:18 385

原创 iOS - 自定义NSLog

在开发过程中,我们经常需要用到NSLog输出一些信息,甚至有的开发过程,必须在控制台查看输出,有经验的程序员通过控制台输出就能知道整个数据交互的一个流程。但是一个发布的程序,里面带有太多的NSLog输出,肯定对于App性能有所影响,这时候我们可以重写NSLog输出来处理,在开发的时候使用DEBUG模式,在发布的时候使用RELEASE模式。这样,发布的App就不会在程序内部做大量的NSLog输出了。

2017-06-02 11:45:16 408

原创 iOS - 关于开发封装动态库的教程

framework 封装。。。

2017-05-25 11:06:15 680

原创 iOS - 利用 DrawRect 实现简易画板功能的实现

DrawRect 画板

2017-05-24 16:02:42 628

转载 iOS - DrawRect 的使用

DrawRect 详细使用步骤

2017-05-23 11:50:28 509

原创 iOS - 发布动态文字更多、收起的实现

模仿微信朋友圈更多收起

2017-05-22 11:34:56 3013

原创 iOS - UICollectionView 的自定义头视图

iOS 自定义头视图尾视图的实现

2017-05-15 16:28:25 771

原创 iOS - 关于瀑布流3.0的实现

自定义瀑布流的layout布局

2017-05-11 17:32:16 241

原创 iOS - Socket-长连接(心跳包)的实现

根据连接启动的方式以及本地套接字要连接的目标,套接字之间的连接过程可以分为三个步骤:服务器监听,客户端请求,连接确认。

2017-04-25 13:28:05 7261

转载 iOS - 极光单一用户(特定用户)推送的代码

#pragma mark - 给单一用户进行推送的设置- (void)jPushSingalUserSetWithUser:(NSString *)user_id {    NSMutableSet *tags = [NSMutableSetset];   //别名,根据用户的UID去设置别名,那么可以指定的推送给某些用户    NSString *alia

2017-04-13 15:34:57 1048

原创 iOS - UICollectionView 简单拖动 cell 实现

#define  CELL_WIDTH  (self.view.frame.size.width-30)/2#define  CELL_HEIGHT  100#import "ViewController.h"@interface ViewController ()UICollectionViewDataSource,UICollectionVi

2017-04-01 09:36:18 721

原创 iOS - 通知监听键盘高度

#define   SINGLE_NOTICE   [NSNotificationCenter defaultCenter]#import "ViewController.h"@interface ViewController ()UITextFieldDelegate> {    float _keyboardHeight; // 键盘高度

2017-02-27 15:14:06 338

转载 iOS - 多线程中 condition wait

使用NSCondition,实现多线程同步。。。举个列子 消费者跟生产者。。。现在传言8s要出了。。消费者想买8s。现在还没有8s。消费者等待8s生产。生产了一个产品,唤起消费者去买8s。解锁.。。一般在多线程编程中都会用到condition_wait,“条件变量与互斥量一起使用从可以允许线程以无竞争的方式等待特定的条件发生。为什么必须一起使用呢?1)假如当某个资源满足了一定的

2017-02-23 15:39:44 1028

原创 iOS - UDP Socket 的使用

Socket 通信中,TCP/UDP,接着UDP的方法:- (void)initSendSocket{    if (!_sendTextUdpSocket) {        _sendTextUdpSocket = [[GCDAsyncUdpSocketalloc] initWithDelegate:selfdelegateQueue:dispatc

2017-02-21 14:25:47 1301

原创 iOS - 简单判断APP账号登录过期的方法

NSDate *date;        date = [[NSUserDefaultsstandardUserDefaults] objectForKey:@"date"];        if (date) {                NSLog(@"存在");                        

2017-02-06 10:28:45 1994

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除