【GeekBand】Week3. iOS應(yīng)用開(kāi)發(fā)實(shí)戰(zhàn)記錄(1)

紙上得來(lái)終覺(jué)淺滩褥,絕知此事要躬行

本周筆記綜合課堂的學(xué)習(xí)掷酗,主要圍繞第一周作業(yè)的過(guò)程调违、遇到的問(wèn)題以及解決辦法進(jìn)行記錄。

一泻轰、需求分析


  1. 用戶(hù)需求(勉強(qiáng)算是吧)
    用戶(hù)可以輸入自己的名字技肩,并在屏幕上打招呼,并可以清除消息文字

  2. 練習(xí)

  • storyboard的用法
  • lable浮声,textfield虚婿,button,image控件的用法
  • 從txt中讀取文字
  • 通過(guò)代碼創(chuàng)建button

二泳挥、項(xiàng)目設(shè)計(jì)


  1. 簡(jiǎn)易流程圖


    流程圖
  2. 界面設(shè)計(jì)


    哎呀我摔倒了_(:зゝ∠)_

三然痊、編碼


  1. 界面


  • lable
    顏色字體字號(hào)居中什么的都在這里設(shè)置



  • Text Field
    同樣在此處對(duì)上述屬性進(jìn)行處理



    需要注意的是

Placeholder屬性

用于簡(jiǎn)單提示,用戶(hù)看一眼就能明白的不需要一直看著的一般用在此處

Clear Button屬性

用戶(hù)輸入之后右邊會(huì)有一個(gè)灰色的叉叉用于清除輸入的文字羡洁,這里就是設(shè)置這個(gè)清除按鈕什么時(shí)候出現(xiàn)的
Clear when editing begins玷过,顧名思義,是否在每次用戶(hù)輸入時(shí)都清空textfield

  • button



Type & State Config屬性

這里的Type以及State Config有多種選擇,分別對(duì)應(yīng)不同的按鈕樣式和狀態(tài)


Image & Background屬性

這里我采用將按鈕設(shè)為圖片的方法來(lái)進(jìn)行美化辛蚊,就在image處設(shè)置粤蝎,分別對(duì)Default和Highlighted狀態(tài)設(shè)置圖片達(dá)到我想要的效果
Background可以將背景設(shè)為圖片同時(shí)存在按鈕文字
大家可根據(jù)不同美化需要來(lái)選擇~

  • image
    提到按鈕美化就來(lái)簡(jiǎn)單說(shuō)一下圖片吧~
    直接在這里把需要的圖片拖進(jìn)來(lái)即可


AppIcon

里面是應(yīng)用程序圖標(biāo)設(shè)置,在需要的地方分別拖一張合適的圖片進(jìn)去就可以了
我對(duì)圖片處理不是很在行又不想直接用老師的圖片袋马,所以這里就沒(méi)做啦_(:зゝ∠)_

  1. 內(nèi)部實(shí)現(xiàn)
    上面提到的部分都是直接在storyboard中和ViewController.m直接聯(lián)系起來(lái)的初澎,下面是直接通過(guò)代碼實(shí)現(xiàn)的部分,即從txt中讀取文字以及在打招呼按鈕響應(yīng)代碼里創(chuàng)建清除消息文字按鈕
  • 過(guò)程中已解決的問(wèn)題(具體解決方法去代碼里找啦虑凛!都注釋出來(lái)了)
    • 讀取的txt文件要添加到工程里碑宴,否則url取不到
    • 如何將txt中內(nèi)容讀取到數(shù)組中
    • 如何取隨機(jī)數(shù)arc4random_uniform
    • 如何用代碼創(chuàng)建button并響應(yīng)
    • 如何防止重復(fù)創(chuàng)建,這里我使用的是BOOL類(lèi)型的實(shí)例變量(也許這里也可以通過(guò)tag控制桑谍?)延柠,大家還有什么好方法也可以交流一下
    • 創(chuàng)建時(shí)不能忘記setTitleColor,居然默認(rèn)是白色_(:зゝ∠)_
    • 設(shè)置屬性時(shí)一定要加上forState:锣披,button是有好多種狀態(tài)的
    • button的顯示與隱藏
    • 通過(guò)tag訪問(wèn)button
    • button創(chuàng)建后要設(shè)置顯示
  • 未解決問(wèn)題
    • 如何收回鍵盤(pán)贞间,如何取消textfield焦點(diǎn)
    • 單元測(cè)試忘記啦!_(:зゝ∠)_
