两个数组。第一个具有所有事件,第二个具有冲突事件(都存在于第一个数组中)。 TableView显示所有事件。 我想在表格视图单元格中突出显示第二个数组的元素
第一个数组21个项目
["Bicycling with Friends - Start: Nov 1, 18 6:00 AM - End: Nov 1, 18 9:30 AM", "Yoga - Start: Nov 1, 18 6:00 PM - End: Nov 1, 18 7:33 PM", "Local Pub with Friends - Start: Nov 1, 18 7:33 PM - End: Nov 1, 18 11:00 PM", "Football Game - Start: Nov 3, 18 6:14 PM - End: Nov 3, 18 9:44 PM", "Football Tailgate with John - Start: Nov 3, 18 6:14 PM - End: Nov 3, 18 9:44 PM", "Volleyball With Friends - Start: Nov 6, 18 12:00 PM - End: Nov 6, 18 1:26 PM", "Boba Tea Grand Opening - Start: Nov 6, 18 1:27 PM - End: Nov 6, 18 2:00 PM", "Evening Cookout with Friends - Start: Nov 6, 18 5:00 PM - End: Nov 6, 18 10:00 PM", "SF Coffee Festival - Start: Nov 6, 18 6:00 PM - End: Nov 6, 18 9:00 PM", "Roller Derby - Start: Nov 7, 18 12:00 PM - End: Nov 7, 18 2:30 PM", "Rock Concert - Start: Nov 7, 18 6:30 PM - End: Nov 7, 18 11:00 PM", "Lunch with Friends - Start: Nov 8, 18 11:30 AM - End: Nov 8, 18 12:59 PM", "Nap Break - Start: Nov 8, 18 12:56 PM - End: Nov 8, 18 1:30 PM", "Basketball Game - Start: Nov 8, 18 7:30 PM - End: Nov 8, 18 10:30 PM", "Lunch Meeting - Start: Nov 9, 18 12:30 PM - End: Nov 9, 18 2:30 PM", "Free Donuts - Start: Nov 9, 18 3:00 PM - End: Nov 9, 18 4:00 PM", "TV Show Marathon - Start: Nov 9, 18 4:30 PM - End: Nov 9, 18 9:00 PM", "Beer with Friends - Start: Nov 9, 18 8:00 PM - End: Nov 9, 18 9:30 PM", "Birthday Party - Start: Nov 10, 18 12:30 PM - End: Nov 10, 18 8:30 PM", "Dentist Appointment - Start: Nov 10, 18 1:45 PM - End: Nov 10, 18 2:30 PM", "Evening Picnic - Start: Nov 10, 18 6:00 PM - End: Nov 10, 18 7:00 PM"]
the ["Football Tailgate with John - Start: Nov 3, 18 6:14 PM - End: Nov 3, 18 9:44 PM", "Football Game - Start: Nov 3, 18 6:14 PM - End: Nov 3, 18 9:44 PM", "SF Coffee Festival - Start: Nov 6, 18 6:00 PM - End: Nov 6, 18 9:00 PM", "Evening Cookout with Friends - Start: Nov 6, 18 5:00 PM - End: Nov 6, 18 10:00 PM", "Nap Break - Start: Nov 8, 18 12:56 PM - End: Nov 8, 18 1:30 PM", "Lunch with Friends - Start: Nov 8, 18 11:30 AM - End: Nov 8, 18 12:59 PM", "Beer with Friends - Start: Nov 9, 18 8:00 PM - End: Nov 9, 18 9:30 PM", "TV Show Marathon - Start: Nov 9, 18 4:30 PM - End: Nov 9, 18 9:00 PM", "Dentist Appointment - Start: Nov 10, 18 1:45 PM - End: Nov 10, 18 2:30 PM", "Birthday Party - Start: Nov 10, 18 12:30 PM - End: Nov 10, 18 8:30 PM", "Birthday Party - Start: Nov 10, 18 12:30 PM - End: Nov 10, 18 8:30 PM"]
第二个数组
conflictingEvents # 11
the ["Football Tailgate with John - Start: Nov 3, 18 6:14 PM - End: Nov 3, 18 9:44 PM", "Football Game - Start: Nov 3, 18 6:14 PM - End: Nov 3, 18 9:44 PM", "SF Coffee Festival - Start: Nov 6, 18 6:00 PM - End: Nov 6, 18 9:00 PM", "Evening Cookout with Friends - Start: Nov 6, 18 5:00 PM - End: Nov 6, 18 10:00 PM", "Nap Break - Start: Nov 8, 18 12:56 PM - End: Nov 8, 18 1:30 PM", "Lunch with Friends - Start: Nov 8, 18 11:30 AM - End: Nov 8, 18 12:59 PM", "Beer with Friends - Start: Nov 9, 18 8:00 PM - End: Nov 9, 18 9:30 PM", "TV Show Marathon - Start: Nov 9, 18 4:30 PM - End: Nov 9, 18 9:00 PM", "Dentist Appointment - Start: Nov 10, 18 1:45 PM - End: Nov 10, 18 2:30 PM", "Birthday Party - Start: Nov 10, 18 12:30 PM - End: Nov 10, 18 8:30 PM", "Birthday Party - Start: Nov 10, 18 12:30 PM - End: Nov 10, 18 8:30 PM"]
显示第一个数组的表的单元格代码。
cell.textLabel!.text = stringArray[indexPath.row]
我要突出显示此表中第二个数组的元素
我是新手,如果你们能帮助的话,那就意味着很多。
答案 0 :(得分:1)
怎么样?
class TableViewController: UITableViewController {
var listA = ["Event 1", "Event 2", "Event 3", "Event 4"]
var listB = ["Event 1", "Event 3"]
override func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
override func tableView(_ tableView: UITableView,
numberOfRowsInSection section: Int) -> Int {
return self.listA.count
}
override func tableView(_ tableView: UITableView,
cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView
.dequeueReusableCell(withIdentifier: "reuseIdentifier", for: indexPath)
let event = self.listA[indexPath.row]
cell.textLabel?.text = event
cell.backgroundColor = self.listB.contains(event) ? .secondarySystemFill : nil
return cell
}
}
答案 1 :(得分:0)
import UIKit
class ViewController: UIViewController,UITableViewDelegate,UITableViewDataSource {
@IBOutlet weak var myTableViewOutlet: UITableView!
let myArray1 = ["Bicycling with Friends - Start: Nov 1, 18 6:00 AM - End: Nov 1, 18 9:30 AM", "Yoga - Start: Nov 1, 18 6:00 PM - End: Nov 1, 18 7:33 PM", "Local Pub with Friends - Start: Nov 1, 18 7:33 PM - End: Nov 1, 18 11:00 PM", "Football Game - Start: Nov 3, 18 6:14 PM - End: Nov 3, 18 9:44 PM", "Football Tailgate with John - Start: Nov 3, 18 6:14 PM - End: Nov 3, 18 9:44 PM", "Volleyball With Friends - Start: Nov 6, 18 12:00 PM - End: Nov 6, 18 1:26 PM", "Boba Tea Grand Opening - Start: Nov 6, 18 1:27 PM - End: Nov 6, 18 2:00 PM", "Evening Cookout with Friends - Start: Nov 6, 18 5:00 PM - End: Nov 6, 18 10:00 PM", "SF Coffee Festival - Start: Nov 6, 18 6:00 PM - End: Nov 6, 18 9:00 PM", "Roller Derby - Start: Nov 7, 18 12:00 PM - End: Nov 7, 18 2:30 PM", "Rock Concert - Start: Nov 7, 18 6:30 PM - End: Nov 7, 18 11:00 PM", "Lunch with Friends - Start: Nov 8, 18 11:30 AM - End: Nov 8, 18 12:59 PM", "Nap Break - Start: Nov 8, 18 12:56 PM - End: Nov 8, 18 1:30 PM", "Basketball Game - Start: Nov 8, 18 7:30 PM - End: Nov 8, 18 10:30 PM", "Lunch Meeting - Start: Nov 9, 18 12:30 PM - End: Nov 9, 18 2:30 PM", "Free Donuts - Start: Nov 9, 18 3:00 PM - End: Nov 9, 18 4:00 PM", "TV Show Marathon - Start: Nov 9, 18 4:30 PM - End: Nov 9, 18 9:00 PM", "Beer with Friends - Start: Nov 9, 18 8:00 PM - End: Nov 9, 18 9:30 PM", "Birthday Party - Start: Nov 10, 18 12:30 PM - End: Nov 10, 18 8:30 PM", "Dentist Appointment - Start: Nov 10, 18 1:45 PM - End: Nov 10, 18 2:30 PM", "Evening Picnic - Start: Nov 10, 18 6:00 PM - End: Nov 10, 18 7:00 PM"]
let myArray2 = ["Football Tailgate with John - Start: Nov 3, 18 6:14 PM - End: Nov 3, 18 9:44 PM", "Football Game - Start: Nov 3, 18 6:14 PM - End: Nov 3, 18 9:44 PM", "SF Coffee Festival - Start: Nov 6, 18 6:00 PM - End: Nov 6, 18 9:00 PM", "Evening Cookout with Friends - Start: Nov 6, 18 5:00 PM - End: Nov 6, 18 10:00 PM", "Nap Break - Start: Nov 8, 18 12:56 PM - End: Nov 8, 18 1:30 PM", "Lunch with Friends - Start: Nov 8, 18 11:30 AM - End: Nov 8, 18 12:59 PM", "Beer with Friends - Start: Nov 9, 18 8:00 PM - End: Nov 9, 18 9:30 PM", "TV Show Marathon - Start: Nov 9, 18 4:30 PM - End: Nov 9, 18 9:00 PM", "Dentist Appointment - Start: Nov 10, 18 1:45 PM - End: Nov 10, 18 2:30 PM", "Birthday Party - Start: Nov 10, 18 12:30 PM - End: Nov 10, 18 8:30 PM", "Birthday Party - Start: Nov 10, 18 12:30 PM - End: Nov 10, 18 8:30 PM"]
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.
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return myArray1.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = myTableViewOutlet.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as! myTableViewCellClass
cell.myLabel.text = myArray1[indexPath.row]
return cell
}
func tableView(_ tableView: UITableView, willDisplay cell: UITableViewCell, forRowAt indexPath: IndexPath) {
var searchValue = myArray1[indexPath.row]
for v in myArray2
{
if v == searchValue {
let highlightColor: UIColor? = UIColor(white: 0.7, alpha: 0.5)
cell.backgroundColor = highlightColor
}
}
}
}