iOS Swift從零開始

本篇思維導圖

「需求:」

1.顯示一個橘黃色矩形
2.矩形上面一個按鈕可以點擊,并有響應(yīng)事件
3.界面中心顯示一張圖片

「系統(tǒng)版本:」

MacOS 版本:10.15.5
Xcode版本:11.5

一、創(chuàng)建demo項目

1.1 選擇創(chuàng)建一個Xcode Project

image

<figcaption style="box-sizing: inherit; display: block; margin-top: 5px; text-align: center; font-size: 13px;">mark</figcaption>

1.2 選擇Single View App

mark

二跺嗽、代碼實現(xiàn)

2.1 程序入口說明

Application/AppDelegate.swift文件中的@UIApplication注解蚓炬,表示這個Class類是程序的入口

image

2.2 代碼結(jié)構(gòu)說明

所有方法放到一個{}中慕淡,并有縮進盾沫。

和Java編碼格式非常相似。

2.3 功能實現(xiàn)

2.3.1 創(chuàng)建一個視圖闯传,添加一個黃色矩形

import UIKit

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
        
        // 1.創(chuàng)建一個視圖
        let v = UIView(frame: CGRect(x:0, y:0, width: 100, height: 100))
        
        // 2.設(shè)置背景顏色
        v.backgroundColor = UIColor.yellow
        
        // 3.添加到當前視圖
        view.addSubview(v)
    }
}

效果如下所示:一個黃色矩形在左上角

效果圖

2.3.2 添加一個按鈕谨朝,并添加按鈕點擊事件的監(jiān)聽方法

// 2.創(chuàng)建一個按鈕
let btn = UIButton(type: .contactAdd)

// 2.1 添加到當前視圖
v.addSubview(btn)

// 2.2 添加點擊事件
btn.addTarget(self, action: #selector(btnClick), for: .touchUpInside)

// 2.3 btnClick事件方法輸出日志

效果如下所示,一個按鈕在左上角甥绿,點擊按鈕將會輸出日志

效果圖

2.3.3 添加一個圖片

// 3.1 添加一個圖片
let iv = UIImageView(image: #imageLiteral(resourceName: "2.jpeg"))

// 3.2 添加到視圖
iv.center = view.center

圖片的資源路徑可以通過代碼添加字币,也可以通過工具添加
image

效果如下所示,圖片會顯示在屏幕中間共缕。
image

三洗出、上述示例swift與object-c的語法對比

3.1 創(chuàng)建視圖類比

- Swift: UIView(XXX:)
- OC: [[UIView alloc] initWithXXX:]
  類名() == alloc / init 等價

3.2 類方法類比

Swift: UIColor.yellow
OC: [UIColor yellow]

3.3 訪問當前對象的屬性類比

  • 建議:都不使用self.。當編譯器提示的時候图谷,再添加翩活,會對語境有更好的機會;

  • 原因:閉包(類似于 OC block)需要使用self便贵。

3.4 不需要;

除非多行代碼語句寫在同一行中菠镇。

3.5 枚舉類型 type對比

Swift:`type: .contactAdd`
OC: UIButtonType.ContactAdd

3.6 監(jiān)聽方法對比

Swift: #selector,如果帶參數(shù)承璃,不需要使用`:`
OC: @selector

3.7 調(diào)試對比

  • Swift: print(xxx) 效率高利耍,log中不包含時間,用#function來打印當前執(zhí)行的方法
  • OC: NSLog盔粹,用FUNCTION 來打印當前執(zhí)行的方法

四隘梨、注釋的妙用

當我們想標注某段代碼是需要refine的,我們可以添加注釋標簽:TODO舷嗡。

如下圖所示轴猎,我在注釋中添加了MARKTODO进萄、FIXME標簽前綴税稼,這些特殊標記的錨點菜單將會顯示在導航欄上,點擊菜單即可跳轉(zhuǎn)到對應(yīng)注釋的地方垮斯,非常方便。

image

<figcaption style="box-sizing: inherit; display: block; margin-top: 5px; text-align: center; font-size: 13px;"></figcaption>

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末只祠,一起剝皮案震驚了整個濱河市兜蠕,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌抛寝,老刑警劉巖熊杨,帶你破解...
    沈念sama閱讀 212,454評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件曙旭,死亡現(xiàn)場離奇詭異,居然都是意外死亡晶府,警方通過查閱死者的電腦和手機桂躏,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,553評論 3 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來川陆,“玉大人剂习,你說我怎么就攤上這事〗匣Γ” “怎么了鳞绕?”我有些...
    開封第一講書人閱讀 157,921評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長尸曼。 經(jīng)常有香客問我们何,道長,這世上最難降的妖魔是什么控轿? 我笑而不...
    開封第一講書人閱讀 56,648評論 1 284
  • 正文 為了忘掉前任冤竹,我火速辦了婚禮,結(jié)果婚禮上茬射,老公的妹妹穿的比我還像新娘鹦蠕。我一直安慰自己,他們只是感情好躲株,可當我...
    茶點故事閱讀 65,770評論 6 386
  • 文/花漫 我一把揭開白布片部。 她就那樣靜靜地躺著,像睡著了一般霜定。 火紅的嫁衣襯著肌膚如雪档悠。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,950評論 1 291
  • 那天望浩,我揣著相機與錄音辖所,去河邊找鬼。 笑死磨德,一個胖子當著我的面吹牛缘回,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播典挑,決...
    沈念sama閱讀 39,090評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼酥宴,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了您觉?” 一聲冷哼從身側(cè)響起拙寡,我...
    開封第一講書人閱讀 37,817評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎琳水,沒想到半個月后肆糕,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體般堆,經(jīng)...
    沈念sama閱讀 44,275評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,592評論 2 327
  • 正文 我和宋清朗相戀三年诚啃,在試婚紗的時候發(fā)現(xiàn)自己被綠了淮摔。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,724評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡始赎,死狀恐怖和橙,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情极阅,我是刑警寧澤肋僧,帶...
    沈念sama閱讀 34,409評論 4 333
  • 正文 年R本政府宣布亚侠,位于F島的核電站吟秩,受9級特大地震影響糖权,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜奔脐,卻給世界環(huán)境...
    茶點故事閱讀 40,052評論 3 316
  • 文/蒙蒙 一俄周、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧髓迎,春花似錦峦朗、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,815評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至橄维,卻和暖如春尺铣,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背争舞。 一陣腳步聲響...
    開封第一講書人閱讀 32,043評論 1 266
  • 我被黑心中介騙來泰國打工凛忿, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人竞川。 一個月前我還...
    沈念sama閱讀 46,503評論 2 361
  • 正文 我出身青樓店溢,卻偏偏與公主長得像,于是被迫代替她去往敵國和親委乌。 傳聞我的和親對象是個殘疾皇子床牧,可洞房花燭夜當晚...
    茶點故事閱讀 43,627評論 2 350

推薦閱讀更多精彩內(nèi)容