亚洲免费不卡_在线视频精品_国产尤物精品_久久久久网址_久久精品91_欧美va天堂在线_狠狠入ady亚洲精品_亚洲午夜精品福利_国产精品草草_午夜精品久久99蜜桃的功能介绍

iPhone開發中給鍵盤加個隱藏工具條
來源:易賢網 閱讀:1549 次 日期:2014-11-04 09:09:04
溫馨提示:易賢網小編為您整理了“iPhone開發中給鍵盤加個隱藏工具條”,方便廣大網友查閱!

因為iPhone手機采用的觸摸涉及,本身沒有硬件鍵盤,一般都是點擊輸入框之后,彈出一個虛擬鍵盤出來,因此在iPhone開發中,經常在完成編輯輸入之后,要寫程序代碼來關閉軟鍵盤的輸出,非常繁瑣,當然關閉軟鍵盤的方式有很多,比如放一個按鈕在底層,通過點擊屏幕的空白處來關閉鍵盤;也可以處理Return鍵盤事件來關閉鍵盤,這些暫且不說,本文要分享的是一個鍵盤頂部工具條的類,通過這個工具條,可以很方便的關閉鍵盤,而且有上一項,下一項的輸入框切換,非常方便,效果請看下圖:

名單

類文件如下:

KeyBoardTopBar.h

//

// KeyBoardTopBar.h

//

//

// Created by walkman on 10-12-2.

// Copyright 2010 手機主題 http://www.shouji138.com All rights reserved.

//

#import

@interface KeyBoardTopBar : NSObject {

UIToolbar *view;//工具條

NSArray *TextFields;//輸入框數組

BOOL allowShowPreAndNext;//是否顯示上一項下一項

BOOL isInNavigationController;//是否在導航視圖中

UIBarButtonItem *prevButtonItem;//上一項按鈕

UIBarButtonItem *nextButtonItem;//下一項按鈕

UIBarButtonItem *hiddenButtonItem;//隱藏按鈕

UIBarButtonItem *spaceButtonItem;//空白按鈕

UITextField *currentTextField;//當前輸入框

}

@property(nonatomic,retain) UIToolbar *view;

-(id)init; //初始化

-(void)setAllowShowPreAndNext:(BOOL)isShow; //設置是否顯示上一項下一項

-(void)setIsInNavigationController:(BOOL)isbool; //設置是否在導航視圖中

-(void)setTextFieldsArray:(NSArray *)array; //設置輸入框數組

-(void)ShowPrevious; //顯示上一項

-(void)ShowNext; //顯示下一項

-(void)ShowBar:(UITextField *)textField; //顯示工具條

-(void)HiddenKeyBoard; //隱藏鍵盤

@end

KeyBoardTopBar.m 文件

//

// KeyBoardTopBar.m

//

// Created by walkman on 10-12-2.

// Copyright 2010 手機主題下載 http://www.shouji138.com All rights reserved.

//

#import "KeyBoardTopBar.h"

@implementation KeyBoardTopBar

@synthesize view;

//初始化控件和變量

-(id)init{

if(self = [super init]) {

prevButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"上一項" style:UIBarButtonItemStyleBordered target:self action:@selector(ShowPrevious)];

nextButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"下一項" style:UIBarButtonItemStyleBordered target:self action:@selector(ShowNext)];

hiddenButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"隱藏鍵盤" style:UIBarButtonItemStyleBordered target:self action:@selector(HiddenKeyBoard)];

spaceButtonItem = [[UIBarButtonItem alloc]initWithBarButtonSystemItem: UIBarButtonSystemItemFlexibleSpace target:nil action:nil];

view = [[UIToolbar alloc] initWithFrame:CGRectMake(0,480,320,44)];

view.barStyle = UIBarStyleBlackTranslucent;

view.items = [NSArray arrayWithObjects:prevButtonItem,nextButtonItem,spaceButtonItem,hiddenButtonItem,nil];

allowShowPreAndNext = YES;

TextFields = nil;

isInNavigationController = YES;

currentTextField = nil;

}

return self;

}

//設置是否在導航視圖中

-(void)setIsInNavigationController:(BOOL)isbool{

isInNavigationController = isbool;

}

//顯示上一項

