UI开发----UIView和UILable

//  Created By 郭仔  2015年04月10日17:48:32

今天还要买两张票,周天回家周天在回来!不管什么事,请记住:  有我在!!!

祝:天佑郭家!!!

==========================================================================

Window窗口:

window是窗?口,每个app都需要借助window将内容展现给?用户看。

在iOS中,使?用UIWindow类来表?示窗?口,通常?一个应?用程序只创建 ?一个UIWindow对象。

window的主要作?用是呈现内容给?用户,我们不会对window做太多操 作。

创建Window:

self.window = [[UIWindow alloc] initWithFrame:
[[UIScreen mainScreen] bounds]];

导入屏幕:

self.window.backgroundColor = [UIColor yellowColor];
[self.window makeKeyAndVisible];

UIView:

创建视图的步骤如下:

? 1、开辟空间并初始化视图(初始化时,给出视图位置和?大?小)? 2、对视图做?一些设置(?比如:背景颜?色)? 3、将视图添加到window上进?行显?示?

4、释放视图对象

UIView *blueView = [[UIView alloc]
initWithFrame:CGRectMake(100, 100, 120, 100)];
blueView.backgroundColor = [UIColor blueColor];
[self.window addSubview:blueView];
[blueView release];

坐标系不是以像素作为划分依据,?而是以“点”作为依据。

Frame:

frame是view的重要属性,是我们做视图布局的关键,它决定了视图 的?大?小和位置。

frame是?一个结构体,包含2部分内容:origin和size。 origin也是?一个结构体,包含2部分内容:x和y。 size同样是?一个结构体,包含2部分内容:width和height。 frame的origin和size是相对于?父视图来说的。 CGRectMake()函数可以帮我们快速构造?一个CGRect变量。

Center:

center(中⼼心点)也是view重要的属性。

center是个结构体,包含2个部分:x和y。

center与frame有着密切的联系。

Bounds:

bounds(边界)也是view的重要属性,?用于定义?自?己的边界。它同

frame?一样是?一个CGRect结构体变量。

当?子视图添加到此视图时,会根据bounds指定的原点(0,0)计算 frame,?而?非左上?角。

===============================

一些视图方法:

  UIView * aView = [[UIView alloc] initWithFrame:CGRectMake(10, 20, 100, 100)];
//    aView.backgroundColor = [UIColor greenColor];
//    [self.window addSubview:aView];
//
//    UIView * bView = [[UIView alloc] initWithFrame:CGRectMake(30, 40, 100, 100)];
//    bView.backgroundColor = [UIColor redColor];
//    [self.window addSubview:bView];
//
//
//      UIView * cView = [[UIView alloc]initWithFrame:CGRectMake(20, 30, 100, 100)];
//    cView.backgroundColor = [UIColor orangeColor];
//    // 插入视图view
////    [self.window insertSubview:cView atIndex:1];
//  //  [self.window insertSubview:cView aboveSubview:aView];
//    [self.window insertSubview:cView belowSubview:bView];
//
//    [self.window bringSubviewToFront:aView];
//    [self.window sendSubviewToBack:aView];
//    //交换位置时坐标都没变
//    [self.window exchangeSubviewAtIndex:0 withSubviewAtIndex:2];
    // 移除子视图
//    [aView removeFromSuperview];
//    // 移除所有视图
//    for (UIView * view in self.window.subviews) {
//        [view removeFromSuperview];
//    }
//
//    aView.hidden = YES;
//    aView.hidden = NO;
//    // 设置透明度范围0-1,0代表透明
//    bView.alpha = 0.7;
//    // 获取子视图的父视图
//  //  UIView *superView = [aView superview];
//    // 获取本视图的所有子视图
//   // NSArray * views = [self.window subviews];
//    // 给视图添加标记
//    aView.tag = 100;
//    UIView * v = [self.window viewWithTag:100];
//    v.backgroundColor = [UIColor purpleColor];
//
//    [aView release];
//    [bView release];
//    [cView release];

UILable:

UILabel(标签):是显?示?文本的控件。在App中UILabel是出现频

率最?高的控件。 UILabel是UIView?子类,作为?子类?一般是为了扩充?父类的功能,

UILabel扩展了?文字显?示的功能,UILabel是能显?示?文字的视图。

UILable的创建:

   UILabel *userNameLabel = [[UILabel alloc]
initWithFrame:CGRectMake(30, 100, 100, 30)];
userNameLabel.text = @"?用户名"; [containerView addSubview:userNameLabel]; [userNameLabel release];

UILable的常用方法:

    UILabel * lable = [[UILabel alloc] initWithFrame:CGRectMake(20, 80, 200, 40)];
    // 设置文本内容
    lable.text = @"Hellow 郭仔!哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈";
    // 设置lable的行数
    lable.numberOfLines = 0;
    // 设置文本颜色
    lable.textColor = [UIColor redColor];
    //对齐方式
    lable.textAlignment = NSTextAlignmentCenter;
    // lable字体大小
    lable.font = [UIFont systemFontOfSize:12];
    // 设置阴影颜色
    lable.shadowColor = [UIColor greenColor];
    // 设置阴影偏移
    lable.shadowOffset = CGSizeMake(2, 2);

小结:

App靠window来呈现内容,?一个程序?一般只创建?一个window。

App中能看到的元素,都是UIView及其?子类。

