巴特西
首页
Python
Java
PHP
IOS
Andorid
NodeJS
JavaScript
HTML5
ios 能给NSObject添加Extension吗
2020年,大厂常问iOS面试题汇总!
Runloop & KVO runloop app如何接收到触摸事件的 为什么只有主线程的runloop是开启的 为什么只在主线程刷新UI PerformSelector和runloop的关系 如何使线程保活 KVO 实现原理 如何手动关闭kvo 通过KVC修改属性会触发KVO么 哪些情况下使用kvo会崩溃,怎么防护崩溃 kvo的优缺点 runtime相关问题 结构模型 介绍下runtime的内存模型(isa.对象.类.metaclass.结构体的存储信息等) 为什么要设计metaclass c
iOS类别(Category)与扩展(Extension)-b
苹果的官方文档 Category在iOS开发中使用非常频繁.尤其是在为系统类进行拓展的时候,我们可以不用继承系统类,直接给系统类添加方法,最大程度的体现了Objective-C的动态语言特性. #import @interface NSObject (Category) - (void)myMethod; @end 这是一个最简单的Category,作用于NSObject类,给NSObject添加了一个方法. 使用Category需要注意的点: (1) Category的方法不一定非要在@imp
iOS桌面小插件 Widget Extension
iOS桌面小插件 Widget Extension 这个插件时iOS14以后才出现的,基于SwiftUI 旧项目新建时可能一堆错误,其中一个时要把插件target 开发sdk版本设置为14.0以上 新建target File - Target - Widget Extension 项目结构 @main 这里是主入口,这里可以设置小组件的 Provider以及 WidgetEntryView,以及长按后弹出框的 APP 信息设置. Provider:控制器,这里可以用来做小组件的刷新操作 Simp
ios 向工程里添加Fonts
ios 向工程里添加Fonts 1.网上搜索字体文件(后缀名为.ttf,或.odf),假如你加入的字体为微软雅黑 2.把字体库导入到工程的resouce中 3.然后在你的工程的Info.plist文件中新建一行(Add Row),添加key为:UIAppFonts(或Fonts provided by application,前者会自动转化为后者),类型为Array或Dictionary都行: 在UIAppFonts下再建立一个键值,key可以是任意的(默认的是item0),v
iOS 向模拟器里添加照片
iOS 向模拟器里添加照片 模拟器里Photos最开始时是没有照片的,有时我们做Demo时需要Photos里面的照片做测试,这时就需要把Mac上的照片导入到模拟器里.步骤如下: 1,打开模拟器 2,选中照片,把照片往模拟器里拖(这时照片会以Safari打开) 3,鼠标长按照片,弹出菜单以后,选中Save Image选项即可,这时照片就会导入到模拟器里了. 注意:一次拖动多张照片也只会添加一张,最好是一次拖动一张
iOS类别(Category)和扩展(Extension,匿名类)
Category在iOS在开发常用. 特别是对于系统扩展上课时间.我们不能继承系统类.直接添加到系统类方法,最大程度上体现Objective-C动态语言特征. #import @interface NSObject (Category) - (void)myMethod; @end 这是一个最简单的Category,作用于NSObject类.给NSObject加入了一个方法. 使用Category须要注意的点: (1) Category的方法不一定非要在@implementation中实现.也能
ios中的category与extension
http://blog.csdn.net/haishu_zheng/article/details/12873151 category和extension用来做类扩展的,可以对现有类扩展功能或者修改其功能. 在iOS中category应用是非常广泛的,系统自带的很多类都有多个category扩展功能. 一般category中可以定义新的方法.重写类原来的方法和添加readonly属性 而extension可以认为是匿名的category,但是这个extension相对于categor
iOS 9之Shared Links Extension(Safari Extensibility)
金田 (github示例源码) 在之前的Blog中有介绍了关于Safari Extensibility的 Content Blocking部分,详情可以看这里 --- iOS 9之Safari广告拦截器(Content Blocker),今天我们就来看看关于 Safari的另一个扩展点(插件)- Shared Links. 好,先来看一下如何使用该功能: 打开Safari,点击书签按钮 (像一本打开的书一样的按钮) 图1 书签按钮 选择 “@”共享分栏,就可以看到当前设备中的所有Shared L
iOS开发之NSObject的多线程
1.NSObject的多线程方法(用的时候要用@autoreleasepool{}包起来) 开启后台执行任务的方法: - (void)performSelectorInBackground:(SEL)aSelector withObject:(id)arg 苹果底层允许使用performSelectorInBackground方法在后台线程更新UI,强烈不建议这么做! 在后台线程中通知主线程执行任务的方法: - (void)performSelectorOnMainThread:(SEL)aSe
ios开发之 NSObject详解
NSObject是大部分Objective-C类继承体系的根类.这个类遵循NSObject协议,提供了一些通用的方法,对象通过继承NSObject,可以从其中继承访问运行时的接口,并让对象具备Objective-C对象的基本能力.下面我们就详细的介绍NSObject. 一.使用详解 1.加载及初始化类 /** 运行时加载类或分类调用该方法, 每个类只会调用一次 */ + (void)load { } /** 类实例化使用前需要先初始化, 一个类调用一次, 如果子类没有实现该方法则会调用父类方法
swift 如何在IOS应用图标上添加消息数
在应用图标右上角添加消息数提醒,可以很方便的告知用户该应用中有无新消息需要处理.下面用xcode 7.3.1来简要说明一下如何用swift语言进行此功能的实现. 1.修改 AppDelegate.swift // // AppDelegate.swift // RainbowDemo // // Created by Jackwang on 16/8/17. // Copyright © 2016年 Jackwang . All rights reserved. // import UIKit
IOS第二天-新浪微博 - 添加搜索框,弹出下拉菜单 ,代理的使用 ,HWTabBar.h(自定义TabBar)
********HWDiscoverViewController.m(发现) - (void)viewDidLoad { [super viewDidLoad]; // 创建搜索框对象 HWSearchBar *searchBar = [HWSearchBar searchBar]; searchBar.width = ; searchBar.height = ; self.navigationItem.titleView = searchBar; //设置titleView 是搜索框 } HW
iOS 在类别里添加成员变量的方法:objc_setAssociatedObject
今天在github上查看MJPopupViewController这个项目,发现里面用到了objc_setAssociatedObject,用来为类别添加成员变量. 我百度之后,发现有人是这样说明的: category与associative作为objective-c的扩展机制的两个特性,category即类型,可以通过它来扩展方法:associative,可以通过它来扩展属性:在iOS开发中,可能category比较常见,相对的associative,就用的比较少,要用它必须使用<objc/r
iOS中为网站添加图标到主屏幕
1 <link rel="apple-touch-icon-precomposed" href="icon.png"/> 2 <link rel="apple-touch-icon" href="icon.png"/> apple-touch-icon和apple-touch-icon-precomposed,区别就在于是否会应用iOS中自动给图标添加的那层高光.前者会自动加圆角和高亮效果 1 <
swift为UIView添加extension扩展frame
添加swift file:UIView+Extension import UIKit extension UIView { // x var x : CGFloat { get { return frame.origin.x } set(newVal) { var tmpFrame : CGRect = frame tmpFrame.origin.x = newVal frame = tmpFrame } } // y var y : CGFloat { get { return frame.o
iOS开发-为程序添加应用设置
一.设置捆绑包 设置捆绑包是应用自带的一组文件,用于告诉设置该应用期望得到用户的哪些偏好设置. 新建设置捆绑包:Command+N,在iOS部分中的Resource,选择Settings Bundle图标. 在项目窗口选择名为Settings.bundle的项目,在Root.plist中进行设置. 二.设置属性列表(Root.plist) 其实属性列表的本质就是字典,通过键来检索存储条目的类型和值. 设置的时候记得在编辑区域任意位置右击,然后选中Show Raw Keys/Values选项,用来
iOS中为网站添加图标到主屏幕以及增加启动画面
虽然没有能力开发Native App,但还是可以利用iOS中Safari浏览器的特性小小的折腾一下,做一个伪Web App满足下小小的虚荣心的. 既然是在iOS中的Safari折腾的,那么代码中利用到的也基本上都是Safari的私有属性. 添加图标到主屏幕是Web App的第一步: <link rel="apple-touch-icon-precomposed" sizes="57x57" href="icon-57.png"> &l
iOS: 学习笔记, 动态添加按钮
1. 新建iOS -> Single View Application. 2. 个性控制器文件YYViewController.m(此处修改为你相应的控制器文件名) // // YYViewController.m // StudyDynamicButton // // Created by yao_yu on 14-5-27. // Copyright (c) 2014年 yao_yu. All rights reserved. // #import "YYViewController.
iOS: 获取UITableViewCell上添加的子控件对应的cell
一.简单介绍 UITableViewCell是UITableView的核心部分,我们在开发中因为功能的扩展经常需要自定义,以便在其上面添加子控件,例如button.label等.添加后获取这些子控件的cell,因为iOS不同系统的缘故此处会有一个坑,可能会崩溃.接下来以button为例来解决. 二.崩溃情况 在自定义cell的时候,在cell上添加了一个button,然后在controller中调用这个button的时候要获取到cell,在iOS6中直接button.superView就可以.
iOS - UICollectionView 瀑布流 添加表头视图的坑
UICollectionView 瀑布流 添加表头视图的坑 首先是,需求加了个头视图在顶部,在collectionView中的头视图跟TableView的不一样,TableView的表头只要设置tableview.tableHeaderView就可以了. collectionView 怎么添加这样的效果的呢 有两种思路 第一种:在collectionView的段头代理中设置 (只在第一段中设置) 第二种:改变 collectionView 的内延距离, 然后添加在内延空白的位置. 第一种 //
iOS分类(category),类扩展(extension)—史上最全攻略
背景: 在大型项目,企业级开发中多人同时维护同一个类,此时程序员A因为某项需求只想给当前类currentClass添加一个方法newMethod,那该怎么办呢? 最简单粗暴的方式是把newMethod添加到currentClass中,然后直接实现该方法就OK了. 但考虑到OC是单继承的,子类可以拥有父类的方法和属性. 如果把newMethod写到currentClass中,那么currentClass的子类也会拥有newMethod.但真正的需求是只需要currentClass拥有newMeth
热门专题
tp5 分页处理字段
delphi flask 快速
is_numeric函数要求num不能是数字
代码第一个clone到本地 创建自己分支并把分支推到远程仓库
python中smtplib.SMTPDataError
JNI的指针类型怎么定义
sql两字段相除保留两位小数
mysql gtid 全量同步
子元素 absolute 撑开高度
nginx windows编译
poi导入wps excel
微信小程序 支持播放多大视频
CodeBlocks 开发GTK4
C libcurl 用fiddler代理
APK各部分占用ROM大小
qs 哪个版本开始有addQueryPrefix
unity 弹出messagebox
exsi6.5开启ssh
asp选择图片自动上传upfile.asp
电信光猫8080端口进不去