天天看點

iOS個人整理06-第一周小結,常用控件UIView,UILabel,UIImageView,UIButton,UITextField

一周學習總結

學習了一周的OC--UI,内容的比較簡單,主要是各種控件有很多屬性,常用的屬性要記清楚,不常用的要知道如何找到,能看懂,知道怎麼回事(度娘)。

在這裡整理一下一周的學習内容

一、UiView

a.初始化方式:

    initWithFrame:(CGRect)frame

b.frame:

    frame就是一個矩形,該矩形就是一個結構體CGRect

    CGrect:    original 确定位置,包含x,y,左上點為坐标原點

            size 确定大小,包含width,height

c.View的屬性

    bounds:邊框,一個矩形(CGRect),改變bounds的orginal隻會影響該視圖上面子視圖的位置,不會影響吱聲在父視圖的位置。

    center:視圖的中心點(CGPoint)

    backgroundColor:視圖的背景顔色,屬性的傳回類型是UIColor,

            UIColor方法:[UIColor colorWithRed:0~1 Green:0~1 Blue:0~1 alpha:0~1]

    alpha:視圖的透明度

    (BOOL)hidden:視圖是否隐藏

    superView:得到該視圖的父視圖

    subViews:得到所有子視圖,傳回NSArray

    tag:視圖的标記,父視圖根據tag值得到特定子視圖

d.View的常用方法

    1.添加子視圖

    [view addSubview : subView];

    2.從父視圖移除

    [subView removeFromSuperView];

    3.視圖的層級交換

    [view exchangeSubviewAtIndex:<#(NSInteger)#> withSubviewAtIndex:<#(NSInteger)#>

二、UILabel

    在Label上添加按鈕是不可點選的

a.初始化

    initWithFrame:(CGRect)frame

b.屬性

    1.text :呈現文字内容,傳回值NSString

    2.textAlignment:水準對齊方式

    3.font:文字屬性設定

    4.textColor:文字的顔色

三、UIImageView

    主要負責圖檔的展示

a.初始化

    父類初始化:initWithFrame:(CGRect)frame

    i自身初始化:nitWithImage:UIimage

    UIImage:圖檔類型

b.屬性和方法

    1.添加圖檔:[imageView setIamge:[UIImage imageNamed:@“圖檔名稱”]]

    3.UIViewImage呈現動圖

    a)為imageView添加一組圖檔

        animationImages ,傳回值為數組,元素類型為UIImage

    b)設定動畫時長

        animationDuration,機關為秒

    c)動畫開始和暫停

        startAnimating

        stopAnimating

    d)動畫重複次數

        animationRepeatCount

四、UIButton

    button的父類為UIControl,UIControl的父類為UIView。本質也是View,更偏重使用者互動,而不是内容顯示。

a.初始化

    buttonWithType:(枚舉值)UIButtonType...

b.方法

    a)設定标題    

        [button setTitle:@“标題” forState:(枚舉值)UIControlState...]

        其中UIControlStateSelected狀态需要button.selected屬性配合

       UIControlState 的類型有常态Normal,高亮HightLighted比較常用

    b)設定frame

        沒有在初始化時設定,容易遺漏

        button.frame = CGRectMake();

    c)添加點選事件

        [button addTarget:self action:@selector(btnAction:) forControlEnvents:(枚舉值)UIControlEventTouchUpInside(單擊)]

        button的點選事件UIControlEventTouch類型很多,常用的單擊,輕按兩下,滑鼠離開,拖拽等等等。

五、UITextField

    父類是UIControl,更偏重于和使用者互動

a.初始化

    initWithFrame:

b.方法屬性

    a)設定占位字元:placeHolder:傳回值為NSString

    b)設定textField不能輸入:enabled

    c)設定鍵盤樣式:keyboardType

    d)自定義鍵盤樣式:InputView:傳回類型為UIView

    e)獲得輸入的内容的屬性:text

    f)回收鍵盤:[textField resignFirstResponder];

    成為第一響應者:[textField becomeFirstRepsonder];

    g)協定代理方法:UITextFieldDelegate

    所有協定方法都是可選的

    -(BOOL)textFieldShouldBeginEditing:(UITextField*)textField;//是否可以開始編輯

    -(void)textFieldDidBeginEditing:(UITextField*);//已經進入編輯狀态

    -(BOOL)textFieldShouldEndEditing:(UITextField*)textField;//是否可以結束編輯

    -(void)textFieldDidEndEditing:(UITextField*)textField;//已經結束編輯狀态

    -(BOOL)textFieldShouldReturn:(UITextField*)textField;//點選右下角return觸發

五、應用程式的啟動流程

    —>main()

    —>

UIApplicationMain(argc,argv,@“UIApplication”,NSStringFromClass([AppDelegate class]))

    —>建立了整個應用程式對象,也就是UIAppcation對象

    —>建立了Appdelegate對象,也就是整個應用程式代理對象

    —>将應用程式的代理指定為AppDelegate對象(app.delegate = appDelegate),根據info.plist檔案配置整個應用程式    

    —>在didFinishLaunchingWithOperations代理方法中建立主視窗和根視圖控制器,如果還有其他必要設定,也可以寫在

六、ViewController的生命周期

loadView()加載視圖

ViewDidload()加載完畢

viewWillAppear()視圖即将出現

viewDidAppear()視圖已經出現

viewWillDisAppear()視圖即将消失

viewDidDisAppear()視圖已經消失

dealloc()銷毀