首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

iOS通知中心(NSNotificationCenter)的使用总结

iOS通知中心NSNotificationCenter应用总结 一、了解几个相关的类 1、NSNotification 这个类可以理解为一个消息对象,其中有三个成员变量。...@property (readonly, retain) id object; 这个成员变量是一个字典,可以用其来进行传。...init进行初始化 2、NSNotificationCenter 这个类是一个通知中心,使用单例设计,每个应用程序都会有一个默认的通知中心。...二、通知使用流程 首先,我们需要接收通知的地方注册观察者,比如:     //获取通知中心单例对象     NSNotificationCenter * center = [NSNotificationCenter...@"1":@"123"}];     //发送消息        [[NSNotificationCenter defaultCenter]postNotification:notice]; 我们可以回调的函数取到

67030

iOS-UITextField 全面解析iOSUITextField 使用全面解析UITextField的代理方法通知UITextField storyboard 设置属性

iOSUITextField 使用全面解析 建议收藏,用到的时候来这里一查就都明白了 //初始化textfield并设置位置及大小 UITextField *text = [[UITextField...(关于正则表达式和谓词的详细使用,我将会尽快整理出来供大家查阅) 所以,如果你要限制输入英文的话,就可以把这个定义为: #define Knum @"^[A-Za-z]+$" 当然,你还可以以上方法...UITextField派生自UIControl,所以UIControl类通知系统文本字段也可以使用。...因为文本字段要使用键盘输入文字,所以下面这些事件发生时,也会发送动作通知 UIKeyboardWillShowNotification  //键盘显示之前发送 UIKeyboardDidShowNotification...2、Placeholder : 可以文本框显示灰色的字,用于提示用户应该在这个文本框输入什么内容。当这个文本框输入了数据时,用于提示的灰色的字将会自动消失。

7K60
您找到你想要的搜索结果了吗?
是的
没有找到

iOS 工程 Cocoapods 的使用

我们开发 iOS 程序的时候,往往都会根据需要导入很多的第三方框架,但是不同的框架完成的功能不同,所以导入的方式也不同,并不是把它直接拖进工程中就完事了,我们需要配置各种环境,链接各种库文件等等。...这个时候我们就需要用到 cocoapods 来管理我们的第三方了,我们有了 CocoaPods 这个工具之后,只需要将用到的第三方开源库放到一个名为 Podfile 的文件, 然后命令行执行 $...网上也有类似的教程,但是有些很旧,有些写的不详细,导致新手使用的时候整的一头雾水,我就来说下。...### 第五步: 进入你的工程目录,这里建议直接右键你工程.xcodeproj 文件选择终端打开,然后 终端输入命令 cd ..  ...注意以上所有的增删改操作完成之后需要在去终端相应的目录下使用 pod install --verbose --no-repo-update 命令来更新,这样才会真正的生效。

98140

categoryiOS开发使用

上面是后端同学按照照module的方式开发的服务,整个的项目中请求前缀相同而每个module都有自己的前缀,结合起来整个请求URL格式就可以拆分为 HOT:PORT?...正如我们的标题一样我们采用category将统一的网络请求拆分到不同的文件---类似服务端的module一样将器拆分到不同的文件中进行管理 比如上面的我们将通过用的网络请求放置到ApiFetch这个类...error) { failure(error,api); }]; 然后是与服务端的mould保持一致我们进行各模块的网络请求管理以便根据某一某块的特殊要求作出变化,例如,user模块...附带一个module对应的参数---user,对应的Oder也会添加一个order作为模块url参数的前缀 然后是模块对应的url的管理啦: 如上图每个模块都有自己的path对应url,我们可以统一的防止...category对应的头文件 总之一句话就是分而治之,将杂而乱的url分化到不同的模块中去,按照每个模块的特性去进行管理 最后我们看看怎么使用吧 user模块的网络请求实例 NSDictionary

73210

iOSstoryboard故事板使用Segue跳转界面、传

