1. UI 书写
最基本创建一个label 标签 写一个first rate : 
    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(10, 50, 300, 50)];
    label.backgroundColor = [UIColor orangeColor];
    label.text = @"first rate";
    label.textColor = [UIColor blueColor];
    label.textAlignment = NSTextAlignmentCenter;
    [self.window addSubview:label];
 
 
遍历所有字体:
 
    NSArray *fontArray = [UIFont familyNames];
    for (int i=0; i<fontArray.count; ++i) {
        NSLog(@"font:%@", fontArray[i]);
    }
    label.font = [UIFont fontWithName:@"Menlo" size:30];
 
写一个带有阴影的字体:
 
    UILabel *secondLabel = [[UILabel alloc] initWithFrame:CGRectMake(10, 150, 300, 50)];
    secondLabel.backgroundColor = [UIColor yellowColor];
    secondLabel.text = @"second rate";
    secondLabel.shadowColor = [UIColor lightGrayColor];
    secondLabel.shadowOffset=CGSizeMake(5, 5);
 
 
写一个 adjustsFontSizeToFitWidth 方法的函数
 
    UILabel *thirdLabel = [[UILabel alloc] initWithFrame:CGRectMake(10, 250, 300, 100)];
    thirdLabel.backgroundColor = [UIColor greenColor];
    thirdLabel.text = @"alsdfjalksdfjlas;dfalsjksdfsdfsfdfsdff;lasdjfksaklfj";
    thirdLabel.adjustsFontSizeToFitWidth=YES;
    //adjustsFontSizeToFitWidth 会自动缩小字体而刚好在这个Label框框中,但不会主动换行
 
 
写一个文本再框框中可以主动换行的例子
 
    UILabel *forthLabel = [[UILabel alloc] initWithFrame:CGRectMake(10, 350, 300, 100)];
    forthLabel.textColor = [UIColor orangeColor];
    forthLabel.text = @"adjustsFontSizeToFitWidth 会自动缩小字体而刚好在这个Label框框中,但不会主动换行";
    forthLabel.font = [UIFont boldSystemFontOfSize:30];
    forthLabel.numberOfLines = 0; //主动换行
    forthLabel.backgroundColor = [UIColor blueColor];
    //在框框能允许的范围内可以主动换行,如果框框无法包容文本大小,则会用..省略
 
 
写一个文本框框自动按照字体的多少自动延伸的例子
 
    NSString *str = @"这个Label可以根据字体的多少无限延长,如同如意金箍棒!";
    UIFont *font = [UIFont boldSystemFontOfSize:30];
    CGSize size = [str sizeWithFont:font constrainedToSize:CGSizeMake(300, 480)];
    UILabel *autoLabel = [[UILabel alloc] initWithFrame:CGRectMake(10, 220, size.width, size.height)];
    autoLabel.text = str;
    autoLabel.numberOfLines = 0;
    autoLabel.textColor = [UIColor redColor];
    autoLabel.backgroundColor = [UIColor blueColor];
    autoLabel.font = font;
 
 
 
写一个小例子 打印出下面生成随机小框框 图片的框框
 
 
 
 
代码如下:
 
    for (int i = 0; i< 320; i+=40) {
        for (int j = 0; j<380; j+=40) {
            CGRect rect = CGRectMake(i, j, 40, 40);
            CGFloat red = rand()/(RAND_MAX*1.0);
            CGFloat green = rand()/(RAND_MAX*1.0);
            CGFloat blue = rand()/(RAND_MAX*1.0);
            CGFloat alpha = rand()/(RAND_MAX*1.0);
            UIColor *myColer = [UIColor colorWithRed:red green:green blue:blue alpha:1];
            UIView *view = [[UIView alloc] initWithFrame:rect];
            view.backgroundColor = myColer;
            [self.window addSubview:view];
        }
    }
 
 
第二个小例子,完成下面图片的代码:
 
 

小方框可以闪动UI代码:
 
 

