1. 程式人生 > >iOS開發之自定義鍵盤(數字,字母型別等隨意切換)

iOS開發之自定義鍵盤(數字,字母型別等隨意切換)

專案開發很多時候用系統給的鍵盤不是很滿足自身實際需求,那就自定義一個吧:

方法其實很簡單,重新定義一個view,繼承UItextfield,把UI設計好的需求鍵盤加入新的otherKeyboardView,然後執行程式碼:

 self.inputView =self.otherKeyBoardView;

[selfreloadInputViews];

具體效果如下:

自己封裝了一個PassTextField類,直接呼叫就ok:

- (void)viewDidLoad {

[superviewDidLoad];

//自定義鍵盤呼叫

PassTextFild *searchTextField =[[

PassTextFildalloc]initWithFrame:CGRectMake(20,50, 280, 28)];

searchTextField.borderStyle =UITextBorderStyleRoundedRect;

searchTextField.placeholder =@"請輸入程式碼或拼音首字母";

searchTextField.font =[UIFontsystemFontOfSize:13];

searchTextField.contentVerticalAlignment =UIControlContentVerticalAlignmentCenter;

searchTextField.

autocorrectionType =UITextAutocorrectionTypeNo;

searchTextField.returnKeyType = UIReturnKeyDone;

searchTextField.keyboardType =UIKeyboardTypeDefault;

searchTextField.clearButtonMode = UITextFieldViewModeAlways;

searchTextField.text =@"";

[self.viewaddSubview:searchTextField];

[searchTextField becomeFirstResponder

];

}


主要功能程式碼如下:

if (pressButtonCapital.selected)

{

addString =[addString uppercaseString];

}

NSMutableString* mutableString = [[NSMutableStringalloc] initWithFormat:@"%@%@",self.text, addString];

self.text = mutableString;

[selfsearchAllTextField];


//切換到123鍵盤

-(void)changeNumberKeyBoard

{

self.inputView =keyBoardView;

[selfreloadInputViews];

}

//空格

-(void)addNullAction

{

NSMutableString* mutableString = [[NSMutableStringalloc] initWithFormat:@"%@ ",self.text];

self.text = mutableString;

[selfsearchAllTextField];

}

//大小寫切換

-(void)pressCapitalAction:(UIButton *)button

{

if (button.selected){

button.selected =NO;

bacDaXieImage.image =[UIImageimageNamed:@"da_.png"];

}else{

button.selected =YES;

bacDaXieImage.image =[UIImageimageNamed:@"da.png"];

}

}


好吧,廢話不多說了,具體dema直接下載:https://github.com/Deng0512/SelfKeyBoard點選開啟連結

相關推薦

iOS開發定義鍵盤數字字母型別隨意切換

專案開發很多時候用系統給的鍵盤不是很滿足自身實際需求,那就自定義一個吧: 方法其實很簡單,重新定義一個view,繼承UItextfield,把UI設計好的需求鍵盤加入新的otherKeyboardView,然後執行程式碼:  self.inputView =self.oth

IOS開發定義鍵盤

實際開發過程中,會有自定義鍵盤的需求,比如,需要新增一個表情鍵盤。本文提供一種解決方法,思路就是通過獲取系統鍵盤所在的view,然後自定義一個view覆蓋在系統鍵盤view上,接下來的事情就非常簡單了,就是在自定義的view裡做任何自己想做的事情。 這個方法的關鍵在於獲

iOS開發定義載入等待框MBProgressHUD

原文地址:http://blog.csdn.net/ryantang03/article/details/7877120 MBProgressHUD是一個開源專案,實現了很多種樣式的提示框,使用上簡單、方便,並且可以對顯示的內容進行自定義,功能很強大,很多專案中都有

iOS開發定義TabBarController-present模態出控制器

如上圖這種點選TabBar中間Button時present(模態)出控制器,而點選TabBar其它的Button則是蘋果預設的直接切換檢視的方式,現在很多APP都在使用,特別是直播APP,基本都把直播端模組放在這,最近在仿喵播時正好做到這,就想在網上找

iOS開發定義圓環式Slider

#pragma mark - UIControl functions //開始跟蹤觸控 -(BOOL) beginTrackingWithTouch:(UITouch *)touch withEvent:(UIEvent *)event { [super beginTrackingWithTouch:

iOS開發定義導航欄返回按鈕右滑返回手勢失效的解決---親測是有效的。

問題一:怎麼自定義leftItem問題二:為什麼系統自帶的右滑返回手勢失效問題三:怎麼解決這個失效問題3.怎麼解決這個失效問題 其實很簡單很簡單~只需要新增下面這一句程式碼即可self.navigationController.interactivePopGestureRe

iOS開發定義導航欄返回按鈕右滑返回手勢失效的解決

