//tips
//swiftへのclass記入
参照した例を基に初期画面にtextfield部品を組み込み、下記スクリプトを記入したが、previewが表示されなくなった。
import UIKit
class ViewController: UIViewController{
@IBOutlet weak var textField: UITextField!
override func viewDidLoad() {
super.viewDidLoad()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
}
また、preview部品をeditorにドラッグして@IBOutlet を作成しようとしたが、ドラッグできなかったので、手打ちで記述して、紐付けられないか試したが、Controlキーを押しながらでもドラックできなかった。
クラスファイルが、対象のViewControllerに関連付けられていない可能性があるよう。
直近で大きな仕様変更があったので過去データを参考にしづらい。
現在の自分のSwiftバージョンはApple Swift version 5.3 で、ターミナルに下記を入力することでバージョンは確認することができる。
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift -version
混乱しないためにSwift version 5.3 で参考となるコードを探していくことにする。
https://docs.swift.org/swift-book/GuidedTour/GuidedTour.html
https://www.hackingwithswift.com/articles/2/how-to-learn-swift-programming-for-free
YouTubeのものが一番わかりやすかったのでそちらを参考にした。
初期のhello worldをList{}でリスト化し、リスト化することで上部に隙間がなくなったので、隙間を作るために、NavigationView{}を追加し、リストをその傘下に入れる。
NavigationViewの構成ができたらListへの追加機能として、.navigationBarTitle()を付加する。()内部にはText(“タイトル名”)をそのままとることができる。
参考にしているデータをgithubからダウンロード。
https://github.com/twostraws/HackingWithSwift
ピクチャーが入っているフォルダごとドロップ。
ピクチャーを読み出すためにclass DataSource: BindableObject のように画像データと表示コードを連結させようとしたらエラーが発生。
調べてみると
BindableObject isn’t a thing. Well, it was a thing, back in the early days of SwiftUI, before it was released. IIRC the final name was ObservableObject.
Where did you get that code? If you’re working from a tutorial that’s not been updated since SwiftUI went GM, you probably want to find a new tutorial.
BindableObjectはもう古いので、チュートリアルなら最新のものを見た方が良いとのこと。
https://developer.apple.com/forums/thread/652931
最新版(Xcode12,Swift5.3)に対応したチュートリアルはまだ出ていないよう。
コロコロコードが変わるのは厄介で、エラーメッセージを読みながらなんとかするしか方法がない状態。
推薦されたfixを行ってもエラーが出てしまうので、一旦保留とする。
この言語は、習得タイミング的によろしくないような気がするので、しばらくは専門家に任せることを前提にして、VR連携SNSやVRシステムに使用される別言語に注力した方がいいかもしれない。
個人的にgmailに連動したチェックリストアプリは欲しいので一度発注してみることも検討中。