@implementation AppDelegate
{
    NSTimer *time;

time = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(ontime) userInfo:nil repeats:YES];
-(void)ontime
{
    for (int i= 120; i< 400; i+=100) {
        CGRect rect = CGRectMake(0, 0, 40, 40);
        CGFloat red = arc4random()/(0xffffffff*1.0);
        CGFloat green = arc4random()/(0xffffffff*1.0);
        CGFloat blue = arc4random()/(0xffffffff*1.0);
        CGFloat alpha = arc4random()/(0xffffffff*1.0);
        UIColor *myColer = [UIColor colorWithRed:red green:green blue:blue alpha:1];
        UIView *view = [[UIView alloc] initWithFrame:rect];
        view.backgroundColor = myColer;
        view.center = CGPointMake(160, i);
        [self.window addSubview:view];
    }
    
    for (int i= 60; i< 320; i+=200) {
        CGRect rect = CGRectMake(0, 0, 40, 40);
        CGFloat red = arc4random()/(0xffffffff*1.0);
        CGFloat green = arc4random()/(0xffffffff*1.0);
        CGFloat blue = arc4random()/(0xffffffff*1.0);
        CGFloat alpha = arc4random()/(0xffffffff*1.0);
        UIColor *myColer = [UIColor colorWithRed:red green:green blue:blue alpha:1];
        UIView *view = [[UIView alloc] initWithFrame:rect];
        view.backgroundColor = myColer;
        view.center = CGPointMake(i, 220);
        [self.window addSubview:view];
    }
    
    for (int i= 90; i< 320; i+=140) {
        CGRect rect = CGRectMake(0, 0, 40, 40);
        CGFloat red = arc4random()/(0xffffffff*1.0);
        CGFloat green = arc4random()/(0xffffffff*1.0);
        CGFloat blue = arc4random()/(0xffffffff*1.0);
        CGFloat alpha = arc4random()/(0xffffffff*1.0);
        UIColor *myColer = [UIColor colorWithRed:red green:green blue:blue alpha:1];
        UIView *view = [[UIView alloc] initWithFrame:rect];
        view.backgroundColor = myColer;
        view.center = CGPointMake(i, 150);
        [self.window addSubview:view];
    }
    
    for (int i= 90; i< 320; i+=140) {
        CGRect rect = CGRectMake(0, 0, 40, 40);
        CGFloat red = arc4random()/(0xffffffff*1.0);
        CGFloat green = arc4random()/(0xffffffff*1.0);
        CGFloat blue = arc4random()/(0xffffffff*1.0);
        CGFloat alpha = arc4random()/(0xffffffff*1.0);
        UIColor *myColer = [UIColor colorWithRed:red green:green blue:blue alpha:1];
        UIView *view = [[UIView alloc] initWithFrame:rect];
        view.backgroundColor = myColer;
        view.center = CGPointMake(i, 290);
        [self.window addSubview:view];
    }
}
 
 
 
 
 
 
 
 
 
 