我相信針對每一個iOS開發者來說~除了根檢視控制器外~所有的介面通過導航欄push過去的介面都是可以通過右滑來返回上一個介面~其實~在很多應用和APP中~使用者已經習慣了這個功能~然而~作為開發者的我們~也並沒有為此做些什麼~因為我們在建立專案時~蘋果公司已經為我們都做好了~那麼~我們這期就來聊一聊這系統

iOS開發定義手勢

iOS為手指觸碰事件提供了手勢處理器,通過手勢處理器可使用一致的變成模式來處理各種觸碰事件,而且變成更加簡單,因此一般推薦使用者使用手勢來處理使用者的觸碰事件。無論處理哪種手勢,都可面向UIGestureRecognizer程式設計,UIGestureRecognizer提

iOS開發定義ActionSheet檢視

有時我們需要用到actionSheet來展示,但是但是往往系統的介面顯示很醜或者並不符合UI的要求,所以在這裡自定義一個,方便以後使用,後續有時間寫一下Swift的開發。自定義ActionSheet的關鍵點,就是UI的樣式修改和設計調整,還有就是點選單元格時進行的後續操作,再

IOS開發定義UIActionSheet

IOS開發中,經常會用到UIActionSheet,但是,預設的只能新增按鈕。如果能自定義的話,豈不是更好?上網搜了一下,都是隻有那一種程式碼,通過設定幾個按鈕來增加UIActionSheet的高度,不是很準確。今天研究了一下,然後做了一個可以自定義高度和控制元件的通用U

開發懸浮球SDK定義view流量球上篇 — 水波紋(波浪線)

本人開發懸浮球SDK大致流程及過程中遇到的問題和解決方法我會寫到我的部落格中。 (關於Paint 類,Path類,Canvas類相關具體詳解,請您拉到本部落格下方,點選連結方便您學習哦!) 自定義view的核心方法 onMeasure(int widthMeasureSpec,int hei

Swift-如何定義鍵盤iOS

//createMyInputView該方法返回一個UIImageView型別的檢視 let myView = createMyInputView(); //讓此檢視作為鍵盤的背景檢視  

iOS開發仿微博視訊邊下邊播定義AVPlayer播放器 邊下邊播解剖。視訊處理流程建立連線-請求資料-統籌資料-解碼資料-視訊呈現

Tips:這次的內容分為兩篇文章講述 01、[iOS]仿微博視訊邊下邊播之封裝播放器 講述如何封裝一個實現了邊下邊播並且快取的視訊播放器。 02、[iOS]仿微博視訊邊下邊播之滑動TableView自動播放 講述如何實現在tableView中滑動播放視訊,並且是流暢,不阻塞

ios開發--UIDocumentInteractionController的使用實現更多分享服務

void cnblogs 實例 內容 main 華麗 例如 一個 img 最近在做項目的時候,碰到這樣一個需求,就是本地生成pdf文件,然後本地打開,經過測試發現,pdf文件是無法保存到相冊裏面的,只能存到手機裏面,鑒於蘋果的存儲機制,需要取出來,進行本地展示,可以直接傳到

ios開發 -- 動輪播圖創建

ide targe info self spl enabled static repeat display 這裏是oc版本的,簡單記錄下: 具體代碼如下: 1,準備 #define FRAME [[UIScreen mainScreen] bounds] #define

iOS開發JSON轉PLIST把存儲json格式的文件轉換成plist文件

string 數據 導致 atom use error: ali ror 進行 有時開發過程中,經常需要調試接口,但是可能經常沒有網絡,導致調試無法正常進行。 對此可以自己手動設置一些假數據,也可以通過計算機來為我們保存一份真實的網絡數據,並自己轉化成plist數據,

Revit二次開發 定義選項卡排在最前端

引用AdWindows.dll類庫  Autodesk.Windows.RibbonControl ribbon = AutodeskWindows.ComponentManager.Ribbon;        

iOS開發學習-定義控制元件賦值問題--在model的set方法中給控制元件賦值

在自定義控制元件的過程中,剛開始的時候碰到問題是如何給各控制元件動態賦值,最初的想法是把各控制元件屬性放在.h檔案中定義.然後在控制器內獲取資料一一賦值(可行),但是這樣就增加了控制器中的程式碼,比如給定一個場景: collectionViewCell中,有10個控制元件,需要顯示10個數據,這

iOS開發 tabbar定義轉場動畫

1.小記 關於自定義轉場動畫,只要你理清他的”套路”,你就可以隨心所欲地自定義了. 大體思路就是:遵守對應的代理協議,然後設定對應的代理,實現代理方法,這個代理方法要返回的值就是你要實現的動畫.(如果返回nil,就是預設效果) 以UITabBarController為例的

Android 開發定義控制元件開發-01

最近一直在忙於公司的專案,因為要去現場測試正式使用,專案不大但是經手了三個人,到我這裡只能去填坑了,不說這個了,說一下今天得主題,自定義控制元件之基本圖形繪製。 我們平時畫圖需要兩種工具:紙和筆。在Android中 Paint 就是畫筆,而Canvas類就是紙,在這裡叫做畫布。 所以