-(void)ShowPrevious{

if (TextFields==nil) {

return;

}

NSInteger num = -1;

for (NSInteger i=0; i<[TextFields count]; i++) {

if ([TextFields objectAtIndex:i]==currentTextField) {

num = i;

break;

}

}

if (num>0){

[[TextFields objectAtIndex:num] resignFirstResponder];

[[TextFields objectAtIndex:num-1 ] becomeFirstResponder];

[self ShowBar:[TextFields objectAtIndex:num-1]];

}

}

//顯示下一項

-(void)ShowNext{

if (TextFields==nil) {

return;

}

NSInteger num = -1;

for (NSInteger i=0; i<[TextFields count]; i++) {

if ([TextFields objectAtIndex:i]==currentTextField) {

num = i;

break;

}

}

if (num<[TextFields count]-1){

[[TextFields objectAtIndex:num] resignFirstResponder];

[[TextFields objectAtIndex:num+1] becomeFirstResponder];

[self ShowBar:[TextFields objectAtIndex:num+1]];

}

}

//顯示工具條

-(void)ShowBar:(UITextField *)textField{

currentTextField = textField;

if (allowShowPreAndNext) {

[view setItems:[NSArray arrayWithObjects:prevButtonItem,nextButtonItem,spaceButtonItem,hiddenButtonItem,nil]];

}

else {

[view setItems:[NSArray arrayWithObjects:spaceButtonItem,hiddenButtonItem,nil]];

}

if (TextFields==nil) {

prevButtonItem.enabled = NO;

nextButtonItem.enabled = NO;

}

else {

NSInteger num = -1;

for (NSInteger i=0; i<[TextFields count]; i++) {

if ([TextFields objectAtIndex:i]==currentTextField) {

num = i;

break;

}

}

if (num>0) {

prevButtonItem.enabled = YES;

}

else {

prevButtonItem.enabled = NO;

}

if (num<[TextFields count]-1) {

nextButtonItem.enabled = YES;

}

else {

nextButtonItem.enabled = NO;

}

}

[UIView beginAnimations:nil context:nil];

[UIView setAnimationDuration:0.3];

if (isInNavigationController) {

view.frame = CGRectMake(0, 201-40, 320, 44);

}

else {

view.frame = CGRectMake(0, 201, 320, 44);

}

[UIView commitAnimations];

}

//設置輸入框數組

-(void)setTextFieldsArray:(NSArray *)array{

TextFields = array;

}

//設置是否顯示上一項和下一項按鈕

-(void)setAllowShowPreAndNext:(BOOL)isShow{

allowShowPreAndNext = isShow;

}

//隱藏鍵盤和工具條

-(void)HiddenKeyBoard{

if (currentTextField!=nil) {

[currentTextField resignFirstResponder];

}

[UIView beginAnimations:nil context:nil];

[UIView setAnimationDuration:0.3];

view.frame = CGRectMake(0, 480, 320, 44);

[UIView commitAnimations];

}

//釋放

- (void)dealloc {

[view release];

[TextFields release];

[prevButtonItem release];

[nextButtonItem release];

[hiddenButtonItem release];

[currentTextField release];

[spaceButtonItem release];

[super dealloc];

}

@end

下面是使用這個類的代碼:

在UIViewController頭文件中申明,并定義,并且實現UITextFieldDelegate代理

比如:在keyboardtopbarViewController.h文件,我是這樣寫的

//

// keyboardtopbarViewController.h

// keyboardtopbar

//

// Created by walkman on 10-12-2.

// Copyright 2010 手機主題 http://www.shouji138.com All rights reserved.

//

#import

@class KeyBoardTopBar;

@interface keyboardtopbarViewController : UIViewController {

UITableView *tableview;

NSMutableArray *cellsTextArray;

NSMutableArray *editFieldArray;

UIButton *btnReg;

KeyBoardTopBar *keyboardbar;

CGRect rect;

}

在在UIViewController的m文件中,初始化,并添加到view中

- (void)viewDidLoad {

[super viewDidLoad];

......

//其中editFieldArray 是UITextField數組,在上面已經初始化,并添加了N個UITextField在里面。

//具體的代碼請下載附件查看,這里只貼出了相關的代碼

keyboardbar = [[KeyBoardTopBar alloc]init];

[keyboardbar setAllowShowPreAndNext:YES];

[keyboardbar setIsInNavigationController:NO];

[keyboardbar setTextFieldsArray:editFieldArray];

[self.view addSubview:keyboardbar.view];

}

