구조의 보기 [Swift] - vol.2 (데이터 삽입, 표시까지)
데이터 유형 구조 준비
import UIKit
struct Girl {
var name: String
var age: String
var type: String //職業など(ex. 学生, OLなど)
var distance: String
var image: UIImage
//初期化 //Girl(name: String, age: String, type: String, distance: String, image: UIImage)という感じでインスタンスにして使う
init(name: String, age: String, type: String, distance: String, image: UIImage) {
self.name = name
self.age = age
self.type = type
self.distance = distance
self.image = image
}
}
대입 조회
준비 배열
var girlsData: [Girl] = [] //初期化してからの配列
private func setGirlsInfo() {
//データをセット
girlsData.append(Girl(name: "あや", age: "18", type: "学生", distance: "6 km", image: UIImage(named: "aya.png")!))
girlsData.append(Girl(name: "マイカ", age: "25", type: "OL", distance: "2 km", image: UIImage(named: "maika.png")!))
girlsData.append(Girl(name: "emi", age: "40", type: "パート", distance: "56 km", image: UIImage(named: "emi.png")!))
girlsData.append(Girl(name: "みゆ", age: "21", type: "大学生", distance: "10 km", image: UIImage(named: "miyu.png")!))
girlsData.append(Girl(name: "リンゴ", age: "29", type: "事務", distance: "16 km", image: UIImage(named: "ringo.png")!))
}
override func viewDidLoad() {
super.viewDidLoad()
setGirlsInfo()
}
보기 항목에 배열 요소 대입하기
//girlsViewの要素にGirlのインスタンスの各要素を代入
private func setDataToGirlsView(girlsView: GirlsView, index: Int) {
girlsView.nameLabel.text = girlsData[index].name
girlsView.ageLabel.text = girlsData[index].age
girlsView.typeLabel.text = girlsData[index].type
girlsView.distanceLabel.text = girlsData[index].distance
girlsView.girlsImageView.image = girlsData[index].image
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
Array(0..<girlsViewArray.count).forEach {
//省略
view.addSubview(girlsViewArray[$0]) //$0は0 ~ girlsViewArray-1
//省略
//girlsViewArrayの各要素にGirlのインスタンスを代入
setDataToGirlsView(girlsView: girlsViewArray[$0], index: $0)
//省略
}
}
완성도
완료 후, 잠시 후 링크를github에 놓습니다
참고 자료
Swift에서 구조 배열 방법
Reference
이 문제에 관하여(구조의 보기 [Swift] - vol.2 (데이터 삽입, 표시까지)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/koutEngineerK/items/f6cbe0741c1cbf24ee98
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
var girlsData: [Girl] = [] //初期化してからの配列
private func setGirlsInfo() {
//データをセット
girlsData.append(Girl(name: "あや", age: "18", type: "学生", distance: "6 km", image: UIImage(named: "aya.png")!))
girlsData.append(Girl(name: "マイカ", age: "25", type: "OL", distance: "2 km", image: UIImage(named: "maika.png")!))
girlsData.append(Girl(name: "emi", age: "40", type: "パート", distance: "56 km", image: UIImage(named: "emi.png")!))
girlsData.append(Girl(name: "みゆ", age: "21", type: "大学生", distance: "10 km", image: UIImage(named: "miyu.png")!))
girlsData.append(Girl(name: "リンゴ", age: "29", type: "事務", distance: "16 km", image: UIImage(named: "ringo.png")!))
}
override func viewDidLoad() {
super.viewDidLoad()
setGirlsInfo()
}
//girlsViewの要素にGirlのインスタンスの各要素を代入
private func setDataToGirlsView(girlsView: GirlsView, index: Int) {
girlsView.nameLabel.text = girlsData[index].name
girlsView.ageLabel.text = girlsData[index].age
girlsView.typeLabel.text = girlsData[index].type
girlsView.distanceLabel.text = girlsData[index].distance
girlsView.girlsImageView.image = girlsData[index].image
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
Array(0..<girlsViewArray.count).forEach {
//省略
view.addSubview(girlsViewArray[$0]) //$0は0 ~ girlsViewArray-1
//省略
//girlsViewArrayの各要素にGirlのインスタンスを代入
setDataToGirlsView(girlsView: girlsViewArray[$0], index: $0)
//省略
}
}
Reference
이 문제에 관하여(구조의 보기 [Swift] - vol.2 (데이터 삽입, 표시까지)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/koutEngineerK/items/f6cbe0741c1cbf24ee98텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)