swift 代码笔记2

来源:互联网 发布:简单的c语言编程例题 编辑:程序博客网 时间:2024/06/06 05:14

1/  swift 调用XIB   别忘了加这一句  

 NSBundle.mainBundle().loadNibNamed("TTSearchDeviceViewController", owner: self, options:nil)


2/  获取Wi-Fi名称  必须加上    SystemConfiguration 框架

/**

 *

 *  //MARK:- 获取连接wifi

 */

+ (NSString *)getWifiName

{

   NSString *wifiName = nil;

    

   CFArrayRef wifiInterfaces = CNCopySupportedInterfaces();

    

   if (!wifiInterfaces) {

       return nil;

    }

    

   NSArray *interfaces = (__bridgeNSArray *)wifiInterfaces;

    

   for (NSString *interfaceNamein interfaces) {

       CFDictionaryRef dictRef = CNCopyCurrentNetworkInfo((__bridge CFStringRef)(interfaceName));

        

       if (dictRef) {

           NSDictionary *networkInfo = (__bridgeNSDictionary *)dictRef;

            wifiName = [networkInfoobjectForKey:(__bridgeNSString *)kCNNetworkInfoKeySSID];

           CFRelease(dictRef);

        }

    }

    

   CFRelease(wifiInterfaces);

   return wifiName;

}


3/    设置按钮的圆角  

self.searchButton.layer.cornerRadius =self.searchButton.frame.size.width/2

self.addButton.layer.masksToBounds =true

self.addButton.layer.cornerRadius =5


4/   添加手势  

let tap =UITapGestureRecognizer(target: self, action: "disMissKeyBoard")

        self.bgView.addGestureRecognizer(tap)


5/  当输入文字的时候 移动键盘 
(1) 添加通知 

NSNotificationCenter.defaultCenter().addObserver(self, selector: "keyboardWillShow:", name:UIKeyboardWillShowNotification, object: nil)


(2)

    //MARK:- NSNotification Method

   func keyboardWillShow(notification:NSNotification){

       let keyboardRect = (notification.userInfoas? NSDictionary)?.objectForKey(UIKeyboardFrameEndUserInfoKey)?.CGRectValue()

       self.moveBgViewAnimation(keyboardRect)

    }

//移动bgVIew

   private func moveBgViewAnimation(keyboardRect:CGRect?){

       if let rect = keyboardRect {

           let boardY = rect.origin.y

            //其中64是因为键盘的坐标是相对于window

           var keyBoardDisHeight:CGFloat =0.0

           if self.ssidTextField.isFirstResponder() {

                keyBoardDisHeight  =self.ssidTextField.frame.origin.y +self.ssidTextField.frame.size.height +64 - boardY

            }else{

                keyBoardDisHeight  =self.passwordField.frame.origin.y +self.passwordField.frame.size.height +64 - boardY

            }

           if keyBoardDisHeight > 0{

               var viewFrame = self.bgView.frame

                viewFrame.origin.y = -(keyBoardDisHeight +10)

               UIView.animateWithDuration(0.5, animations: { () ->Void in

                   self.bgView.frame = viewFrame

                })

            }

          

        }

        

    }


(3)添加手势 触发方法  隐藏键盘 

//隐藏键盘

    func disMissKeyBoard(){

       self.view.endEditing(true)

       var viewFrame = self.bgView.frame

        viewFrame.origin.y =0

       UIView.animateWithDuration(0.5, animations: { () ->Void in

           self.bgView.frame = viewFrame

        })

    }










0 0