[iOS] UITextField 隱藏 keyboard

假設現在有兩個 UITextField 打完字按視窗要把keyboard縮下去

要先在class 加上 UITextFieldDelegate

後面設定請參考

//class need add : UITextFieldDelegate
override func viewDidLoad() {
super.viewDidLoad()
//delegate
discountTextField.delegate = self
sizeTextField.delegate = self
//add gesture to view
self.view.addGestureRecognizer(UITapGestureRecognizer(target: self, action: #selector(InvCalcViewController.dismissKeyboard)))
}
// dismiss keyboard function
func dismissKeyboard(){
sizeTextField.resignFirstResponder()
discountTextField.resignFirstResponder()
}


[iOS] Alamofire 安裝

如果沒有 CocoPods 請先安裝

STEP1.在Xcode開一個project  然後 關掉Xcode

STEP2. 利用 terminal cd 到剛剛的project 資料夾

STPE3. terminal 下指令" pod init"

STEP4. project 資料夾內會多出Podfile ,編輯Podfile

STEP5. Podfile裡面填入
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '9.0'
use_frameworks!
target 'ProjectName' do
pod 'Alamofire', '~> 3.4'
end
view raw gistfile1.txt hosted with ❤ by GitHub

ProjectName 就是你Xcode project的名稱


STEP6. terminal 下指令" pod install"

STEP7. 最後在project 內記得要 import Alamofire


如果出現

App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. Temporary exceptions can be configured via your app's Info.plist file.


在info.plist 按右鍵 -> open as source code 加入下面
NSAppTransportSecurity
   
        NSAllowsArbitraryLoads
       
    

[iOS] checkbok 使用 google material icon 製作

恩....iOS竟然沒check box 的元件可以用

只能用google material icon 代替了

STEP.01

https://design.google.com/icons/#ic_radio_button_checked

去google material icon下載 png 檔案


[iOS] checkbok 使用 google material icon 製作

恩....iOS竟然沒check box 的元件可以用

只能用google material icon 代替了

STEP.01

https://design.google.com/icons/#ic_radio_button_checked

去google material icon下載 png 檔案


[iOS] checkbok 使用 google material icon 製作

恩....iOS竟然沒check box 的元件可以用

只能用google material icon 代替了

STEP.01

https://design.google.com/icons/#ic_radio_button_checked

去google material icon下載 png 檔案

[iOS] Internal Rate of Return(IRR) calculator for swift version

恩....需要計算IRR就參考這裡改成swift版本的

有需要請自行取用

GitHub : https://github.com/openopen114/IRR_calculator_swift_version"


// IRR swift version
// openopen114@gmail.com
// reference http://www.codeproject.com/Tips/461049/Internal-Rate-of-Return-IRR-Calculation
// 2016/06/23
import UIKit
func computeIRR(cashFlows:[Int],numOfFlows:Int) -> Double{
//const
let LOW_RATE = 0.01 // 1%
let HIGH_RATE = 0.5 //50%
let MAX_ITERATION = 1000 //iteration
let PRECISION_REQ = 0.00000001 //percision
//variable
var old: Double = 0.00;
var new: Double = 0.00;
var oldguessRate: Double = LOW_RATE;
var newguessRate: Double = LOW_RATE;
var guessRate: Double = LOW_RATE;
var lowGuessRate: Double = LOW_RATE;
var highGuessRate: Double = HIGH_RATE;
var npv: Double = 0.0;
var denom: Double = 0.0;
for i in 0 ..< MAX_ITERATION {
npv = 0.00;
for j in 0..<numOfFlows{
denom = pow(1 + guessRate,Double(j));
npv = npv + (Double(cashFlows[j])/denom);
}
if((npv > 0) && (npv < PRECISION_REQ)){break;}
if(old == 0){
old = npv;
}else{
old = new;
}
new = npv;
if(i > 0)
{
if(old < new)
{
if(old < 0 && new < 0){
highGuessRate = newguessRate;
}else{
lowGuessRate = newguessRate;
}
}
else
{
if(old > 0 && new > 0){
lowGuessRate = newguessRate;
}else{
highGuessRate = newguessRate;
}
}
}
oldguessRate = guessRate;
guessRate = (lowGuessRate + highGuessRate) / 2;
newguessRate = guessRate;
}
return guessRate
}
//Test
/*
var cf = [Int]()
var numOfFlows:Int;
cf.append(-224988)
cf.append(34662)
cf.append(34312)
cf.append(33962)
cf.append(33612)
cf.append(33262)
cf.append(32912)
cf.append(32562)
cf.append(32212)
cf.append(31862)
cf.append(31512)
cf.append(31162)
cf.append(30812)
cf.append(30462)
cf.append(30112)
cf.append(29762)
cf.append(29412)
cf.append(29062)
cf.append(28712)
cf.append(28362)
numOfFlows = 20;
var irr = computeIRR(cf, numOfFlows:numOfFlows);
print("\nFinal IRR: %.3f", irr);
*/
view raw IRR.swift hosted with ❤ by GitHub

[iOS] Xcode thread 1 signal sigabrt 錯誤

通常是連結錯誤

但有時又不知道是哪裡或是哪個IBOutlet

想這次是 table view 的 Identifier 忘記改(因為是直接複製過來的)


可是錯誤只有說  thread 1 signal sigabrt  .....

[解決] Xampp php 連接 MS SQL server sqlsrv問題

剛在試 php 連MS SQL server 2014

google 一下就有很多篇圖文並茂的教學

有成功的話在 phpinfo.php 頁面上會出現 sqlsrv


沒出現就是失敗了

[iOS] ActivityIndicator 用法

恩....通常在載入東西等待時可以用ActivityIndicator

用法很簡單只要設定開始跟停止,還有停止後隱藏

例如載入網頁時


//class saleWebViewController: UIViewController, UIWebViewDelegate
@IBOutlet weak var spinner: UIActivityIndicatorView!
//網頁開始Load
func webViewDidStartLoad(webView: UIWebView) {
spinner.startAnimating() //開始轉
}
//網頁Load好了
func webViewDidFinishLoad(webView: UIWebView) {
spinner.stopAnimating() //停
}
view raw spinner.swift hosted with ❤ by GitHub


要停止後隱藏,要在這設定勾選

[iOS] NSURL中文網址Crash解決辦法

要是網址中有中文或其他符號有可能造成在開網頁時使得App crash 

像是UIWebView開新網頁時 

所以網址字串後面要用.stringByAddingPercentEncodingWithAllowedCharacters(.URLHostAllowedCharacterSet())!處理

就像這樣
//GG crach
let webViewURL001: String = "http://text.com/?q1=我是中文&q2=我是符號%%%"
//Good to go with string.stringByAddingPercentEncodingWithAllowedCharacters(.URLHostAllowedCharacterSet())!
let webViewURL002: String = "http://text.com/?q1=我是中文&q2=我是符號%%%".stringByAddingPercentEncodingWithAllowedCharacters(NSCharacterSet.URLQueryAllowedCharacterSet())!
let url = NSURL(string: webViewURL002)
view raw stringURL.swift hosted with ❤ by GitHub


[iOS] Alamofire 載入 json 檔前先清 cache

在讀取外部json檔案時,iOS都會讀到cache裡面的
所以就算json有更新,iOS還是抓到cache 舊的json檔

所以要先清cache
NSURLCache.sharedURLCache().removeAllCachedResponses()// remove/clear cache

然後在載入json檔案
Alamofire.request(.GET,urlString).responseJSON { (response) in
if let JSON = response.result.value{
let jsonObj = JSON as! NSArray
for p in jsonObj {
// append to Array
}
}
}
頁面 1 / 5: 12345 下一頁
蔡松霖
Related Posts with Thumbnails