UIView作为所有可视化控件的BaseClass,提供了许多属性和?方法。 显?示效果控制(frame、alpha等)、视图添加和移除(addSubview: 等)、视图层次调整(bringSubviewToFront:等)等。

UILabel属于具体的视图,有?自?己的侧重点

===========================================================================

听喜欢的歌,做喜欢的事,追喜欢的人,简单幸福!!!

-------郭仔

时间: 2024-10-30 16:33:13

UI开发----UIView和UILable的相关文章

Swift UI开发初探

今天凌晨Apple刚刚发布了Swift编程语言,Swift是供iOS和OS X应用编程的新编程语言.相信很多开发者都在学习这门新语言. 废话不多说,下面我就来学习使用Swift创建一个简单的UI应用程序. 关于Swift语法,可以参考<Apple Swift编程语言入门教程> 效果如下: 开发环境 Xcode6-beta iOS8 创建工程 Choose File > New > Project > (iOS or OS X) > Application > yo

IOS开发 UIView控件

1.万物皆对象 2.LBS:基于位置的服务(热门) 3.在启动XCODE创建项目的时候最好勾选 git 4.在SB界面中更改UILabel 之类的控件里面的内容,控件的frame会随着内容的大小而改变,但是在右侧的属性栏里面更改则不会影响frame 5.IBAction:SB界面原来叫Interface Builder 缩写为IB, 6.M_PI_4  代表45°  以此类推 // OC语法规定:不允许直接修改 某个对象中结构体属性的成员 ? 1 2 3 4 5 6 7 8 // 1.先取出fr

Android:日常学习笔记(8)———探究UI开发(5)

Android:日常学习笔记(8)---探究UI开发(5) ListView控件的使用 ListView的简单用法 public class MainActivity extends AppCompatActivity { private String[] data={"Apple","Banana","Orange","Watermelon","Pear","Grape","

iPone应用开发 UIView 常用属性和方法

iPone应用程序开发 UIView常用属性和方法 常用属性 alpha 视图的透明度0.0f - 1.0f backgroundColor 视图的背景颜色 subviews 子视图的集合 hidden 视图是否隐藏 tag 视图的唯一标示符,是一个整形数据 superview 视图的父视图 multipleTouchEnabled 是否开启多点触控 userInteractionEnable 是否响应触摸事件 常用方法 - (void)removeFromSuperview; //从父视图中删

十二、Android UI开发专题(转)

http://dev.10086.cn/cmdn/bbs/viewthread.php?tid=18736&page=1#pid89255Android UI开发专题(一) 之界面设计 近期很多网友对Android用户界面的设计表示很感兴趣,对于Android UI开发自绘控件和游戏制作而言掌握好绘图基础是必不可少的.本次专题分10节来讲述,有关OpenGL ES相关的可能将放到以后再透露.本次主要涉及以下四个包的相关内容: android.content.res 资源类 android.gra

Android UI开发神兵利器之Angrytools

最近很多人在问我,个人App开发者如何去设计UI. 其实这是个人开发者最头痛的问题,搞技术的人,确实没法做到面面俱到,不可能花大量的时间去切图,去做原型设计,去做美工. 当然,虽然我们设计不出那么复杂,精巧的UI,但是简单的东西,我们在没有美工的基础上,通过一些手段,也是可以做的不错的,从本文开始,我们将介绍一些关于Android界面开发的神兵利器,正是这些大神们开发的工具,让Coder也能做出一些不是那么见不得人的设计. Angrytools,我们今天的主角,我想当初作者也是被UI弄的Angr

Android:日常学习笔记(8)———探究UI开发(2)

Android:日常学习笔记(8)---探究UI开发(2) 对话框 说明: 对话框是提示用户作出决定或输入额外信息的小窗口. 对话框不会填充屏幕,通常用于需要用户采取行动才能继续执行的模式事件. 提示: Dialog 类是对话框的基类,但您应该避免直接实例化 Dialog,而是使用下列子类之一: AlertDialog此对话框可显示标题.最多三个按钮.可选择项列表或自定义布局. DatePickerDialog 或 TimePickerDialog此对话框带有允许用户选择日期或时间的预定义 UI

Android UI开发——使用Fragment构建灵活的桌面

当我们设计应用程序时,希望能够尽最大限度的适配各种设备,包括4寸屏.7寸屏.10寸屏等等,Android开发文档给了我们参考,而且Google  IO的app(如图二)也实现了这种思想,他们都是使用layout.layout-large里面不同的布局文件实现的.当设计应用程序,你可以在不同的布局结构中重复使用Fragment,以支持众多的屏幕尺寸,,在可用的屏幕空间上优化用户体验.例如在手持设备(如Nexus 4)上,一个屏显示一个Fragment,在更大屏(如Nexus 7)上可以使用多个Fr

Android UI开发专题(转)

http://dev.10086.cn/cmdn/bbs/viewthread.php?tid=18736&page=1#pid89255 Android UI开发专题(一) 之界面设计 近期很多网友对Android用户界面的设计表示很感兴趣,对于Android UI开发自绘控件和游戏制作而言掌握好绘图基础是必不可少的.本次专题分10节来讲述,有关OpenGL ES相关的可能将放到以后再透露.本次主要涉及以下四个包的相关内容: android.content.res 资源类 android.gr