iOS開發一行代碼系列:一行搞定輸入框

來源:互聯網
上載者:User

標籤:style   blog   http   io   ar   os   使用   for   sp   

近期總結了下開發過程中經常使用的功能,發現有時候我在做反覆性的勞動。於是決定把經常使用的功能抽出來,方便下次使用。

我的想法是:用最少的代碼來解決這個問題。於是寫了一些經常使用的工具類,名字就叫一行代碼系列吧。。。好像挺挫的。。

大致內容有:

1、一行搞定輸入框

2、一行搞定網路請求

3、一行搞定上下拉重新整理(會自己主動推斷是上拉還是下拉還是兩者並存)

4、一行搞定資料庫(近期還在寫,功能已經基本實現)

5、一行搞定圖片儲存

6、一行搞定定位

7、一行搞定網路狀況變化

8、一行搞定X(功能小集合)



一行搞定輸入框

輸入框經常見到,特別是注冊的時候須要填寫一大堆資訊,這時候就會有2個問題:輸入框被鍵盤遮擋,鍵盤怎樣消失。

當時考慮到一種情況是: 全部的輸入框都不是同級的,就是多個視圖嵌套,然后里面有N個輸入框,輸入框可能是UITextField,UITextView,UISearchBar。於是就依照這樣的情況寫了下,至於中間的Bug,大家能夠提出改動。

由於個人的局限性太大了,還是希望大家Fork並改動,這樣其它人也能夠用到你寫的工具,不要搞什麼技術壟斷之類的。

原理:從相對根視圖遍曆子視圖,假設子視圖是UITextField,UITextView,UISearBar,就把它的inputAccessoryView設定為全域的toolBar,同一時候記下它的相對座標,以此類推。

使用:使用僅僅要一行代碼,它會自己主動推斷座標,同一時候你能夠修飾鍵盤的消失方式:點擊視圖消失,還是點擊鍵盤外的某處消失,還是點擊完畢消失。


- (void)viewDidLoad {    [super viewDidLoad];        [inputHelper setupInputHelperForView:self.view withDismissType:InputHelperDismissTypeTapGusture];    }



#import <Foundation/Foundation.h>#import <UIKit/UIKit.h>typedef NS_ENUM(NSInteger, InputHelperDismissType) {        InputHelperDismissTypeNone = 0,    InputHelperDismissTypeCleanMaskView,    InputHelperDismissTypeTapGusture};@interface InputHelper : NSObject+ (InputHelper *)sharedInputHelper;- (void)dismissInputHelper;- (void)setupInputHelperForView:(UIView *)view withDismissType:(InputHelperDismissType)dismissType;@end#define inputHelper [InputHelper sharedInputHelper]



支援類型:

支援UITextField,UITextView,UISearBar 3種類型。常見的就能夠啦。。


原始碼:

點擊這裡   或者       點我


iOS開發一行代碼系列:一行搞定輸入框

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.