iOS View的一些操作定义为宏】的更多相关文章

#define ViewOf(__View__,__TAG__) [__View__ viewWithTag:__TAG__]#define LabelOf(__View__,__TAG__) ((UILabel*)[__View__ viewWithTag:__TAG__])#define ImageOf(__View__,__TAG__) ((UIImageView*)[__View__ viewWithTag:__TAG__])#define ButtonOf(__View__,__TAG…
iOS中忽略NSLog打印信息 解决办法: 1.新建PrefixHeader_pch文件,在该文件中定义一下宏 //通过DEBUG宏的定义来解决Debug状态下和Release状态下的输出 #ifdef DEBUG #define NSLog(...) NSLog(__VA_ARGS__) #else #define NSLog(...) #endif /* PrefixHeader_pch */ 2.找到程序Build Settings 搜索 Prefix Header,然后在Prefix H…
我们所示程序 对于一切IOS APP来说.我们看的的内容,都是UIView所呈现的. UIView如场景,UIWindow如舞台.UIView粉墨登场在UIWindow这个舞台上,使我们看到丰富多彩的界面UI. UIWindow本身没有不论什么内容,它仅仅提供了一个场所来让这些UIView来显示.切换. 通常.一个APP仅有一个UIWindow作为显示的场所.当我们要进行多屏显示时.才会使用到多个UIWindow. UIView的基本结构 1.UIView附着于UIWindow上.仅仅有放在UI…
iOS --SQL的增加.删除.查找.修改 iOS对于数据库的操作:增加.删除.查找.修改 首先需要创建一个数据库:本程序的数据库是在火狐浏览器里的插件里写的微量型数据库 火狐找查找SQLite Manager的步骤: 第一步:在工具栏找到附加组件,点击进入 第二步:搜索 SQP,找到并下载,安装完成之后需要重启浏览器 第三步:在工具只乐观找到SQLite Manager,点击打开 SQLite Manager界面如图所示 注:SQLite Manager是微量型的数据库编程软件,所以一次只能执…
1.宏的功能介绍 在 C 语言中,可以采用命令 #define 来定义宏.该命令允许把一个名称指定成任何所需的文本,例如一个常量值或者一条语句.在定义了宏之后,无论宏名称出现在源代码的何处,预处理器都会把它用定义时指定的文本替换掉. 关于宏的一个常见应用就是,用它定义数值常量的名称: #define ARRAY_SIZE 100 double data[ARRAY_SIZE]; 这两行代码为值 100 定义了一个宏名称 ARRAY_SIZE,并且在数组 data 的定义中使用了该宏.惯例将宏名称…
iOS View 模糊效果(毛玻璃)   相关资料 http://stackoverflow.com/questions/18404907/using-gpuimage-to-recreate-ios-7-glass-effect http://stackoverflow.com/questions/17036655/ios-7-style-blur-view/17048668#17048668 我没有用GPUImge  使用了  FXBlurView which works great on…
如下的资料是关于ios View 向上拉界面的代码. #pragma mark - 上升效果- (void)ToUpSide {          } - (void)moveToUpSide {                         rView.frame = CGRectMake(self.window.frame.origin.x,                                                  -self.window.frame.size.h…
iOS 检查app版本更新操作 1:获取本地安装的版本信息: [NSString stringWithFormat:@"Version %@ (%@)", [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"], kRevisionNumber] 2:根据appStore上的 appid查询 appStore上的版本信息: 调用接口:http://itunes.apple.co…
请定义一个宏,比较两个数的a.b的大小,不能使用大于.小于.if语句 方法一:    #define max(a,b) ((((long)((a)-(b)))&0x80000000)?(b):(a))  若a>b,则a-b的二进制最高位为0,与上任何数还是0,所以大数为a: 否则,a-b为负数,最高位为1,与上0x80000000(最高位为1其他为0)之后为1,所以此时最大数为b. 方法二:     #define max(a,b) ((((a)-(b))&(1<<31)…
在定义全局颜色宏的时候,为了整齐把空格删了,写在了同一行里,调用的时候,出错提示“Expected identifier”,如下: 如果宏定义如上那样的话,在调用的时候,会出现如下的问题: 百思不得解,而正确的定义颜色宏的格式如下: 代码如下: #define UIColorFromHEXWithAlpha(rgbValue,a) [UIColor \ colorWithRed:((float)((rgbValue & 0xFF0000) >> 16))/255.0 \ green:(…
系统方式: //1.设置导航栏背景图片 [self.navigationController.navigationBar setBackgroundImage:[[UIImage alloc] init] forBarMetrics:UIBarMetricsDefault]; self.navigationController.navigationBar.shadowImage = [[UIImage alloc]init]; [[self navigationController] setNa…
问题警告:“M_PI_2”: 重复定义的宏 分析:在Visual Studio上使用math.h库时与其他库数学库冲突,我们可以通过添加宏定义“_USE_MATH_DEFINES”来消除math.h定义的宏. #if defined _USE_MATH_DEFINES && !defined _MATH_DEFINES_DEFINED #define _MATH_DEFINES_DEFINED // Definitions of useful mathematical constants…
将iOS开发中经常使用的宏定义整理例如以下,仅包括Objective-C. 而对于Swift,不能使用宏,则能够定义全局函数或者extension.请參考博客iOS - 总结Swift中经常使用的全局函数和extension(持续更新中). // // Macro.h // // Objective-C useful macro for Chris Hu // // App #define APP_VERSION [[[NSBundle mainBundle] infoDictionary] o…
/** Synthsize a weak or strong reference. Example: @weakify(self) [self doSomething^{ @strongify(self) if (!self) return; ... }]; */ #ifndef weakify #if DEBUG #if __has_feature(objc_arc) #define weakify(object) autoreleasepool{} __weak __typeof__(obj…
6.3  View之间的切换 在上面的练习中我们通过移动组件的位置和调整组件的大小来处理横向与纵向的界面布局.但是在界面中有很多组件的时候,对每个组件都进行这样的操作确实是一个麻烦的事情.下面我们看看处理屏幕旋转的第二种方法,在ViewController开始旋转之前进行view的切换. 实战:屏幕旋转时进行view的切换 打开Xcode,创建一个新的Xcode项目,选择View-based 应用程序模板,项目名称为AutoRotationSwap. 修改AutoRotationSwapView…
@import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css); View Controller用于管理app的各种资源,有时虽然View Controller被实例化,但仍不会在屏幕中显示.比如Navigation中的view controller,只有栈顶的元素才能显示.正因为如此,所以View Controller实现了复杂行…
---恢复内容开始--- 在IOS开发中,有一些方法常常需要用的,但是有很长的方法名,这造成了代码长,写起来累,我们可以通过宏定义了解决这些问题 比如说在代码布局的时候会遇上这样的问题,我们要获取上面一个的Y轴坐标, 有两种方法 通过坐标加上高度来计算 xx.frame.origin.y+xx.frame.size.height 还有一个略微简便的方法 CGRectGetMaxY(xx.frame) 都挺麻烦的,这时候就需要祭出宏定义来帮忙 #define MaxY(v) CGRectGetMa…
#ifndef MacroDefinition_h #define MacroDefinition_h //-------------------获取设备大小------------------------- //NavBar高度 #define NavigationBar_HEIGHT 44 //获取屏幕 宽度.高度 #define SCREEN_WIDTH ([UIScreen mainScreen].bounds.size.width) #define SCREEN_HEIGHT ([UI…
来源:About Text Handling in iOS 官方文档 iOS平台为我们提供了许多在app中展示文本和让用户编辑文本的方式.同时,它也允许你在app视图中展示格式化的文本和网页内容.你可以使用已有框架中的对象,比如text views,text fields ,web views等文本布局框架直接绘制,布局或者管理文本. 通过UIKit框架中的类,你可以管理编辑菜单(包括增加自定义项目item),实现自定义输入键盘以及在app内部或者app与app之间复制.剪切.粘贴数据. 注意:…
前言: 在ios开发中经常遇到两个词Frame和bounds,本文主要阐述Frame和bound的区别,尤其是bound很绕,较难理解. 一.首先,看一下公认的资料: 先看到下面的代码你肯定就明白了一些: -(CGRect)frame{ return CGRectMake(self.frame.origin.x,self.frame.origin.y,self.frame.size.width,self.frame.size.height); } -(CGRect)bounds{ ,,self.…
有没有这样的要求,,自定义panel,里面放几个控件,在多个页面中使用此panel. 有三个观点来解决这个问题: 1.自己继承UIView写一个类,在它是在代码的形式加入需要控制.完成布局. 2.使用XIB 3.使用storyboard完毕布局 在这三中方式中,1显得高端大气上档次.哗啦哗啦敲半天.尽管我是技术控.可是也非常反感这纯粹的情怀. 3以UIViewController满足不了我的须要,用起来不太方便.(也可能非常好用.我不会用.求指点) 所以就解说一下XIB怎样自己组合实现控件,并且…
一.ViewController的职责 对内管理与之关联的View,对外跟其他ViewController通信和协调.对于与之关联的View,ViewController总是在需要的时候才加载视图,并在不需要的时候卸载视图,所以也同时担当了管理应用资源的责任 二.ViewController的生命周期 View是指Controller的View.它作为Controler的属性,生命周期在Controller的生命周期内.就是说你的Controller不能在view释放前就释放了. viewCon…
WeTest 导读 本文主要是介绍下iOS 11系统及iOS 11之前的系统在实现左滑操作功能上的区别,及如何自定义左滑的标题颜色.字体大小. 一.左滑操作功能实现 1.如果左滑的时候只有一个操作按钮,可以使用如下三个delegate方法来实现: 2.如果左滑有一个或多个操作按钮,iOS8-10 可使用如下两个delegate 3.iOS 11之后,tableView的delegate增加了两个方法,用来取代editActionsForRowAtIndexPath方法,如下: 在2和3中,如果是…
iOS中默认的进度条是水平方向的进度条,这往往不能满足我们的需求. 可是我们能够自己定义类似的圆形的进度提示控件,主要使用iOS中的画图机制来实现. 这里我们要实现一个通过button点击然后圆形进度提示不断添加的效果. (1)新建一个Cocoa Touch Class,注意要继承自UIView. 这个是绘制图形的类.绘制一个圆形的背景和扇形的进度.详细实现例如以下: import UIKit class ProgressControl: UIView { override init(frame…
Android绘图操作,通过继承View实现,在onDraw函数中实现绘图. 下面是一个简单的例子: public class AndroidTest extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); MyView mv…
本次在做项目的时候使用了下面的一些宏定义 以及 建立宏定义的一些规则.虽然只用了其中的一点点,但是还是极大的提高了开发效率.. 将这些宏放到一个头文件里然后再放到工程中,在需要使用这些宏定义的地方体检.h就可以直接使用了,非常方便(类似于以前的pch). 下面上代码: // // MacroDefine.h // MacroDemo // // Created by WayneLiu on 15/11/12. // Copyright (c) 2015年 WayneLiu. All rights…
[UIApplication sharedApplication].networkActivityIndicatorVisible = YES; //显示 [UIApplication sharedApplication].networkActivityIndicatorVisible = NO; //隐藏 让状态栏显示网络等待标志 状态栏是可以通过UIApplication类提供的一些方法来修改的,比如完全去掉状态栏或者修改风格,不过这些改变只是在你的程序内部,当你退出你的程序又会复原. UI…
前面画基本图形时,画四边形是由几条直线拼接成的,现在有更简便的方法. 一.关于矩阵操作 1.画一个四边形 通过设置两个端点(长和宽)来完成一个四边形的绘制. 代码: - (void)drawRect:(CGRect)rect { //画四边形 //获取图形上下文 CGContextRef ctx=UIGraphicsGetCurrentContext(); //绘图 CGContextAddRect(ctx, CGRectMake(, , , )); //渲染 CGContextStrokePa…
这里我们要实现的将是选择按钮的自定义 综合上一节的随笔,这里给出效果图. ViewController.m // // ViewController.m // CX-MenuController // // Created by ma c on 16/4/7. // Copyright © 2016年 xubaoaichiyu. All rights reserved. // #import "ViewController.h" #import "CXLabel.h"…
一般而言,处理文件时都要经历以下四个步骤: 1.创建文件 2.打开文件,以便在后面的I/O操作中引用该文件 3.对打开的文件执行I/O操作(读取.写入.更新) 4.关闭文件 iOS中,对文件常见的处理方式详解(通过该文章,我们可以了解在iOS中,常用的文件处理方法) iOS开发之沙盒和文件操作(iOS的沙盒机制,应用只能访问自己应用目录下的文件) 在APP中,因为文件的I/O操作和网络操作一般来说需要耗费很长时间,如果放在主线程中进行,容易阻塞主线程(卡顿.点击不起作用等) iOS性能优化系列三…