我首先要说的是,我到目前为止还不是开发人员。我是一名设计师,并试图整理一个工作原型。很抱歉,如果我提出的问题看起来很模糊,但我已经在这里搜索了YouTube教程和答案,但仍然感到难过。
我有一个视图控制器,里面有一个tableview。我试图用一系列信息填充表格。这是我坚持的第一个领域。我知道如何将单个数据点填充到单元格,而不是将多个数据填充到单元格。单元格应显示啤酒的名称,价格和简短描述,如附图中所示。这是我目前在BeverageViewController中的代码。此外," ipsum lorem"文本是我不想要显示的其他描述性文本,但我确实希望它传递给BeverageDetailsViewController,如果可能的话显示在那里。我不确定如何设置prepareForSegue或performSegue来引用所选行。
class BeveragesViewController: UIViewController, UITableViewDataSource, UITableViewDelegate {
@IBOutlet weak var BeveragesTableView: UITableView!
// Data
let beverages = [
("Coke", "2.00", "12 fl oz", "ipsum lorem"),
("Sprite", "2.00", "12 fl oz", "ipsum lorem"),
("Powerade", "2.00", "20 fl oz", "ipsum lorem"),
("Blue Moon", "2.00", "12 fl oz", "ipsum lorem"),
("Budweiser", "2.00", "12 fl oz", "ipsum lorem"),
("Bud Light", "2.00", "12 fl oz", "ipsum lorem"),
("Corona", "2.00", "12 fl oz", "ipsum lorem"),
("Dos Equis", "2.00", "12 fl oz", "ipsum lorem"),
("Fat Tire", "2.00", "12 fl oz", "ipsum lorem"),
("Heineken", "2.00", "12 fl oz", "ipsum lorem"),
("Red Stripe", "2.00", "12 fl oz", "ipsum lorem"),
("Stella Artois", "2.00", "12 fl oz", "Stella Artois Premium Lager"),
("Yuengling", "2.00", "12 fl oz", "ipsum lorem")]
override func viewDidLoad() {
super.viewDidLoad()
BeveragesTableView.delegate = self
BeveragesTableView.dataSource = self
}
//Populate Table
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return beverages.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = BeveragesTableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as UITableViewCell
let beverage = beverages[indexPath.row]
return cell!
}
答案 0 :(得分:3)
创建一个模型类,其中包含有关数据的信息 -
import UIKit
class Videos:NSObject{
var title:String?
var thumbNailImageView : String?
var channel : String?
var numberOfView : Int?
var duration : Int?
init(title:String,thumbNailImageView:String,numberOfView:Int,duration:Int,channel:String) {
self.channel = channel
self.title = title
self.thumbNailImageView = thumbNailImageView
self.duration = duration
self.numberOfView = numberOfView
}
}
控制器类 - :
这里我们制作类型数组 - > 模型类。之后将object
附加到array
。您可以fetch
data
server
来执行loop
objects
输入多个import UIKit
class ViewController: UIViewController {
@IBOutlet weak var tableView: UITableView!
var model = [Videos]()
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
// Add object to array
let object = Videos(title: "abc", thumbNailImageView: "adf", numberOfView: 1, duration: 2, channel: "cde");
model.append(object);
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
extension ViewController:UITableViewDelegate,UITableViewDataSource{
func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return model.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath);
cell.textLabel?.text = model[indexPath.row].title
return cell;
}
}
信息。
outlets
我刚刚给出了解决方法的示例。您可以创建自定义单元格类,根据需要放置所有必需的data
,并按代码中所示提供dataSource
。
无需设置Delegate
& viewdidLoad
storyboard
register
如果已经从cell
连接,viewDidLoad
如果使用storyboards
则tidyverse
library(dplyr)
library(tidyr)
df1 %>%
separate_rows(csi) %>%
group_by(x) %>%
summarise(csi_max = max(csi)) %>%
left_join(df1, .)
# x csi csi_max
#1 1 0.5, 6.7, 2.3 6.7
#2 2 9.5, 2.6, 1.1 9.5
#3 3 0.7, 2.3, 5.1 5.1
#4 4 4.1, 2.7, 4.7 4.7
pmax