2017-01-19 2 views
0

私はiosのためにプレイグラウンドでユーザーからの動的入力を取得しようとしていますが、動作していません。私は次のコードを試みたが、それは仕事をしなかった。xcode 8.2のplaygroundプロジェクトでswiftを使用しているユーザーからの入力を取得するにはどうすればよいですか?

import Foundation 
import UIKit 
func input() -> String { 
    var keyboard = FileHandle.standardInput 
    var inputData = keyboard.availableData 
    var strData = NSString(data: inputData, encoding: String.Encoding.utf8.rawValue)! 

    return strData.trimmingCharacters(in: NSCharacterSet.newlines) 
} 

input() 
+0

私はそうは思わないプレイグランドでコマンドライン入力を取得することが可能です。 – ebby94

答えて

0

は、あなたが使用してXcodeプロジェクトでそれを行うことができ、なんとかではありません。

print("Please enter your name") 
var name = readLine() 
print("name: \(name!)") 

または:

func input() -> String { 
    let keyboard = FileHandle.standardInput 
    let inputData = keyboard.availableData 
    return String(data: inputData, encoding: .utf8)! 
} 

print("Please enter your name") 
var nmae = input() 
print("line: \(name)") 
1

次のように、テキストフィールドからあなたの遊び場の入力を取得することができます:遊び場からの入力を取得する

import PlaygroundSupport 
    import UIKit 

    class V: UIViewController { 
     var textField = UITextField(frame: CGRect(x: 20, y: 20, width: 200, height: 24)) 
     override func viewDidLoad() { 
      super.viewDidLoad() 
      view.addSubview(textField) 
      textField.backgroundColor = .white 
      textField.delegate = self 
     } 
    } 
    extension V: UITextFieldDelegate { 
     func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool { 
      // Do stuff here 
      return true 
     } 
    } 
    let v = V() 
    v.view.frame = CGRect(x: 0, y: 0, width: 300, height: 300) 
    PlaygroundPage.current.liveView = v.view 
    PlaygroundPage.current.needsIndefiniteExecution = true 
関連する問題