3. 以下就是主要代碼啦~
/* 打招呼 */
- (IBAction)greeting:(id)sender {
    
    /* 獲取greeting.txt路徑 */
    NSURL* url = [[NSBundle mainBundle] URLForResource:@"greeting"
                                         withExtension:@"txt"];
    
    /* 讀取文件雹仿,utf-8編碼增热,放入NSArray中 */
    NSString* txtString =
    [NSString stringWithContentsOfURL:url
                             encoding:NSUTF8StringEncoding
                                error:nil];
    NSArray* greetingArray = [txtString componentsSeparatedByString:@"\n"];
    NSInteger idx = arc4random_uniform((u_int32_t)greetingArray.count);
    NSString* greetingString = greetingArray[idx];
    
    /* 界面顯示 */
    if (self.nameField.text.length > 0) {
        self.messageLable.text = [NSString stringWithFormat:@"%@: %@",
                                  self.nameField.text,
                                  greetingString];
    }
    
    /* 創(chuàng)建清除按鈕,已創(chuàng)建時(shí)顯示或隱藏 */
    if (![self.messageLable.text isEqualToString:@"哎呀喵小扣摔倒了_(:зゝ∠)_"]) {
        if (!_clearButtonExist) {
            [self createButton];
        }
        else {
            UIButton* button = [self.view viewWithTag:999];
            button.hidden = NO;
        }
    }
}

/* 創(chuàng)建按鈕 */
- (void)createButton {
    UIButton* clearButton = [[UIButton alloc] init];
    clearButton.tag = 999;
    clearButton.frame = CGRectMake(120, 128, 80, 30);
    [clearButton setTitle:@"不理她了" forState:UIControlStateNormal];
    [clearButton setTitleColor:[UIColor blueColor]
                      forState:UIControlStateNormal];
    /* 響應(yīng) */
    [clearButton addTarget:self
                    action:@selector(clearMessage:)
          forControlEvents:UIControlEventTouchUpInside];
    [self.view addSubview:clearButton];
    _clearButtonExist = YES;
}

/* 清除消息文字胧辽,同時(shí)隱藏清除按鈕 */
- (IBAction)clearMessage:(id)sender {
    self.messageLable.text = @"哎呀喵小扣摔倒了_(:зゝ∠)_";
    UIButton* button = [self.view viewWithTag:999];
    button.hidden = YES;
}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末峻仇,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子邑商,更是在濱河造成了極大的恐慌摄咆,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,123評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件奠骄,死亡現(xiàn)場(chǎng)離奇詭異豆同,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)含鳞,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,031評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門(mén)影锈,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人蝉绷,你說(shuō)我怎么就攤上這事鸭廷。” “怎么了熔吗?”我有些...
    開(kāi)封第一講書(shū)人閱讀 156,723評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵辆床,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我桅狠,道長(zhǎng)讼载,這世上最難降的妖魔是什么轿秧? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,357評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮咨堤,結(jié)果婚禮上菇篡,老公的妹妹穿的比我還像新娘。我一直安慰自己一喘,他們只是感情好驱还,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,412評(píng)論 5 384
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著凸克,像睡著了一般议蟆。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上萎战,一...
    開(kāi)封第一講書(shū)人閱讀 49,760評(píng)論 1 289
  • 那天咐容,我揣著相機(jī)與錄音,去河邊找鬼蚂维。 笑死疟丙,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的鸟雏。 我是一名探鬼主播,決...
    沈念sama閱讀 38,904評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼览祖,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼孝鹊!你這毒婦竟也來(lái)了馅精?” 一聲冷哼從身側(cè)響起宗苍,我...
    開(kāi)封第一講書(shū)人閱讀 37,672評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎搀突,沒(méi)想到半個(gè)月后锰悼,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體柳骄,經(jīng)...
    沈念sama閱讀 44,118評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,456評(píng)論 2 325
  • 正文 我和宋清朗相戀三年箕般,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了耐薯。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,599評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡丝里,死狀恐怖曲初,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情杯聚,我是刑警寧澤臼婆,帶...
    沈念sama閱讀 34,264評(píng)論 4 328
  • 正文 年R本政府宣布,位于F島的核電站幌绍,受9級(jí)特大地震影響颁褂,放射性物質(zhì)發(fā)生泄漏故响。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,857評(píng)論 3 312
  • 文/蒙蒙 一颁独、第九天 我趴在偏房一處隱蔽的房頂上張望彩届。 院中可真熱鬧,春花似錦奖唯、人聲如沸惨缆。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,731評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)坯墨。三九已至,卻和暖如春病往,著一層夾襖步出監(jiān)牢的瞬間捣染,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,956評(píng)論 1 264
  • 我被黑心中介騙來(lái)泰國(guó)打工停巷, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留耍攘,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,286評(píng)論 2 360
  • 正文 我出身青樓畔勤,卻偏偏與公主長(zhǎng)得像蕾各,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子庆揪,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,465評(píng)論 2 348

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