• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            兔子的技術博客

            兔子

               :: 首頁 :: 聯系 :: 聚合  :: 管理
              202 Posts :: 0 Stories :: 43 Comments :: 0 Trackbacks

            留言簿(10)

            最新評論

            閱讀排行榜

            評論排行榜

            有一種思路叫寄生...

            我相信是懶人推動了世界的發展,既然iphone有了自己的軟件盤,我們什么還要自己實現其功能呢。
            so,只要寄生在上面就行了。

            感謝alan轉載的文章給的靈感。
            http://www.cocoachina.com/bbs/read.php?tid-3999.html

            思路:
            1.用靜態方法找到應用程序當前view(window)中的UIKeyboard的view
            2.在鍵盤的view上帖上自己的view,(精彩了,這個自己的view就是你自己鍵盤,任意發揮,什么類型鍵盤都可以做了)
            3.根據需要調整系統鍵盤的大小以滿足你想要的尺寸
            4.給自己的鍵盤view上的button添加方法,實現功能

            主要代碼:
            添加自身類為鍵盤事件的觀察者
            復制代碼
            1. [[NSNotificationCenter defaultCenter] addObserver:self 
                                                           selector:@selector(keyboardWillShow:) 
                                                               name:UIKeyboardWillShowNotification 
                                                             object:nil];


            核心思路代碼:
            復制代碼

            1. - (void)keyboardWillShow:(NSNotification *)note 
              {  
                  UIWindow* tempWindow = [[[UIApplication sharedApplication] windows] objectAtIndex:1];//知識點
                  for(int i=0; i<[tempWindow.subviews count]; i++) 
                  {
                      keyboard = [tempWindow.subviews objectAtIndex:i];
                      if([[keyboard description] hasPrefix:@"<UIKeyboard"] == YES)
                      {
                          [keyboard setFrame:CGRectMake(0, 460, 320, 345)];
                          [self congfigKeypad];
                          
                          [keyboard addSubview:keyPadView1];
                          
                      }
                  }
              }


            比如配置方法可以是這樣:
            復制代碼
            1. -(void)congfigKeypad
              {
                 SearBtn *one = [[SearBtn alloc] initWithFrame:CGRectMake(81, 3, kNumPadW, kNumPadH) index:1 ContextString:@"1" type:kNumPadType];
                  [one setImage:[UIImage imageNamed:@"1.png"] forState:UIControlStateNormal];
                  [one addTarget:self action:@selector(buttonClickAtIndex:) forControlEvents:UIControlEventTouchUpInside];
                      //......略
              }


            添加NSMutalbeString作為文本域字串的容器,點擊button后append的button對應的字串。
            復制代碼

            1. - (void)buttonClickAtIndex:(id)sender
              {
                  SearBtn *btnItem = (SearBtn*)sender;
                  NSString *str = btnItem->btnText;
                  [s_text appendString:str];
                  [sBar setText:s_text];
              }
            ;

            再實現一個deleteChar的方法作為退格鍵
            思路:
            復制代碼

            1. if ([s_text length] > 0)
                  {
                      NSRange rang;
                      rang.location = [s_text length] - 1;
                      rang.length = 1;
                      [s_text deleteCharactersInRange:rang];
                  }


            現在點擊各種文本域,應該就可以現實自己的鍵盤了。

            繼續優化
            用textfield的代理方法控制鍵盤的字串類型,長度,和響應消失
            @import url(http://www.shnenglu.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);

            轉自:http://www.cocoachina.com/bbs/simple/?t12429.html
            posted on 2011-10-26 22:06 會飛的兔子 閱讀(772) 評論(0)  編輯 收藏 引用 所屬分類: 蘋果相關
            久久精品麻豆日日躁夜夜躁| 色综合合久久天天给综看| 亚洲AV无码久久| 久久97精品久久久久久久不卡| 亚洲国产精品久久久久婷婷软件 | 狠狠色丁香久久综合婷婷| 996久久国产精品线观看| 久久伊人精品青青草原日本| 午夜欧美精品久久久久久久| 久久精品一区二区三区不卡| 亚洲性久久久影院| 狠狠狠色丁香婷婷综合久久俺| 久久久午夜精品| 中文字幕一区二区三区久久网站| 久久丫忘忧草产品| 国产精品欧美久久久久无广告 | 亚洲国产精品热久久| 国产一区二区久久久| 久久精品国产亚洲Aⅴ香蕉| 中文字幕乱码久久午夜| 久久久久国产精品三级网| 国产精品无码久久久久久| 久久综合久久综合亚洲| 久久九九久精品国产| 国产欧美久久一区二区| 狠狠88综合久久久久综合网| 伊人情人综合成人久久网小说| 一本色道久久88加勒比—综合| 国产成人久久精品一区二区三区| 区久久AAA片69亚洲| 色偷偷88欧美精品久久久| 精品国产青草久久久久福利| 精品久久777| 久久免费线看线看| 国产精品嫩草影院久久| 精品久久久久一区二区三区| 国产精品嫩草影院久久| 久久青青草原精品国产不卡| 久久久久这里只有精品| 欧美黑人激情性久久| 久久久久久伊人高潮影院 |