題名の操作の仕方がわからず困っています。詳しく説明させていただくと画面1と画面2があり、画面1から2に遷移し、また1に戻ってくる度に1がたされる変数countと空のラベルがあり、
swift
1var count=0 2let Arr=["一回目","二回目","三回目"] 3. 4. 5. 6override viewWillAppear(animated:Bool){ 7super.viewWillAppear(animated) 8label.text=Arr[count] 9} 10
のようにして画面1に戻ってくるたびに、画面1にアクセスした回数をラベルに表示したいのですが、上記のようにするとエラーが返されました。
何かご指摘をいただければと思います、よろしくお願いします。
<修正>
実はこれを応用して実際にやりたいことは単にページ数を表示することではなく、その配列の文章を取り出すことです。一般化して質問したつもりが、かえってお手数をおかけしてしまい申し訳ございません。またわかりにくいとの指摘をいただきましたので、大幅加筆させていただきます。ご迷惑をおかけしますが、どうかよろしくお願いします。
やりたいことは具体的には、
let usa=(population:100, capital:"ワシントン",location:"NorthAmerica")
let japan=(population:100, capital:"東京",location:"Asia")
let egypt=(population:100, capital:"カイロ",location:"Africa")
let countryArr=[usa,japan,egypt]
のようなタプルと配列を用意しており、一回目アクセスではusaの人口を表示、二回目のアクセスではjapanの人口を表示、三回目のアクセスではegyptの人口を表示、という具合です。
イメージとしてはlabel.text=countryArr[count].populationのようにしたいのですが、この記述ではエラーがでます。この正しい書き方か、この操作を行う代替案を教えていただければと思います。よろしくお願いします。
swift
1import UIKit 2 3class QuizViewController: UIViewController { 4 5 6 @IBOutlet weak var qText: UITextView! 7 8 var count=0 9 10 let usa=(population:100, capital:"ワシントン",location:"NorthAmerica") 11 let japan=(population:100, capital:"東京",location:"Asia") 12 let egypt=(population:100, capital:"カイロ",location:"Africa") 13 14 override func viewDidLoad() { 15 super.viewDidLoad() 16 17 } 18 19 override func viewWillAppear(_ animated: Bool) { 20 getCount() 21 super.viewWillAppear(animated) 22 23 24 let countryArr=[usa,japan,egypt] 25 qText.text=countryArr[count].population 26 } 27
回答2件
あなたの回答
tips
プレビュー