1、显示设置

  • 1.1 view圆角和边框

/** 设置view圆角和边框 */
#define kViewBorderRadius(View, Radius, Width, Color)\
\
[View.layer setCornerRadius:(Radius)];\
[View.layer setMasksToBounds:YES];\
[View.layer setBorderWidth:(Width)];\
[View.layer setBorderColor:[Color CGColor]]
  • 1.2 设置加载提示框

    • 1.2.1 第三方框架:Toast
    /** 第三方框架:Toast */
    #define kToast(str) CSToastStyle *style = [[CSToastStyle alloc] initWithDefaultStyle]; \
    [kWindow makeToast:str duration:0.6 position:CSToastPositionCenter style:style];\
    kWindow.userInteractionEnabled = NO; \
    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.6 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{\
    kWindow.userInteractionEnabled = YES;\
    });\
    • 1.2.2 第三方框架:MBProgressHUD
    // 加载
    #define kShowNetworkActivityIndicator() [UIApplication sharedApplication].networkActivityIndicatorVisible = YES
    // 收起加载
    #define HideNetworkActivityIndicator() [UIApplication sharedApplication].networkActivityIndicatorVisible = NO
    // 设置加载
    #define NetworkActivityIndicatorVisible(x) [UIApplication sharedApplication].networkActivityIndicatorVisible = x #define kWindow [UIApplication sharedApplication].keyWindow #define kBackView for (UIView *item in kWindow.subviews) { \
    if(item.tag == 10000) \
    { \
    [item removeFromSuperview]; \
    UIView * aView = [[UIView alloc] init]; \
    aView.frame = [UIScreen mainScreen].bounds; \
    aView.tag = 10000; \
    aView.backgroundColor = [[UIColor blackColor] colorWithAlphaComponent:0.3]; \
    [kWindow addSubview:aView]; \
    } \
    } \ #define kShowHUDAndActivity kBackView;[MBProgressHUD showHUDAddedTo:kWindow animated:YES];kShowNetworkActivityIndicator() #define kHiddenHUD [MBProgressHUD hideAllHUDsForView:kWindow animated:YES] #define kRemoveBackView for (UIView *item in kWindow.subviews) { \
    if(item.tag == 10000) \
    { \
    [UIView animateWithDuration:0.4 animations:^{ \
    item.alpha = 0.0; \
    } completion:^(BOOL finished) { \
    [item removeFromSuperview]; \
    }]; \
    } \
    } \ #define kHiddenHUDAndAvtivity kRemoveBackView;kHiddenHUD;HideNetworkActivityIndicator()

2、事件设置

/** 设置View的tag属性 */
#define VIEWWITHTAG(_OBJECT, _TAG) [_OBJECT viewWithTag : _TAG]

3、角度转换处理

/** 由角度获取弧度 有弧度获取角度 */
#define degreesToRadian(x) (M_PI * (x) / 180.0)
#define radianToDegrees(radian) (radian*180.0)/(M_PI)

UI控件相关宏定义的更多相关文章

  1. IOS学习资源收集--开发UI控件相关

    收集的一些本人了解过的iOS开发UI控件相关的代码资源(本文持续补充更新) 内容大纲: 1.本人在github上也上传了我分装好的一些可重复利用的UI控件 2.计时相关的自定义UILabel控件 正文 ...

  2. grootJS ui控件定义

    index13.html <html><head> <title>ui控件定义</title> <script src="jquery- ...

  3. Quartz2D-二维画图引擎 、自己定义UI控件

    // // MyDraw.m // 绘图 #import "MyDraw.h" @implementation MyDraw //Quartz2D 是一个二维绘图引擎 //自己定义 ...

  4. 《深入理解Windows Phone 8.1 UI控件编程》基于最新的Runtime框架

    <深入理解Windows Phone 8.1 UI控件编程>本书基于最新的Windows Phone 8.1 Runtime SDK编写,全面深入地论述了最酷的UI编程技术:实现复杂炫酷的 ...

  5. [BS-01] 根据字符串对象的参数自动计算用来显示该字符串的UI控件的宽和高

    根据字符串对象的参数自动计算用来显示该字符串的UI控件的宽和高 1.  影响昵称Label的高和宽的因素: 字体和字号大小.文字多少.高度取决于是否固定了宽度(是否限制了最大的宽度和高度) 2. 使用 ...

  6. Android4.0 -- UI控件之 Menu 菜单的的使用(三)

    上一讲 [Android 开发]:UI控件之 Menu 菜单的的使用(二) 我们讲解了创建上下文菜单的第一种使用方式:Creating a floating context menu [创建悬浮的上下 ...

  7. C#学习之在辅助线程中修改UI控件----invoke方法

    Invoke and BeginInvoke 转载地址:http://www.cnblogs.com/worldreason/archive/2008/06/09/1216127.html 在Invo ...

  8. 面试题汇总--数据储存/应用程序/UI控件/客户端的安全性与框架处理。。。

    一 数据储存  1.如果后期需要增加数据库中的字段怎么实现,如果不使用 CoreData 呢?编写 SQL 语句来操作原来表中的字段1)增加表字段ALTER TABLE 表名 ADD COLUMN 字 ...

  9. 【IOS 开发】基本 UI 控件详解 (UIDatePicker | UIPickerView | UIStepper | UIWebView | UIToolBar )

    转载注明出处 : http://blog.csdn.net/shulianghan/article/details/50348982 一. 日期选择器 (UIDatePicker) UIDatePic ...

随机推荐

  1. RazorHelper.cs

    完整版 RazorHelper.cs using System; using System.Collections; using System.Collections.Generic; using S ...

  2. UE4异步载入资源

    转自:http://blog.ch-wind.com/ue4%E5%BC%82%E6%AD%A5%E8%BD%BD%E5%85%A5%E8%B5%84%E6%BA%90/ 所有的“硬”指针指向的资源都 ...

  3. Unreal Engine 4的常见Tips

    转自:http://www.unrealchina.net/portal.php?mod=view&aid=66 退出游戏: UKismetSystemLibrary::QuitGame(th ...

  4. ARRINC424—MORA(GRID)格式

    每一整数经.纬度为一格,每格MORA值3位数字,表示百英尺.无法获知MORA值得网格一UNK表示. 经纬网格起始点坐标,每个网格从左下角开始计数,每经纬度一度切分一个网格.每行数据代表某一维度上往东或 ...

  5. js和jQuery判断数组是否包含指定元素

    最近遇见一些前台基础性问题,在这里笔者觉得有必要记录一下,为了以后自己查阅或者读者查看. 已知var arr = ['java','js','php','C++']; 问题:arr数组是否包含‘jav ...

  6. struts-hibernate整合(1)配置环境

    ①加载jar包 创建类库: 在myeclipse中点击windows---Preference---Java---Build Path---User Libraries---new 输入创建类库名字s ...

  7. getParameter的用法及含义

    equest.getparameter用来获取页面输入框输入的数据例如:jsp页面学员账户:<input type="text" name="username&qu ...

  8. Jsonp实现跨域请求Ajax

    客户端 #!/usr/bin/env python import tornado.ioloop import tornado.web class MainHandler(tornado.web.Req ...

  9. VS2013 ERROR SCRIPT5009: “WebForm_AutoFocus”未定义

    提示错误: <script type="text/javascript">//<![CDATA[WebForm_AutoFocus('txtcUserID');/ ...

  10. win10获取超级管理员权限脚本实现

    建立一个TXT文件,把下面的脚本贴到里面,然后把后缀改成reg格式,双击添加到注册表就可以了, win10_1703版本亲测可用.... Windows Registry Editor Version ...