当你需要定义一个APP全局“宏”来调用 UserDefaults.standard里存储的值的时候, 一定要将这个“宏”定义为计算属性,否则你得到的值只会在APP启动的时候计算一次. 示例如下: var UserID:String{ get{ return UserDefaults.standard.string(forKey: "UserID") ?? "" } } 转载请注明出处:http://www.cnblogs.com/ficow/p/7196701.ht…
ios有没有全局宏,或者在工程属性里设置宏? 比如我设置了一个宏叫IOS, 在所有/整个工程的代码里这个宏都是有效的. ------解决方案-------------------- 在工程的设置属性里搜索preprocessor macros可以看到DEBUG的定义,再添加上自己的就好了 也可以在.pch文件里定义 ------解决方案-------------------- 可以放到.pch文件里…
Swift3.0 iOS获取当前时间 - 年月日时分秒星期func getTimes() -> [Int] { var timers: [Int] = [] // 返回的数组 let calendar: Calendar = Calendar(identifier: .gregorian) var comps: DateComponents = DateComponents() comps = calendar.dateComponents([.year,.month,.day, .weekda…
混编路径与全局宏路径 最近在做东西的时候有一个地方要用到一个第三方库的,但是目前swift版的还没有找到,自己又不想写(其实是不会写),所以就想到了混编,但是中间出现了好多问题,其中印象最深的就是桥接文件的路径问题,着让我想到了关于Xcode6之前的一个pch文件路径,虽然不一样,但是,我就是很傻逼的在这里搞了好久才搞通,所以就总结一些. 一:混编路径 关于混编,这里就不多说了.平时我们想要实现一个功能,但是在swift目前还没有找到好的方法,而正好objective-C却很容易实现的时候(或第…
1.  Qt 全局宏定义 Qt版本号: QT_VERSION :  (major << 16) + (minor << 8) + patch 检测版本号: QT_VERSION_CHECK(major, minor, patch)((major<<16)|(minor<<8)|(patch)) 当使用命名空间时的一些宏定义: namespace QT_NAMESPACE {} //命名空间定义 # define QT_PREPEND_NAMESPACE(na…
今天做一个异步查询功能的时候发现在IOS设备上查询中文时keyup没有触发,在其他设备上时可以的,后来在stackoverflow上找到下面这种解决方法,贴出来算是抛砖引玉了. $h_input.on('input paste', function() { /*省略*/ });…
iOS开发经常使用宏定义 iOS开发中经常须要获取屏幕宽度高度,为view设置颜色,为imgagView设置图片等,我们都可定义一些宏,随时都可拿来使用,方便开发 <span style="font-size:18px;">#ifndef FingerTips_Macro_Config_h #define FingerTips_Macro_Config_h //获取屏幕 宽度.高度 #define SCREEN_WIDTH ([UIScreen mainScreen].bo…
当安装Composer或者全局配置时出现.dll扩展文件找不到指定模板,如下图: 解决办法: 打开php.ini,将extension_dir 改为绝对路径即可 例如:…
/************************************************************************************ * SW4STM32 全局宏定义 * 说明: * 在解读B-L475E-IOT01程序的时候找不到USE_WIFI的宏定义,于是想应该是在哪里进行了宏 * 定义,最终通过grep匹配出gcc编译的时候带了宏定义的参数-DUSER_WIFI. * * 2017-12-28 深圳 宝安西乡 曾剑锋 ****************…
iOS运用runtime全局修改UILabel的默认字体 一.需求背景介绍 在项目比较成熟的基础上,遇到了这样一个需求,应用中需要引入新的字体,需要更换所有Label的默认字体,但是同时,对于一些特殊设置了字体的label又不需要更换.乍看起来,这个问题确实十分棘手,首先项目比较大,一个一个设置所有使用到的label的font工作量是巨大的,并且在许多动态展示的界面中,可能会漏掉一些label,产生bug.其次,项目中的label来源并不唯一,有用代码创建的,有xib和storyBoard中的,…
iOS开发UITableViewCell的选中时的颜色设置   1.系统默认的颜色设置 //无色 cell.selectionStyle = UITableViewCellSelectionStyleNone; //蓝色 cell.selectionStyle = UITableViewCellSelectionStyleBlue; //灰色 cell.selectionStyle = UITableViewCellSelectionStyleGray; 2.自定义颜色和背景设置 改变UITab…
在定义全局颜色宏的时候,为了整齐把空格删了,写在了同一行里,调用的时候,出错提示“Expected identifier”,如下: 如果宏定义如上那样的话,在调用的时候,会出现如下的问题: 百思不得解,而正确的定义颜色宏的格式如下: 代码如下: #define UIColorFromHEXWithAlpha(rgbValue,a) [UIColor \ colorWithRed:((float)((rgbValue & 0xFF0000) >> 16))/255.0 \ green:(…
iOS :漫谈#define 宏定义 #define宏定义在C系开发中可以说占有举足轻重的作用.底层框架自不必说,为了编译优化和方便,以及跨平台能力,宏被大量使用,可以说底层开发离开define将寸步难行.而在更高层级进行开发时,我们会将更多的重心放在业务逻辑上,似乎对宏的使用和依赖并不多.但是使用宏定义的好处是不言自明的,在节省工作量的同时,代码可读性大大增加. 如果想成为一个能写出漂亮优雅代码的开发者,宏定义绝对是必不可少的技能(虽然宏本身可能并不漂亮优雅XD).但是因为宏定义对于很多人来说…
Responding to the Launch of Your App Initialize your app’s data structures, prepare your app to run, and respond to any launch-time requests from the system. 初始化应用程序的数据结构.准备运行应用程序.响应系统启动时的一些请求. Overview The system launches your app when the user taps…
问题描述 im聊天H5页面,在iOS系统下,inpu获取焦点弹出系统虚拟键盘时,会出现挡住input的情况,十分影响用户体验. bug图 解决方法: html: <input type="text" v-model="msg" maxlength="500" ref="inputShow" @click="inputShow" /> js: setTimeout(()=>{ this.$r…
最近在公司,让做ios的自动化测试,因为以前做过android的自动化测试,用的也是appium,觉得没什么,结果一开始在搭建环境就遇到了很多的问题,现在将我遇到的问题,以及解决方法,给大家分享出来.(ps:吐槽一下testhome,发了两个帖子一个提问帖一个心得分享帖,全都给拉到违规区了,问题也没有人给看) 进入正题,说一下我的环境: xcode 7.1.1 simulator 9.1 appium 1.4.13 iphone 5s  ios9.1 首先说一下,appium 在ios版本选择这…
今天引入webtrends 这个库,结果一直运行时找不到函数,纳闷了一下午! 后来发现,是other flag没有设置对,对于那些包含category用来扩展ios原始类型的库,链接的时候需要特别的链接选项: 我先参看了如下的链接,感谢原作者! http://blog.csdn.net/xiaowenwen1010/article/details/40782971 读完原文后,我再总结一下: 当引入的第三方库使用category的方法扩展了ios的基本类时,如果想使用这个库的category中的…
最近参加三次面试都有被问到runtime,因为不太懂runtime我就只能支支吾吾的说点零碎.我真的好几次努力想看一看runtime的知识,因为知道理解它对理解OC代码内部变化有一定帮助,不过真心觉得对开发没啥意义和用处,又是纯C的代码,现在开源项目那么多,基本都能参考别人的代码达到自己的目的.不过为了面试,今天硬着头皮稍微学了点,才算明白一点runtime的强大之处,现在大致知道它可以用来归档解档,以及字典转模型等.勉强写写今天的一点收获总结吧,依然很零碎,看官请自便.我发现这篇文章不错,看了…
这篇教程的主要目的是解释怎么样在你的iOS工程中创建并使用一个SDK,俗称.a文件. 环境:xcode 9.0 创建一个静态库工程 打开Xcode,点击File\New\Project, 选择iOS\Framework and Library\Cocoa Touch Static Library新建一个静态库工程. 将工程命名为SDKTest,然后将工程保存到一个空目录下. 当创建静态库工程时,Xcode会自动添加.h和.m. 你不需要实现文件,因此右键单击SDKTest.m选择delete,将…
遇到一个需求,需要根据不同需要编译所需程序,本人采用了在QtCreator中建立不同的构建设置,配合宏的方式来实现: 1.在项目-构建设置中,添加构建配置2.在构建步骤里的qmake中的额外参数一栏填入:"DEFINES += XXXX",也就是对应的宏变量3.按照上述方法再次添加别的构建配置与宏变量.4.之后便可以在项目使用#ifdef XXXX #endif的方式来判断. 下面是从一些别的blog中的资料: 变量用法: 1.自定义变量: MY_VARIABLE = value 定义…
在安卓手机中没有任何问题,但在ios手机中出现当输入法中输入内容时,事件keyup没有效果 解决办法: //keyup的兼容性处理 var bind_name = 'input'; if (navigator.userAgent.indexOf("MSIE") != -1) { bind_name = 'propertychange'; }//(此处是为了兼容IE) if(navigator.userAgent.match(/android/i) == "android&qu…
前言: 1)输出日志是会大量损耗系统性能 2)输出的信息很容易会被截取到,导致信息不安全. 所以我们会在发行版(Release)取消所有的Log.如果一行一行地去注释掉Log,显然不是一个明确的选择. 因此我们可以使用宏去自定义Log输出. 最简单的一个例子 #ifdef DEBUG #define GCLog(fmt, ...) NSLog((fmt), ##__VA_ARGS__); #else #define GCLog(...); 输出当前方法名 #define GCMethod(...…
qt中如何实现定义一个宏,在整个工程中都可以实现呢?下面我来写一个亲测的例子: pro中添加如下宏定义代码: DEFINES += HELLO=\"$$PWD/\" DEFINES += SUCCESS=\"string\" 在.cpp中测试代码如下: #ifdef HELLO qDebug()<<"HELLO="<<HELLO; #else qDebug()<<"bye"; #endif…
       #define宏定义在C系开发中可以说占有举足轻重的作用.底层框架自不必说,为了编译优化和方便,以及跨平台能力,宏被大量使用,可以说底层开发离开define将寸步难行.而在更高层级进行开发时,我们会将更多的重心放在业务逻辑上,似乎对宏的使用和依赖并不多.但是使用宏定义的好处是不言自明的,在节省工作量的同时,代码可读性大大增加.       如果想成为一个能写出漂亮优雅代码的开发者,宏定义绝对是必不可少的技能(虽然宏本身可能并不漂亮优雅XD).但是因为宏定义对于很多人来说,并不像业务…
iOS开发过程中使用一些常用的宏可以提高开发效率,提高代码的重用性:将这些宏放到一个头文件里然后再放到工程中的-Prefix.pch文件中(或者直接放到-Prefix.pch中)直接可以使用,灰常方便. 做了一些分类和注释,可以根据自己习惯再添加或者删除或者修改这些宏进行使用. #ifndef MacroDefinition_h #define MacroDefinition_h //AppDelegate #define APPDELEGATE [(AppDelegate*)[UIApplic…
在利用JavaScriptCore与H5交互时出现异常提示: This application is modifying the autolayout engine from a background thread, which can lead to engine corruption and weird crashes.  This will cause an exception in a future release. 从字面意思看,是因为在后台线程修改了UI,于是乎开始验证 _weak…
在进行IOS开发的过程中,出现类似微信朋友圈的交互界面,当用户遇到感兴趣的内容可以进行评论.为了方便评论输入,当出现评论输入框的时候自动将评论输入框移动至键盘的上方,这样方便边输入边查看. 当用户隐藏键盘或者切换输入法的时候需要对输入框位置进行变化,这里需要设定键盘监听方法. 效果如下图: 具体实现方法可以参考Xamarin提供的示例,源代码示例见: https://github.com/xamarin/monotouch-samples/blob/master/BubbleCell/Bubbl…
以label为例: //设置文字过长时的显示格式 aLabel.lineBreakMode = UILineBreakModeMiddleTruncation; //截去中间 aLabel.lineBreakMode = UILineBreakModeTailTruncation; //截去尾部 aLabel.lineBreakMode = UILineBreakModeHeadTruncation; //截去头部 aLabel.lineBreakMode = UILineBreakModeCh…
我们在做倒计时的时候,发现当你手指按着屏幕不放,拖动tableView滑动的时候,写在cell上得倒计时停止倒计时,松开继续倒计时.研究发现就是拖动tableView滑动时,NSTimer停止了. 这其实就是runloop的mode在做怪.runloop可以理解为cocoa下的一种消息循环机制,用来处理各种消息事件,我们在开发 的时候并不需要手动去创建一个runloop,因为框架为我们创建了一个默认的runloop,通过[NSRunloop currentRunloop]我们可以得到一个当前线程…
一直使用Minimize来找到指定约束下的函数的最小值,最近发现在一个非线性函数中使用Minimize无法提供一个"全局"最小值(使用Mathematica只是用来验证算法的,所以无论用什么方法,只希望能找到全局最小值,而不管其效率).最终在帮助文档中发现如下说明: 另外找到NMinimize函数,发现其有更仔细的说明: 根据说明,如果函数f是非线性的,很可能获得一个局部最小值,但是该方法有选项可以设置: 在这里将Method设置为一个其他值可能会得到全局最优解. 在此记录.…