Swift

全50件中21~40件表示
  • swift データの保存、読み込みについて

    swiftのデータ保存と読み込みについて学習しています。 saveボタンを押すとテキストフィールドの文字が保存され、switchボタンを押すと保存された文字列が表示され、文字列が表示されている場合はその文字列を消去するプログラムを書いたのですが、実行してみるとデータ保存がうまくいっていないようでした。 どこに問題があるのでしょうか。回答をお願いします。 以下ソースコードです import UIKit class ViewController: UIViewController { @IBOutlet weak var word1: UITextField! override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } @IBAction func save1(sender: AnyObject) { let ud1a = NSUserDefaults.standardUserDefaults() ud1a.setObject(word1.text, forKey: "saveText1") } @IBAction func switch1(sender: AnyObject) { let ud1b = NSUserDefaults.standardUserDefaults() if(word1.text == nil){ var loadText1:String! = ud1b.stringForKey("saveText1") word1.text = loadText1 } else{ word1.text = nil } }

  • swiftのsprite kitで質問です(2)

    続きです。 override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) { for touch: AnyObject in touches { let location = touch.locationInNode(self) let midX = CGRectGetMidX(self.frame) let midY = CGRectGetMidY(self.frame) let area2 = (location.x - midX) / (location.y - (midY - (midY / 5.0))) if location.y > midY - (midY / 5.0) { if area2 >= -1 && area2 <= 1 { let area1 = ((location.x - midX) / (location.y - midY)) if location.y - midY <= 0 && location.x - midX <= 0 { print("left") } else if location.y - midY < 0 && location.x - midX > 0 { print("right") } else if area1 < -0.3 { print("left") } else if area1 >= -0.3 && area1 <= 0.3 { print("center") } else if area1 > 0.3 { print("right") } myImage.position = location var position = CGPointZero position = self.convertPointFromView((touches.first?.locationInView(view))!) let path = CGPathCreateMutable() CGPathMoveToPoint(path, nil, position.x, position.y) //CGPathAddCurveToPoint(path, nil, position.x , position.y , midX, midY, midX, midY) if let theNode = self.childNodeWithName("curve") { theNode.removeFromParent() } let shapeNode = SKShapeNode(path: path) shapeNode.name = "curve" self.addChild(shapeNode) } } } } //打球種 SegmentedControlの値が変わったときに呼び出される. func segconChanged1(segcon: UISegmentedControl){ let path = CGPathCreateMutable() CGPathMoveToPoint(path, nil, position.x, position.y) let midX = CGRectGetMidX(self.frame) let midY = CGRectGetMidY(self.frame) guard let shapeNode = childNodeWithName("curve") as? SKShapeNode else { return } switch segcon.selectedSegmentIndex { case 0: CGPathAddCurveToPoint(path, nil, position.x , position.y , midX, midY, midX, midY) case 1: CGPathAddCurveToPoint(path, nil, (position.x + midX) / 2.0 , position.y , midX, midY, midX, midY) case 2: CGPathAddCurveToPoint(path, nil, (position.x + midX) / 2.0 , (position.y + (midY / 1.5)), midX, midY, midX, midY) default: print("Error") } shapeNode.lineWidth = 1.0 } //結果 SegmentedControlの値が変わったときに呼び出される. func segconChanged(segcon: UISegmentedControl){ // shapeNodeを取得 guard let shapeNode = childNodeWithName("curve") as? SKShapeNode else { return } switch segcon.selectedSegmentIndex { case 0: shapeNode.strokeColor = UIColor.redColor() case (1...4): shapeNode.strokeColor = UIColor.greenColor() case (5...6): shapeNode.strokeColor = UIColor.yellowColor() default: print("Error") } shapeNode.lineWidth = 1.0 } } 以上、よろしくお願いします。

  • swiftのsprite kitで質問です(1)

    当方、swift初心者です。 sprite kitで野球のアプリを作っています。 バッターが打った打球の軌跡をSKShapeNodeを使って、 ゴロ  → 直線 ライナー→ ゆるい曲線 フライ → 強い曲線 を表示したいと思っています。 下記は、一番最初にボールを画面の中心に表示しておき、 打球の到達地点をタップするとそこにボールが移動 打球種のUISegmentedControlをタップすると、直線・ゆるい曲線・強い曲線を表示 結果のUISegmentedControlをタップすると、その軌跡の色が、赤・緑・黄に変わる というものです。 結果のUISegmentedControlは出来上がったのですが、打球種のUISegmentedControlが表示できません。 どなたか詳しい方がいらっしゃれば、ご教授いただけないでしょうか? import SpriteKit class GameScene: SKScene { var myImage : SKSpriteNode! override func didMoveToView(view: SKView) { //背景画像 let backGround = SKSpriteNode(imageNamed:"stadium414736.png") let Label = SKLabelNode(text: "\(self.size)") Label.position = CGPointMake(self.size.width/2.0,self.size.height/2.0) backGround.position = CGPointMake(CGRectGetMidX(self.frame), CGRectGetMidY(self.frame)) backGround.size = self.size backGround.zPosition = -CGFloat.infinity self.addChild(backGround) self.backgroundColor = UIColor.blueColor() myImage = SKSpriteNode(imageNamed:"ball04.png") myImage.position = CGPoint(x:CGRectGetMidX(self.frame), y:CGRectGetMidY(self.frame)); self.addChild(myImage) // ラベル 打球種 let dakyuushu = SKLabelNode(fontNamed:"Chalkduster") dakyuushu.text = "打球種" dakyuushu.fontSize = 15 dakyuushu.position = CGPoint(x:(size.width / 10.0) * 1 , y:(size.height / 35) * 11.1) dakyuushu.fontColor = UIColor.whiteColor() self.addChild(dakyuushu) //選択肢 let myArray1: NSArray = [" ゴロ ", " ライナー ", " フライ " ] // SegmentedControlを作成する. let dakyuushu1: UISegmentedControl = UISegmentedControl(items: myArray1 as [AnyObject]) dakyuushu1.center = CGPoint(x:(size.width / 10.0) * 5.8 , y:(size.height / 35) * 23.5) dakyuushu1.tintColor = UIColor.yellowColor() dakyuushu1.addTarget(self, action: "segconChanged1:", forControlEvents: UIControlEvents.ValueChanged) self.view!.addSubview(dakyuushu1) // ラベル 結果 let kekka = SKLabelNode() kekka.text = "結果" kekka.fontSize = 15 kekka.position = CGPoint(x:(size.width / 10.0) * 1 , y:(size.height / 35) * 5.5) kekka.fontColor = UIColor.whiteColor() self.addChild(kekka) //選択肢 let myArray: NSArray = ["Out ", "1BH ", "2BH ", "3BH ","HR ", "ERR ", "Fc " ] // SegmentedControlを作成する. let kekka1: UISegmentedControl = UISegmentedControl(items: myArray as [AnyObject]) kekka1.center = CGPoint(x:(size.width / 10.0) * 5 , y:(size.height / 35) * 31) kekka1.tintColor = UIColor.yellowColor() kekka1.addTarget(self, action: "segconChanged:", forControlEvents: UIControlEvents.ValueChanged) self.view!.addSubview(kekka1) } 長文なので、続きます。

  • Swiftについて教えてください

    カメラロールにある写真をUICollectionViewCellに読み込んで表示させ、その写真をタッチしたときに、その写真のURL(保存されているカメラロールまでのパス?)を取得し、配列に格納しようと考えています。 「ALassetslibrary url 取得」というキーワードなどで調べてみたのですが、Objective-Cで書かれたものやimagePickerControllerを使ったもがほとんどでで、よくわかりませんでした。 http://tryworks-design.com/?p=2282 http://tech.camph.net/%E3%80%90ios%E3%80%91iphone%E3%81%AE%E3%82%AB%E3%83%A1%E3%83%A9%E3%83%AD%E3%83%BC%E3%83%AB%E3%81%AB%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%81%99%E3%82%8Bassetslibrary%E3%81%AB%E3%81%A4%E3%81%84/ ライブラリ内でのURL  [[asset defaultRepresentation] url] //AssetURL(NSURL*型) Swiftでの情報で http://qiita.com/BOPsemi/items/9a0338635647cd34c910 があったので、var library = ALAssetsLibrary()とし、 libraryのassetForURLというメソッドを使うのかなど調べてみたのですがよく分かりませんでした。 UICollectionViewCellに読み込んで表示させ、その写真をタッチしたときの func collectionView(collectionView: UICollectionView, didSelectItemAtIndexPath indexPath: NSIndexPath) { } の中でどのような処理をすれば良いのでしょうか?教えてください。よろしくお願いします。

    • ベストアンサー
    • Swift
    • dkong
    • 回答数1
  • Swiftについて教えてください

    UICollectionviewに読み込んだ画像をタッチして枠線と番号を表示させようと下記のようにしてみたのですが、最後のセルにだけラベルの番号が表示されます。(枠を消したら数字も減ります)各セルにはラベルはきちんと配置されています。それをnumLabel.hidden = trueで消しておいて、セルをタッチした時にnumLabel.hidden = falseで表示させようとし考えています。なぜ最後のセルだけなのでしょうか。教えてください。よろしくお願いします。 import UIKit class ViewController: UIViewController ,UICollectionViewDataSource, UICollectionViewDelegate{ //画像を格納する配列 var imageArray:[UIImage] = [] //番号ラベル let numLabel: UILabel = UILabel(frame: CGRectMake(0,0,30,30)) //選択したIndexPath格納する配列 var selection: [NSIndexPath] = [] //コレクションビュー @ IBOutlet weak var imageCollection:UICollectionView? override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. //配列imageArrayに1~6.pngの画像データを格納 for i in 1...6{ imageArray.append(UIImage(named: "\(i).png")!) } } //コレクションビューのアイテム数を設定 func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { //戻り値にimageArrayの要素数を設定 return imageArray.count } //コレクションビューのセルを設定 func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell { //繰り返し使用することができるUICollectionViewCellのインスタンスを作成 var cell = collectionView.dequeueReusableCellWithReuseIdentifier("Cell", forIndexPath: indexPath) as! UICollectionViewCell //セルのなかの画像を表示するImageViewのタグを指定 let imageView = cell.viewWithTag(1) as! UIImageView //セルの中のImage Viewに配列の中の画像データを表示 imageView.image = imageArray[indexPath.row]   //ラベルの設定 // 背景を青色にする. numLabel.backgroundColor = UIColor.blueColor() // 文字の色を白にする. numLabel.textColor = UIColor.whiteColor() //文字サイズ numLabel.font = UIFont.systemFontOfSize(12); // Textを中央寄せにする. numLabel.textAlignment = NSTextAlignment.Center //ラベルを非表示にする numLabel.hidden = true //セルにラベルを配置 cell.addSubview(numLabel) //設定したセルを戻り値にする return cell } //セルをタップしたとき func collectionView(collectionView: UICollectionView, didSelectItemAtIndexPath indexPath: NSIndexPath) { let cell = collectionView.cellForItemAtIndexPath(indexPath)! if let index = find(selection, indexPath) { selection.removeAtIndex(index) } else { selection.append(indexPath) } // 可視状態のセルを全て更新する collectionView.visibleCells().map({(cell: AnyObject) -> Void in self.updateCell(cell as! UICollectionViewCell) }) } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } //セルの更新 func updateCell(cell: UICollectionViewCell) { if let indexPath = self.imageCollection?.indexPathForCell(cell){ if let index = find(selection, indexPath) { cell.contentView.layer.borderColor = UIColor.blueColor().CGColor cell.contentView.layer.borderWidth = 4.0 numLabel.hidden = false numLabel.text = "\(index+1)" } else { cell.contentView.layer.borderColor = UIColor.clearColor().CGColor cell.contentView.layer.borderWidth = 0.0 numLabel.hidden = true } } } }

    • ベストアンサー
    • Swift
    • dkong
    • 回答数2
  • Swiftについて教えてください

    UICollectionViewのUICollectionViewCellに読み込んで表示した写真をタッチし、その写真に枠をつけようと思い、下記のようにしたのですが、枠が表示されません。タッチした写真に枠を付けるにはどのようにすればいいのでしょうか?教えてください。 func collectionView(collectionView: UICollectionView, didSelectItemAtIndexPath indexPath: NSIndexPath) { //print("touch") var cell = collectionView.dequeueReusableCellWithReuseIdentifier("Cell", forIndexPath: indexPath)as! UICollectionViewCell //print(cell) cell.contentView.layer.borderColor = UIColor.redColor().CGColor cell.contentView.layer.borderWidth = 5.0 }

    • ベストアンサー
    • Swift
    • dkong
    • 回答数3
  • Swiftについて教えてください

    カメラロールにある写真をUICollectionViewに読み込み表示させようと思い、いろいろ調べながら下記のようにしてみたのですが、表示されません。swiftでALAssetをUICollectionViewで表示させるなどのやり方を調べてみたのですが、わかりませんでした。(英語のサイトなどにあったかもしれませんが…)swiftでALAssetをUICollectionViewで表示させかた教えてください。 import UIKit import AssetsLibrary class ViewController: UIViewController, UICollectionViewDataSource, UICollectionViewDelegate { var assets : NSMutableArray = [] var groups = ALAssetsGroup() override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. self.groups.enumerateAssetsUsingBlock({ (asset: ALAsset!, index: Int, stop: UnsafeMutablePointer<ObjCBool>) -> Void in if asset != nil { self.assets.insertObject(asset!, atIndex: 0) } }) } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { return self.assets.count; } func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell { var cell = collectionView.dequeueReusableCellWithReuseIdentifier("Cell", forIndexPath: indexPath)as! UICollectionViewCell let asset :ALAsset = self.assets[indexPath.item] as! ALAsset; (cell.viewWithTag(1) as! UIImageView).image = UIImage(CGImage: asset.thumbnail().takeUnretainedValue()) return cell }

    • ベストアンサー
    • Swift
    • dkong
    • 回答数3
  • swiftでOCRを利用したサンプルコードを書いて

    http://blog.isana.net/2014/08/ios.html 上記サイトを参考にobjective-Cをswiftに書き換えているのですが、どうしてもエラーが取れない場所があり、困っています。以下に記述するので、回答をお願いします。 import UIKit class ViewController: UIViewController,UIImagePickerControllerDelegate, UINavigationControllerDelegate { @IBOutlet weak var Textview: UITextView! @IBOutlet weak var Imageview: UIImageView! override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } @IBAction func Camera(sender: AnyObject) { var imagePickerController: UIImagePickerController = UIImagePickerController() //デリゲート指定 imagePickerController.delegate = self //トリミング指定 imagePickerController.allowsEditing = true //カメラの有無確認 if UIImagePickerController.isCameraDeviceAvailable(UIImagePickerControllerCameraDevice.Rear){ //カメラ指定 imagePickerController.sourceType = .Camera } else { //アルバム指定 imagePickerController.sourceType = .SavedPhotosAlbum } //コントローラ起動 self.presentViewController(imagePickerController, animated: true, completion: nil) } func ImagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [NSObject : AnyObject]) { /*ここから //イメージをメモリに保存 var selectedImage:UIImage self.selectedImage = info objectForKey:UIImagePickerControllerEditedImage //イメージビューに画像をセット self.Imageview.image = self.selectedImage ここ*/ //親ビューに戻る self.dismissViewControllerAnimated(true, completion: nil) //テキストを空に self.Textview.text = nil //インジケータ開始 var spinner: UIActivityIndicatorView = UIActivityIndicatorView(activityIndicatorStyle: UIActivityIndicatorViewStyle.Gray) spinner.center = CGPointMake(160, 240) spinner.hidesWhenStopped = true view.addSubview(spinner) spinner.startAnimating() //OCR実行 dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), { var tesseract: Tesseract = Tesseract(language: "eng") tesseract.image = selectedImage tesseract.recognize() dispatch_async(dispatch_get_main_queue(), { self.Textview.text = tesseract.recognizedText spinner.stopAnimating() }) }) } } コメントアウトで示した部分の書き換えがどうしてもわからないです。 また、エラーが出てないだけでうまく動作がしないと思われる部分があれば、教えていただけると助かります。 回答宜しくお願いします。

  • Swiftについて教えてください

    swiftとphpの連携を考えています。 1.Objective-Cから、PHPファイルに同期通信 2.phpファイル内で配列を生成し、パスを代入していく 3.phpの配列をswiftの配列に取り込む としたいのですが、phpの配列をswiftの配列に渡す部分がどうしたらいいのか分かりません。 phpもswiftも初心者です。同期通信の部分もよく分かってないです。具体的に詳しく教えていただけるとありがたいです。よろしくお願いします。 swift----------------------------------------------------------------------------- // URLリクエストを作る let url = NSURL(string:"http://xxxxxxxxxxxx/xxxxx/xxx.php") let request = NSURLRequest(URL : url!) var error: NSError? // 同期通信を開始 if let resData:NSData = NSURLConnection.sendSynchronousRequest(request, returningResponse: nil, error: &error){     この部分で何かするのでしょうか? } xxx.php------------------------------------------------------------------ <?php //配列 $array = array();   // ディレクトリのパスを記述 $dir = "xxxxxxxxx/" ; // ディレクトリの存在を確認し、ハンドルを取得 if( is_dir( $dir ) && $handle = opendir( $dir ) ) { // ループ処理 while( ($file = readdir($handle)) !== false ) { // ファイルのみ取得 if( filetype( $path = $dir . $file ) == "file" ) { $urltxt = " http://xxxxxxxxxxxxxxxxxx/" . $path ; array_push($array, $urltxt); } } } ?>

    • ベストアンサー
    • Swift
    • dkong
    • 回答数4
  • swiftでOCRを利用したアプリを開発したいです

    http://blog.isana.net/2014/08/ios.html 上記サイトを参考にOCR機能を利用したプログラムを書いています しかし、objective-Cで記述されており、swiftへどう書き換えたら良いかわかりません 変換のサイトを使ってみたのですが、エラーが多発しており困っています。 以下のコードをどう書き換えたら良いでしょうか 回答をお願いします @IBAction func Camera(sender: AnyObject) { var imagePickerController: UIImagePickerController = UIImagePickerController() imagePickerController.setDelegate(self) imagePickerController.setAllowsEditing(true) if UIImagePickerController.isCameraDeviceAvailable(UIImagePickerControllerCameraDeviceRear) { imagePickerController.setSourceType(UIImagePickerControllerSourceTypeCamera) } else { imagePickerController.setSourceType(UIImagePickerControllerSourceTypeSavedPhotosAlbum) } presentViewController(imagePickerController, animated: true, completion: nil) } func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [NSObject : AnyObject]) { self.selectedImage = info[UIImagePickerControllerEditedImage] imageView.setImage(selectedImage) dismissViewControllerAnimated(true, completion: nil) textView.setText(nil) var spinner: UIActivityIndicatorView = UIActivityIndicatorView(activityIndicatorStyle: UIActivityIndicatorViewStyleGray) spinner.center = CGPointMake(160, 240) spinner.hidesWhenStopped = true view.addSubview(spinner) spinner.startAnimating() }

    • ベストアンサー
    • Swift
  • Swiftについて教えてください

    下記のようにようにサーバにある画像を読み込んでいます。サーバのimgフォルダの中の画像( 1.png~20.png)を全て読み込み配列に入れる方法を質問して、回答をいただき解決しました。(以下のコード)それを拡張してサーバのimgフォルダの中の画像の数が分かってないものを配列に読み込もうとしています。画像の数が分かってないものを全て読み込み配列に入れる方法が分からず困っています。よろしくお願いします。 // URLリクエストを作る for i in 1...20 { let url = NSURL(string:"http://xxxxxxxxxxxxxxxx/img/"+String(i)+".png") let request = NSURLRequest(URL : url!) var error: NSError? // 同期通信を開始 if let resData:NSData = NSURLConnection.sendSynchronousRequest(request, returningResponse: nil, error: &error){ let image = UIImage(data:resData) self.imageArray.append(image!) } }

    • dkong
    • 回答数1
  • UITableViewDataSourceエラー

    xcode 7.1 (7B91b)を使用しています。 SwiftでViewControllerにUItableViewを追加した時に、 クラスの定義でdoes not conform to protocol ‘UITableViewDataSource’エラーが発生します。 サイトで調べた結果2つのメソッドを記載することとして、下記を追加しましたが、 一向にエラーが取れません。他なにか要因がありますでしょうか?ご教示のほどよろしくお願いします。 func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int{ } func tableView(tableView: UITableView,cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell{ return UITableViewCell() } 全体 class ShopListViewController: UIViewController, UITableViewDelegate, UITableViewDataSource{ } func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int{ } func tableView(tableView: UITableView,cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell{ return UITableViewCell() }

    • ベストアンサー
    • Swift
  • swiftでカメラの文字認識を使いたいです

    swift初心者です 現在、カメラによる文字認識を行う技術の取得をしたいと思い、ネットで検索をしまして、 http://blog.isana.net/2014/08/ios.html 上記のサイトを参考にサンプルコードを作成しています。 しかし、上記サイトはobjective-Cの記述方法のようで、ViewController.mやViewController.hがViewControler.swiftに統合されているswiftでは、上記サイトのソースコードはどのように記述したらよいのでしょうか。 もしくは、他に比較的簡単にカメラでの文字認識を行える方法があればご教授願いたいです。 回答よろしくお願いします

  • swift初心者で、計算機を作っています

    swiftで計算機を作っています。 しかし、エラーが出てしまいます nilを代入するのがいけないらしいことは分かったのですが、ではどうしたらよいのかいろいろ調べていろいろ行ったのですが(変数への代入をボタンの関数内したり、変数宣言をstring?にしたり、計算にnumberBox.textを直接キャストしたものを用いる、などなど)、どうしても治りません。 この記述をこう直せばいい、という回答をお願いします。 import UIKit class ViewController: UIViewController { @IBOutlet weak var result: UILabel! @IBOutlet weak var numberBox1: UITextField! @IBOutlet weak var numberBox2: UITextField! var num1:String = "" var num2 = 0 var num3:String = "" var num4 = 0 var res = 0 @IBOutlet weak var button1: UIButton! @IBAction func button1(sender: AnyObject) { add() } @IBOutlet weak var button2: UIButton! @IBAction func button2(sender: AnyObject) { sub() } @IBOutlet weak var button3: UIButton! @IBAction func button3(sender: AnyObject) { mul() } @IBOutlet weak var button4: UIButton! @IBAction func button4(sender: AnyObject) { div() } override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. result.text = "計算結果" num1 = numberBox1.text! num2 = Int(num1)! num3 = numberBox2.text! num4 = Int(num3)! button1.setTitle("+", forState: .Normal) button2.setTitle("-", forState: .Normal) button3.setTitle("✖️", forState: .Normal) button4.setTitle("➗", forState: .Normal) } func add(){ res = num2 + num4 result.text = String(res) } func sub(){ res = num2 - num4 result.text = String(res) } func mul(){ res = num2 * num4 result.text = String(res) } func div(){ res = num2 / num4 result.text = String(res) } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } } エラーメッセージ fatal error: unexpectedly found nil while unwrapping an Optional value (lldb) 回答をよろしくお願いします

    • ベストアンサー
    • Swift
  • Swiftでroot.plistの値が読めない

    現在iOSアプリの開発を行っています。 本体標準の設定アプリ内の各アプリの設定(SettingsBundle)でユーザーが設定した値を、アプリ内で使用したいと思っています。 しかし、一度設定画面を開いて設定をしないと、値を取得できないということが分かったので、以下のようなコードにしました。 let ud = NSUserDefaults.standardUserDefaults().stringForKey("tweetTemplate_preference") if let templateItem = ud {  self.tweetTemplate = templateItem }else{  self.tweetTemplate = "default" } これで、 「SettingBundleのIdentifierが"tweetTemplate_preference"となっている項目から値を取得し、自クラスのtweetTemplateという属性に代入される。もしも一度も設定していなければ、問答無用でtweetTemplateに"default"が代入される。」 という認識なのですが、間違ってますでしょうか…? これをコーディングしていたプロジェクトではうまく動作せず、設定後も"default"が代入されてしまいました。 そこで、新しくプロジェクトを作り、 let ud = NSUserDefaults.standardUserDefaults().stringForKey("name_preference") if let templateItem = ud {  label.text = templateItem }else{  label.text = "default" } とし、root.plistも合わせて設定をしたところ、設定アプリの設定通りにlabelのtextが変更されました。 この二つのコードの違いがよくわからないのですが、何か足りない点や間違っている点などがあるのでしょうか…? わかりにくい質問で申し訳有りません。 何かお気づきの点など教えていただけますと幸いです。

    • ベストアンサー
    • Swift
    • noname#233614
    • 回答数2
  • Swiftについて教えてください

    Swiftで分からないことがあり、投稿させていただきました。UIImageViewにタッチの機能をつけてlet stamp = Timage()で呼び出しているサンプルを参考にタッチをピンチジェスチャーに変更してlet stamp = Pimage()で呼び出すと Missing argument for parameter 'coder' in callというエラーがでます。調べて呼び出し文で引数が足りない。ということが分かったのですが、どのようにして呼び出したらいいのかわかりません。Swift初心者なので、具体的に教えていただければありがたいです。よろしくお願いします。 タッチ//////////////////////////////////////////////////////////////////////////////////////////////////////////// import UIKit class Timage: UIImageView { override func touchesBegan(touches: Set<NSObject>, withEvent event: UIEvent) { self.superview?.bringSubviewToFront(self) } override func touchesMoved(touches: Set<NSObject>, withEvent event: UIEvent) { let touch = touches.first as! UITouch let dx = touch.locationInView(self.superview).x - touch.previousLocationInView(self.superview).x let dy = touch.locationInView(self.superview).y - touch.previousLocationInView(self.superview).y self.center = CGPointMake(self.center.x + dx, self.center.y + dy) } } ピンチジェスチャー/////////////////////////////////////////////////////////////////////////////////////////////////////////////// import UIKit class Pimage: UIImageView { var gestureEnabled = true private var beforePoint = CGPointMake(0.0, 0.0) private var currentScale:CGFloat = 1.0 required init(coder aDecoder: NSCoder) { super.init(coder: aDecoder) self.userInteractionEnabled = true let pinchGesture = UIPinchGestureRecognizer(target: self, action: "Pinch") self.addGestureRecognizer(pinchGesture) } }

    • ベストアンサー
    • Swift
    • dkong
    • 回答数4
  • Swift,Objective-Cのselecto

    現在、Swiftでアプリを作成しているプログラミング初心者です。selectorについて、サルでも解るレベルで、具体例を交えて教えて頂けないでしょうか。 ソースコードも是非、ご提示頂ければ助かるのですが、Objective-Cは未学習です。クラス、メソッド、引数などの基本的な意味、構文などは理解しています。

    • ベストアンサー
    • Swift
  • SWIFT1.2アップデート後のエラー

    Xcode6(ver6.32)を使用しSwiftでアプリを作成しています。 Swift1.2になったのが原因だと思いますが AppleからのRejectを受け原因を調査したところ あるボタンをタップした際のイベント内にある下記でアプリが落ちるようです。 ちなみにシミュレーター上では落ちませんがデバイスにインストールすると発生します。 var mainViewController: UIViewController =storyboard.instantiateViewControllerWithIdentifier("ViewController") as! UIViewController 2週間ほど悩み続けておりますが解決できておりません。 どなたか原因をご教授ください。

    • red0176
    • 回答数1
  • iPhoneアプリ開発(Swift)

    Xcode6(ver6.32)を使用しSwiftでアプリを作成しています。 AppleからのRejectを受け原因を調査したところ あるボタンをタップした際のイベント内にある下記でアプリが落ちるようです。 ちなみにシミュレーター上では落ちませんがデバイスにインストールすると発生します。 var mainViewController: UIViewController =storyboard.instantiateViewControllerWithIdentifier("ViewController") as! UIViewController 2週間ほど悩み続けておりますが解決できておりません。 どなたか原因をご教授ください。

    • red0176
    • 回答数2
  • swiftでストップウォッチに計算機能を追加

    swiftでストップウォッチアプリを作りました。 そのアプリに以下の機能を追加しようと思います。 一つの作業が完了するまでの時間(秒)を計測した上で、 その時間をもとに1時間あたりではいくつの作業が完了するのか、 計算して画面に表示させる機能。 (計算式:3600 / 計測した秒数 = 1時間あたりの作業数) どのように書けば、上記のような機能を追加できるでしょうか? 現状のソースコードは以下のようになります。 import UIKit class ViewController: UIViewController { @IBOutlet weak var timerLabel: UILabel! @IBOutlet weak var startButton: UIButton! @IBOutlet weak var stopButton: UIButton! @IBOutlet weak var resetButton: UIButton! @IBOutlet weak var page: UILabel! var startTime: NSTimeInterval? = nil var timer: NSTimer? var elapsedTime: Double = 0.0 override func viewDidLoad() { super.viewDidLoad() setButtonEnabled(true, stop: false, reset: false) // Do any additional setup after loading the view, typically from a nib. } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } func setButtonEnabled(start:Bool, stop:Bool, reset:Bool) { self.startButton.enabled = start self.stopButton.enabled = stop self.resetButton.enabled = reset } func update() { if let t = self.startTime { let time: Double = NSDate.timeIntervalSinceReferenceDate() - t + self.elapsedTime let sec: Int = Int(time) let msec: Int = Int((time - Double(sec)) * 100.0) self.timerLabel.text = NSString(format: "%02d:%02d:%02d", sec/60, sec%60, msec) as String } } @IBAction func startTimer(sender: AnyObject) { setButtonEnabled(false, stop: true, reset: false) self.startTime = NSDate.timeIntervalSinceReferenceDate() // 2001/1/1 0:0:0 self.timer = NSTimer.scheduledTimerWithTimeInterval(0.01, target: self, selector: Selector("update"), userInfo: nil, repeats: true) } @IBAction func stopTimer(sender: AnyObject) { setButtonEnabled(true, stop: false, reset: true) if let t = self.startTime { self.elapsedTime += NSDate.timeIntervalSinceReferenceDate() - t self.timer?.invalidate() self.timer = nil } } @IBAction func resetTimer(sender: AnyObject) { setButtonEnabled(true, stop: false, reset: false) self.elapsedTime = 0.0 self.startTime = nil self.timerLabel.text = "00:00:00" } }

    • ベストアンサー
    • Swift