iOS的开发过程,不可避免的要设计界面,android中有xml设置界面和直接使用java代码设置界面控件两种方式,之前的ios开发也是类似的有xib文件设置界面及用代码直接设置控件两种方法...查看各个界面的跳转也很方便,但之前一直使用xib进行开发,对storyboard的使用不太熟悉,今天好好学习了一下其中的界面跳转和传,用到了Segue这个东西,这里借着例子说明一下。...view controller按钮,右侧第四个部分把size设成想要的即可: 现在我们来为视图添加控件,考虑到我们的需求,要能辨认当下在哪个界面,要可以两个界面跳转,要可以设置和显示要传递的,...使用Segue界面间传: 我们两个视图中都添加了TextField编辑输入框,这样我们可以Page1的页面输入数据来传递到Page2显示,同样的可以Page2输入数据回到Page1显示。...我们传有两种方式,正好在两个传输过程中使用,先看第一个方法,实现从Page1传到Page2: 我们先在Page2定义一个变量用来接收所传递的: // Page2的.h文件 @property

1.4K20

坏消息,new Date()方法IOS系统存在null情况

背景介绍 笔者最近在开发小程序,发现在使用new Date()函数电脑模拟器上倒是没什么影响能很好实现效果,但是我的Iphone上看到的效果跟预想有出入。...图为电脑微信小程序模拟器的效果图,可以看到感觉良好。 图为在世界最好用的手机产品Iphone上的效果,可以看到和模拟器有出入,这个日期生成有问题。...图为笔者使用VConsole打出来的结果,可以看到为null,这个new Date()失败!!! 公布答案 既然事情已经发生,那我们就简单地分析下为什么?...解决方案 答案就是IOS系统不支持"YYYY-MM-dd"这种创建格式,你可以把它转成"YYYY/MM/dd"这种格式。 一步到位。...然后啦因为我这个是小项目,我个人不太想引入一些成熟的类库,比如说业界知名的dayJS、monentJS等,所以就自己实现了下,发现有这个问题,就记录分享下,希望你们看了我的文章不要踩坑了,然后测试的话IOS

47820

坏消息,new Date()方法IOS系统存在null情况

背景介绍笔者最近在开发小程序,发现在使用new Date()函数电脑模拟器上倒是没什么影响能很好实现效果,但是我的Iphone上看到的效果跟预想有出入。...图为电脑微信小程序模拟器的效果图,可以看到感觉良好。图片图为在世界最好用的手机产品Iphone上的效果,可以看到和模拟器有出入,这个日期生成有问题。...图片图为笔者使用VConsole打出来的结果,可以看到为null,这个new Date()失败!!!图片公布答案既然事情已经发生,那我们就简单地分析下为什么?...解决方案答案就是IOS系统不支持"YYYY-MM-dd"这种创建格式,你可以把它转成"YYYY/MM/dd"这种格式。一步到位。...然后啦因为我这个是小项目,我个人不太想引入一些成熟的类库,比如说业界知名的dayJS、monentJS等,所以就自己实现了下,发现有这个问题,就记录分享下,希望你们看了我的文章不要踩坑了,然后测试的话IOS

83630

安卓蓝牙键盘鼠标映射_蓝牙鼠标模拟器

》+《通过蓝牙将安卓手机模拟成游戏方向盘-支持旋转轮胎》三份源码打包下载 【2022.04.21】源码Android 12运行注意事项:由于Android 12对蓝牙权限做了调整,取消了位置信息,增加了扫描...经测试装了此APP的手机能与几乎所有安卓手机、WIN10笔记本电脑连接并操作,苹果设备需要IOS13及以上版本才能支持蓝牙鼠标/键盘。...通过它将我们的应用注册成具有HID特征的蓝牙设备,并传送HID设备的报告描述符。如果我们的报告描述符没有问题,那么我们的设备就会成功模拟想要的HID设备。...实现HID媒体播放的过程中发现,安卓对报告描述符的兼容性非常好,只要看上去正确的描述符运行起来基本没有问题,而win10就没有那么好的兼容性了,从理论上分析正确的描述符不一定能在win10下工作。...经过了不知多少次的尝试后终于能够编写出兼容win10的描述符。还有,既然能兼容安卓,那么智能电视的媒体控制自然是不在话下的。

5.5K20

使用像素流技术iOS手机卡死怎么办?

点量小芹接到部分用户反馈,使用UE4做的模型,使用像素流技术实现多终端支持时,微信和小程序中会出现不能全屏的问题,偶尔还会出现在iOS手机卡死的问题。找了很多方案,也没有解决这个问题。...其实在很早之前小芹和大家分享过,像素流技术不是一个完善的产品,是从理论上验证了可行性,如果真想用到实际的项目中,还需要做很多技术开发和学习,尤其是大并发的项目要求。...比如启动模型的时候,能够获取到观看者的手机屏幕分辨率,传回到模型,这样模型用相应的分辨率运行,就不会有黑边,实现全屏的效果。...其实除了这个问题,使用像素流的时候,还有客户遇到其他的比如并发无法做到很大,而且多块显卡的使用不能负载均衡,显卡增加一定数量后就不会在被启用。这些都是实际遇到的,而负载均衡大并发是很重要的。...如果在使用像素流技术的过程遇到疑问,欢迎交流。