//這個方法是UITextFieldDelegate代理中的方法,表示輸入框開始處于編輯狀態。

- (void)textFieldDidBeginEditing:(UITextField *)textField{

[keyboardbar ShowBar:textField]; //顯示工具條

......

}

OK了,調用起來還是很方便吧,當然,這個類還有需要完善的地方,比如,在執行了HiddenKeyBoard方法隱藏了鍵盤和工具條之后,如果在調用頁面時候需要再做進一步處理,目前是無法實現的,等下一個版本中再加入一個Delegate類。

更多信息請查看IT技術專欄

更多信息請查看技術文章
易賢網手機網站地址:iPhone開發中給鍵盤加個隱藏工具條
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點

版權所有:易賢網

亚洲免费不卡_在线视频精品_国产尤物精品_久久久久网址_久久精品91_欧美va天堂在线_狠狠入ady亚洲精品_亚洲午夜精品福利_国产精品草草_午夜精品久久99蜜桃的功能介绍
免费日韩av片| 国产在线成人| 欧美一区二区| 欧美成人一区二区在线| 牛夜精品久久久久久久99黑人| 久久av一区二区三区| 欧美亚洲免费高清在线观看| 久久精品综合| 亚洲性图久久| 亚洲欧美国产精品桃花| 欧美成人午夜| aa成人免费视频| 久久久精品动漫| 亚洲特级毛片| 欧美综合国产| 亚洲区第一页| 欧美一区二区三区四区在线观看地址 | 欧美三级视频| 在线亚洲一区| 国产一区自拍视频| 久久国产精品亚洲va麻豆| 国内揄拍国内精品久久| 亚洲综合日韩| 在线成人www免费观看视频| 麻豆91精品| 国产精品一区二区欧美| 国产一区视频观看| 久久看片网站| 噜噜噜躁狠狠躁狠狠精品视频 | 在线日本成人| 久久亚洲免费| 亚洲综合首页| 99精品视频免费| 黄色亚洲在线| 黄色成人91| 欧美激情亚洲| 欧美精品福利| 久久先锋资源| 久久精品一二三区| 亚洲综合欧美| 男女精品网站| 免费亚洲一区| 亚洲专区免费| 亚洲综合不卡| 免费在线亚洲| 久久国产精品久久w女人spa| 国产精品日韩欧美一区二区三区| 91久久综合| 亚洲精选国产| 中文精品视频| 久久av最新网址| 久久精品卡一| 欧美日本不卡| 极品中文字幕一区| 亚洲黑丝一区二区| 一区二区精品在线观看| 国产亚洲精品v| 性欧美xxxx大乳国产app| 性伦欧美刺激片在线观看| 亚洲一区在线直播| 欧美有码视频| 影音先锋中文字幕一区| 亚洲免费激情| 美女国产精品| 狠狠色综合网| 国产精品区一区| 久久美女性网| 激情综合自拍| 亚洲一区二区三区精品动漫| 久久国产主播| 国语精品中文字幕| 国产日韩高清一区二区三区在线| 亚洲一区影院| 国产综合激情| 国产伦理一区| 国产综合婷婷| 免费亚洲一区二区| 激情婷婷久久| 久久精品99| 亚洲高清视频一区二区| 亚洲一区二区三区精品在线观看| 久久九九精品| 99视频精品| 欧美日韩国产高清| 在线综合亚洲| 亚洲视频碰碰| 欧美一区激情| 一区二区冒白浆视频| 欧美69视频| 一本色道精品久久一区二区三区 | 99热精品在线观看| 久久福利电影| 影音欧美亚洲| 久久精品成人一区二区三区蜜臀| 亚洲午夜电影| 午夜久久影院| 久久国产欧美精品| 一区二区三区久久网| 欧美体内she精视频在线观看| 国产久一道中文一区| 国产一区自拍视频| 欧美一区免费视频| 男女精品网站| 亚洲一区国产一区| 99热这里只有成人精品国产| 国产中文一区二区| 欧美日韩成人| 欧美激情成人在线| 欧美aⅴ99久久黑人专区| 国产精品亚洲综合久久| 亚洲精选一区| 亚洲精品少妇| 亚洲三级电影在线观看| 狠狠久久综合婷婷不卡| 欧美视频亚洲视频| 国产精品草草| 国产精品国产精品| 国产精品99一区二区| 欧美精品在线一区| 国模一区二区三区| 亚洲一本视频| 亚洲另类自拍| 在线天堂一区av电影| 一区二区冒白浆视频| 一区二区国产精品| 亚洲在线日韩| 欧美国产三级| 亚洲视频碰碰| 在线综合亚洲| 久久国产精品毛片| 欧美人成网站| 亚洲精品1区2区| 亚洲人人精品| 亚洲在线网站| 欧美日韩1区2区3区| 好吊日精品视频| 日韩午夜在线| 久久久精品国产一区二区三区| 久久亚洲美女| 在线欧美视频| 久久精品日产第一区二区三区| 午夜精品一区二区三区四区| 久久一区二区三区四区五区| 欧美亚洲免费高清在线观看| 激情久久中文字幕| 在线观看的日韩av| 国产日韩久久| 久久精品二区| 亚洲一级一区| 国产毛片久久| 欧美福利在线| 一区二区三区欧美在线| 久久一区视频| 影音先锋日韩资源| 性感少妇一区| 激情欧美国产欧美| 久久婷婷丁香| 99国内精品久久久久久久软件| 久久国产高清| 樱桃成人精品视频在线播放| 国产精品亚洲一区| 狠狠综合久久av一区二区老牛| 国产精品毛片在线| 狠狠色综合色区| 久久久久看片| 国产嫩草一区二区三区在线观看| 国产精品草草| 欧美在线播放一区| 亚洲欧美成人| 在线亚洲免费| 亚洲高清激情| 国产在线欧美| 欧美日韩亚洲一区三区| 噜噜噜91成人网| 99国内精品| 亚洲第一在线| 欧美日本在线| 午夜国产欧美理论在线播放| 国产精品一级久久久| 尤物精品在线| 国精品一区二区三区| 欧美成人嫩草网站| 久久激情综合| 麻豆精品91| 亚洲欧美日韩视频二区| 中文网丁香综合网| 国产精品免费在线 | 亚洲在线成人| 国产精品啊v在线| 亚洲一区日韩| 亚洲最新在线| 日韩视频精品| 99热这里只有成人精品国产| 国产日韩欧美在线播放不卡| 欧美专区18| 黄色一区二区三区四区| 欧美性色综合| 亚洲精品自在在线观看| 国产一区日韩一区| 欧美日韩国产探花| 久久一区中文字幕| 欧美在线影院| 欧美精选一区| 亚洲视频精品| 在线精品观看| 亚洲国产欧美日韩| 亚洲精美视频| 国产精品日韩欧美一区| 欧美中日韩免费视频| 久久精品三级| 欧美日韩国产一区精品一区| 国内成+人亚洲| 亚洲精品欧美| 老鸭窝91久久精品色噜噜导演| 久久黄色影院| 国产一区二区无遮挡| 亚洲欧洲日本国产| 久久都是精品| 亚洲天堂男人| 国产亚洲欧美一区二区| 久久激情网站| 1000部精品久久久久久久久| 99热这里只有精品8| 久久av一区| 黄色欧美日韩| 久久riav二区三区| 国自产拍偷拍福利精品免费一| 日韩午夜黄色| 久久久国产亚洲精品| 黄色成人av网站| 国产农村妇女毛片精品久久莱园子| 久久久久久黄| aa级大片欧美三级| 久久亚洲美女| 亚洲深夜影院| 狠狠色综合网| 欧美一区精品| 亚洲一区免费看| 精品不卡视频| 久久精品日韩| 国产欧美日韩一区二区三区在线| 午夜精品久久| 免费日韩视频| 国产精品毛片va一区二区三区| 欧美日韩爆操| 免费在线观看成人av| 极品日韩av| 欧美区亚洲区| 久久久久久久波多野高潮日日| 亚洲美女色禁图| 国色天香一区二区| 国语精品中文字幕| 亚洲经典三级| 久久男女视频| 欧美福利视频| 欧美日韩视频| 国产精品日韩久久久| 久久久综合香蕉尹人综合网| 国产精品一区免费观看| 国模 一区 二区 三区| 性一交一乱一区二区洋洋av| 欧美三日本三级少妇三99| 亚洲欧美激情诱惑| 国产偷久久久精品专区| 亚洲精品1234| 亚洲高清激情| 在线精品亚洲| 91久久综合| 亚洲精品看片| 99国产一区| 国产偷久久久精品专区| 伊人久久成人| 91久久夜色精品国产九色| 亚洲激情一区二区| 亚洲国产精品www| 亚洲人成毛片在线播放女女| 在线观看福利一区| 亚洲另类自拍| 99视频一区| 国产精品久久久久久模特 | 欧美日韩hd| 欧美a级片网站| 欧美福利网址| 欧美三级特黄| 精品1区2区3区4区| 亚洲另类黄色| 亚洲在线观看| 国产麻豆日韩| 久久亚洲风情| 国内精品久久久久久久果冻传媒| 合欧美一区二区三区| 亚洲第一伊人| 国产精品尤物| 欧美精品二区三区四区免费看视频| 欧美1区2区视频| 激情久久婷婷| 国产日韩欧美亚洲一区| 免费看亚洲片| 欧美日韩一区在线播放| 激情五月***国产精品| 99成人免费视频| 久久激情综合| 亚洲天堂男人| 午夜一区二区三视频在线观看| 久久综合给合久久狠狠色| 国产精品sm| 久久成人资源| 樱桃成人精品视频在线播放| 国产精品乱码| 欧美亚洲不卡| 免费视频久久| 亚洲精品在线观看免费| 欧美福利电影在线观看| 亚洲人成免费| 欧美精品福利| 欧美专区在线| 日韩视频不卡| 欧美日韩综合网| 亚洲欧美卡通另类91av| 亚洲国产一区二区三区高清| 久久青青草原一区二区| 一级日韩一区在线观看| 国产精品分类| 欧美黄色免费| 久久久精品国产一区二区三区| 99人久久精品视频最新地址| 欧美理论在线| 玖玖在线精品| 每日更新成人在线视频| 国产视频不卡| 中文在线一区| 91久久极品少妇xxxxⅹ软件| 欧美日韩另类丝袜其他| 久久最新视频| 久久久久看片| 久久欧美肥婆一二区| 性感少妇一区| 免费视频久久| 久久国产精品99国产| 国产一区二区高清不卡| 夜夜精品视频| 一区二区三区国产在线| 夜久久久久久| 99伊人成综合| 国产区日韩欧美| 国产精品推荐精品| 亚洲在线不卡| 久久亚洲电影| 欧美日韩在线高清| 亚洲视频狠狠| 亚洲国产日韩欧美一区二区三区| 黄色亚洲精品| 1024精品一区二区三区| 亚洲精品在线二区| 国产精品视频免费一区| 亚洲永久免费精品| 久久五月天婷婷| 国产精品成人观看视频免费| 欧美日韩一区二区视频在线观看| 欧美aa国产视频| 欧美精品亚洲| 国产在线精品一区二区中文| 国模一区二区三区| 亚洲人体大胆视频| 香蕉精品999视频一区二区 | 毛片一区二区| 亚洲男人影院| 欧美一区1区三区3区公司 | 欧美一区二区在线| 午夜日韩电影| 在线日韩视频| 午夜在线视频观看日韩17c| 乱码第一页成人| 国产一区视频在线观看免费| 亚洲国产mv| 奶水喷射视频一区| 欧美午夜久久| 国产精品视频免费观看| 久久久一本精品99久久精品66| 欧美精选一区| 中文精品视频| 欧美日韩精品一区| 亚洲视频导航| 欧美1区免费| 亚洲第一区色| 久久久蜜桃一区二区人| 亚洲一二三区精品| 久久精品观看| 91久久极品少妇xxxxⅹ软件| 性欧美长视频| 亚洲国产高清一区| 久久综合网络一区二区| 亚洲日产国产精品| 欧美日韩一区二区三区四区在线观看 | 一本色道久久综合亚洲精品不卡 | 狠狠综合久久| 中日韩视频在线观看| 老**午夜毛片一区二区三区| 亚洲视频精品| 欧美大片专区|