質問編集履歴

2 画像の変更、やりたい事の変更

退会済みユーザー

退会済みユーザー

2018/01/03 11:10  投稿

alerttextとpickerについて
```swift
@IBAction func btr(_ sender: Any) {
   let alert = UIAlertController(title: "値を入力してください", message: "\n\n\n\n\n\n\n\n", preferredStyle: .alert)
   // テキストフィールドを追加
   alert.addTextField(configurationHandler: {(textField: UITextField!) -> Void in
     textField.placeholder = "買ったもの"
   })
   //二個目
   alert.addTextField(configurationHandler: {(textField: UITextField!) -> Void in
     textField.placeholder = "金額"
   })
   
   let saveAction = UIAlertAction(title: "OK", style: .default) { (action:UIAlertAction!) -> Void in
     self.mytableView.reloadData()
   }
   let cancelAction = UIAlertAction(title: "キャンセル", style: .default) { (action:UIAlertAction!) -> Void in
   }
   
   //PickerView
   pickerView = UIPickerView(frame:CGRect(x:0, y:50, width:view.bounds.width*0.6, height:150)) // 配置、サイズ
   pickerView.frame = CGRect(x:0, y:0, width:view.bounds.width, height:150)
   pickerView.dataSource = self
   pickerView.delegate = self
   alert.view.addSubview(pickerView)
   
   alert.addAction(saveAction)
   alert.addAction(cancelAction)
   present(alert, animated: true, completion: nil)
 }
```
![イメージ説明](72660196a8265eec0b32586f07c278fd.png)
![イメージ説明](af3640a44860e3c202a010fe827262ac.png)
~~**~~やりたいこと~~**~~
pickerとtextFieldの位置を上下逆にしたいです。
それとtextFieldを複数にするとこういったくっついた形になってしまうのですがそれをtextFieldとtextFieldの間に少し空白の隙間を作れるようにしたいです。
それとtextFieldを複数にするとこういったくっついた形になってしまうのですがそ
**自分出来たところ**
alert内にpickerと追加でtextFieldまでを設置するところまで出来た
**困っているところ**
alert内にpickerとtextを上下逆にしたいのですがどうすればいいか分からなくて困っています。
あとpickerがアラート内をはみ出していていてアラート内に二つのpickerをおさめる方法が分からなくて困っています。
![イメージ説明](0ceae71c19d4d30a215ea202dca90e82.png)
**イメージ**
textFieldの隙間はこんな感じに開けれるようにしたいです。
それとalert内のtextFieldとpickerViewの間の隙間を出来るだけ無くしたいです。
versionはswift4で開発しています。
  • iOS

    4694 questions

    iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

  • Xcode

    4925 questions

    Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

  • Swift

    8756 questions

    Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

  • iPhone

    1111 questions

    iPhoneとは、アップル社が開発・販売しているスマートフォンです。 同社のデジタルオーディオプレーヤーiPodの機能、電話機能、インターネットやメールなどのWeb通信機能の3つをドッキングした機器です。

1 文法の修正とスクショの追加

退会済みユーザー

退会済みユーザー

2018/01/02 15:06  投稿

alerttextとpickerについて
```swift
import UIKit
class ViewController: UIViewController,UIPickerViewDelegate,UIPickerViewDataSource{
 
 
 var pickerView = UIPickerView()
 let number = ["1","2","3","4","5"]
 @IBOutlet weak var mytableView: UITableView!
 @IBAction func btr(_ sender: Any) {
@IBAction func btr(_ sender: Any) {
   let alert = UIAlertController(title: "値を入力してください", message: "\n\n\n\n\n\n\n\n", preferredStyle: .alert)
   // テキストフィールドを追加  
   alert.addTextField(configurationHandler: {(textField: UITextField!) -> Void in  
     textField.placeholder = "買ったもの"  
   })  
   //二個目  
   alert.addTextField(configurationHandler: {(textField: UITextField!) -> Void in  
     textField.placeholder = "金額"  
   })  
     
   let saveAction = UIAlertAction(title: "OK", style: .default) { (action:UIAlertAction!) -> Void in
     self.mytableView.reloadData()
   }
   let cancelAction = UIAlertAction(title: "キャンセル", style: .default) { (action:UIAlertAction!) -> Void in
   }
   
   //PickerView
   pickerView = UIPickerView(frame:CGRect(x:0, y:50, width:view.bounds.width*0.6, height:50)) // 配置、サイズ
   pickerView = UIPickerView(frame:CGRect(x:0, y:50, width:view.bounds.width*0.6, height:150)) // 配置、サイズ
   pickerView.frame = CGRect(x:0, y:0, width:view.bounds.width, height:150)
   pickerView.dataSource = self
   pickerView.delegate = self
   alert.view.addSubview(pickerView)
   
   alert.addAction(saveAction)
   alert.addAction(cancelAction)
   present(alert, animated: true, completion: nil)
 }
 // PickerViewの列数  
 func numberOfComponents(in pickerView: UIPickerView) -> Int {  
   return 1  
 }  
   
 // PickerViewの行数  
 func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {  
   return number.count  
 }  
   
 // PickerViewの項目  
 func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {  
   return number[row]  
 }  
   
 // PickerViewの項目選択時  
 func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {  
     
 }  
   
   
 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.  
 }  
 
 
}  
 
```
![イメージ説明](5e1c150ce9f56c88aa4c0eb37427f88f.png)
![イメージ説明](72660196a8265eec0b32586f07c278fd.png)
~~**~~やりたいこと~~**~~
alert内にpickerの他にtextも入れて入力できるようにしたい
イメージとしてはtextで数字を入力し、pickerは値を入力できるようにしたい。
ex)100円、120ドル、150ユーロ
pickerとtextFieldの位置を上下逆にしたいです。
それとtextFieldを複数にするとこういったくっついた形になってしまうのですがそれをtextFieldとtextFieldの間に少し空白の隙間を作れるようにしたいです。
**自分出来たところ**
**困っているところ**
alert内にpickerとtextを入れたいのですがどうすればいいのかが分からなくて困っています。
alert内にpickerとtextを上下逆にしたいのですがどうすればいいか分からなくて困っています。
あとpickerがアラート内をはみ出していていてアラート内に二つのpickerをおさめる方法が分からなくて困っています。
![イメージ説明](0ceae71c19d4d30a215ea202dca90e82.png)
**イメージ**
textFieldの隙間はこんな感じに開けれるようにしたいです。
versionはswift4で開発しています。
  • iOS

    4694 questions

    iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

  • Xcode

    4925 questions

    Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

  • Swift

    8756 questions

    Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

  • iPhone

    1111 questions

    iPhoneとは、アップル社が開発・販売しているスマートフォンです。 同社のデジタルオーディオプレーヤーiPodの機能、電話機能、インターネットやメールなどのWeb通信機能の3つをドッキングした機器です。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る