IOS UI 第一篇:基本UI的更多相关文章

  1. IOS设计模式第一篇之MVC

    设计模式的好处:我们可以写出容易理解,重用度很高的代码.降低代码的耦合度,符合软件工程的思想. 设计模式主要分为三类:创造型的:单例和抽象工厂.结构类型的: MVC  Decorator, Adapt ...

  2. Android开发UI之开源项目第一篇——个性化控件(View)篇

    原文:http://blog.csdn.net/java886o/article/details/24355907 本文为那些不错的Android开源项目第一篇——个性化控件(View)篇,主要介绍A ...

  3. iOS编程实战 — 新的UI范式

    iOS 7给苹果设备带来了全新的用户界面(UI).iOS 7在UI上的变化是自其诞生以来最大的.iOS 7专注于三个重要的特点:清晰.依从和层次.理解这三个特点很重要,因为这有助于设计跟原生的系统内置 ...

  4. iOS开发——高级技术精选&底层开发之越狱开发第一篇

    底层开发之越狱开发第一篇 做越狱开发也有一些时间了,有很多东西想总结一下,希望给他人一些借鉴,也是自己对过去开发经历的一些总结.个人不推荐使用盗版,这里主要以技术介绍为主. 这个系列里面主要介绍怎样进 ...

  5. Jerry的WebClient UI 42篇原创文章合集

    我要感谢CRM On Premise, 因为在这个产品上做开发让我得以使用WebClient UI框架.有些朋友觉得这个SAP自己发明的基于HTML+ABAP的MVC框架,和现在流行的三驾马车(Ang ...

  6. ios 第一篇文章-xcode6.2键盘调不出来

    ios 第一篇文章 不晓得有没有人遇到过ios代码内调用键盘(keyboard)调不出来的情况,反正我是遇到了,按官方文档的说法调用键盘事件非常easy事实上: 我用了之后,不晓得为嘛,键盘就是不显示 ...

  7. WPF 精修篇 非UI进程后台更新UI进程

    原文:WPF 精修篇 非UI进程后台更新UI进程 <Grid> <Grid.RowDefinitions> <RowDefinition Height="11* ...

  8. iOS系列 基础篇 03 探究应用生命周期

    iOS系列 基础篇 03 探究应用生命周期 目录: 1. 非运行状态 - 应用启动场景 2. 点击Home键 - 应用退出场景 3. 挂起重新运行场景 4. 内存清除 - 应用终止场景 5. 结尾 本 ...

  9. iOS开发多线程篇—NSOperation基本操作

    iOS开发多线程篇—NSOperation基本操作 一.并发数 (1)并发数:同时执⾏行的任务数.比如,同时开3个线程执行3个任务,并发数就是3 (2)最大并发数:同一时间最多只能执行的任务的个数. ...

随机推荐

  1. Android 最热的高速发展框架XUtils

    近期搜了一些框架供刚開始学习的人学习,比較了一下XUtils是眼下git上比較活跃 功能比較完好的一个框架,是基于afinal开发的,比afinal稳定性提高了不少.以下是介绍: 鉴于大家的热情,我又 ...

  2. iOS 8中CLLocationManager及MKMapView showUserLocation失败的解决的方法

    用XCode 6编译的原来XCode 5.1.1写的程序时,发现原来写的CLLocationManager定位的代码以及MKmapView的showUserLocation失效.查了一下,XCode ...

  3. PYTHON单元测试

    PYTHON开发入门与实战11-单元测试 1. 单元测试 本章节我们来讲讲django工程中如何实现单元测试,单元测试如何编写以及在可持续项目中单元测试的重要性. 下面是单元测试的定义: 单元测试是开 ...

  4. web富客户端应用下,前端架构、系列(二)。

    序 我们在上面的文章中已经建立起来一个比较简单的 前端架构 虽然这个看上去很简陋. 不过毕竟也是思想的结晶. 从这一篇文章开始,我将陆续完善这一个前端架构.. 重新构思 上一篇我们把前端架构分为3个模 ...

  5. oracle 监控执行的sql语句

    oracle 监控执行的sql语句 select * from v$sqlarea a where module='PL/SQL Developer' order by a.FIRST_LOAD_TI ...

  6. KMP算法之从next[]到nextVal[] (转)

    前些日子写了一篇KMP算法的博文,浅谈数据结构之KMP(串中的模式匹配算法),在这片文章中,谈到了一个模式串K值的记录数组 next[],详细可看那篇文章,其实,前面定义的next[]数组是有一定缺陷 ...

  7. C语言中符号格式说明

    scanf 语法: #include <stdio.h>int scanf( const char *format, ... ); scanf()函数根据由format(格式)指定的格式从 ...

  8. elasticsearch的rest搜索--- 查询

    目录: 一.针对这次装B 的解释 二.下载,安装插件elasticsearch-1.7.0   三.索引的mapping 四. 查询 五.对于相关度的大牛的文档 四. 查询 1. 查询的官网的文档   ...

  9. NEFUOJ 500 二分法+最大流量

    http://acm.nefu.edu.cn/JudgeOnline/problemshow.php?problem_id=500 description 在这个信息化的时代.网购成为了最流行的购物方 ...

  10. linux虚拟文件系统2

    转自:http://rstevens.iteye.com/blog/849413 一.概述 Linux 文件系统是相当复杂的,本文只分析虚拟文件系统的实现,对具体的文件系统不涉及. 即使是虚拟文件系统 ...