79520

Android 低功耗蓝牙开发(数据交互)

打开通知 5. 写入数据 6. 收到数据 7. Phy读取和改变 8. 读取特性、描述符、RSSI 三、源码 前言   在上一篇低功耗蓝牙开发文章,我讲述了扫描和连接,本篇文章讲述数据的交互。...之前进行低功耗蓝牙连接的时候使用的是Gatt连接,不知道你是否还记得。...不过实际开发这样的做法并不可取,因为一个蓝牙项目里面不可能只有一个地方需要使用这个监听,那么此时就需要封装一个类去单独实现BluetoothGattCallback的方法,然后再根据需要取使用。...这个之前没有提到,因为它不在基础的回调API,但是打开通知开关属于描述符的内容,因此当你设置了之后会触发onDescriptorWriteh回调,还是先来看这个通知怎么打开吧。 4....Phy读取和改变   首先来看这个的读取,比如我们通知开启成功之后去读取这个设备的Phy 这个读取的方法要求你的Android版本必须要在8.0和8.0以上,因此如果你的Android设备是低版本的就不用考虑去使用这个

1.9K30

iOS CoreBluetooth 的使用讲解概念分析代码实战

最近研究了iOS下连接蓝牙打印机,实现打印购物小票的功能,对iOSBLE 4.0的使用有了一定的了解,这里记录一下对BLE 4.0的理解。...第五步,遍历服务的特性,获取特性的数据或者保存某些可写的特性,或者设置某些特性改变时,通知主动获取。...第六步,通知更新特性中值的方法读取特性的数据(再设置特性的通知为YES的情况下)。 第七步,读取特性。...但是我测试iOS 10.0.1测试,不加NSBluetoothPeripheralUsageDescription,工程仍然可以正常使用。...设置蓝牙功能目前还并未看到允许使用的应用列表,估计苹果只是未来规划的吧。 补充 鉴于经常有人问为啥工程里能搜到蓝牙打印机,但是却搜不到其他手机的蓝牙

1.7K30

【Android应用开发】Android 蓝牙低功耗 (BLE) ( 第一篇 . 概述 . 蓝牙低功耗文档 翻译)

特性 :  -- Characteristic 概念 : 一个 Characteristic 特性包含了一个 和 多个 Descriptor (描述符) 用于描述这个特性的.  -- 本质 : 一个特性可以被认为是一个类型..., 类似于一个类. (4) Descriptor 描述符 Descriptor 描述符 :  -- 作用 : 描述符 被定义为一些属性, 这些属性用于描述 Characteristic (特性) 的....  -- 示例 : 例如, 一个 描述符 可以说明一个 可读的描述, 一个 特性的可接受范围, 或者 一个特性的测量单元. (5) Service 服务 Service 服务 :  -- 服务本质...BLE 权限 (1) 蓝牙权限简介 Android 蓝牙权限简介 :  -- 权限作用 : 为了应用中使用蓝牙功能, 必须在 AndroidManifest.xml  声明蓝牙权限....接收 GATT 通知 GATT 通知简介 :  -- 特性改变通知 : 当 BLE 设备的一些特殊的特性改变, 需要通知与之连接的 Android BLE 应用. -- 代码示例 :

5.5K30

Android BLE 蓝牙开发,连接蓝牙设备进行通讯

特征 Characteristic: 特征包含一个和 0 至多个描述特征描述符。您可将特征理解为类型,后者与类类似。 描述符描述符是描述特征的已定义属性。...我们如果使用bluetoothAdapter.enable();时Android Studio出现代码错误警告,可以该代码使用的方法添加:@SuppressLint("MissingPermission...UUID,跟通知的特性的UUID比较。...注册消息监听,都是使用UUID是00002902-0000-1000-8000-00805f9b34fb进行的。这个是Android系统保留的。用于动态监听的。 你如果不想使用这个动态监听。...3.8 写数据到蓝牙设备 我们如果想将内容推送到蓝牙设备发现服务的时候onServicesDiscovered 遍历特性,确保是用于写消息的特性对象后。

2.5K20
领券