Archived
Added rudimentary i{ad support, more strings show strikethroughs
This commit is contained in:
@@ -90,9 +90,6 @@ class PlanViewController : UIViewController, UICollectionViewDataSource, UIColle
|
|||||||
|
|
||||||
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
|
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
|
||||||
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: identifier, for: indexPath as IndexPath) as! PlanViewCell
|
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: identifier, for: indexPath as IndexPath) as! PlanViewCell
|
||||||
cell.group.text = self.substs[indexPath.item].group
|
|
||||||
cell.additional.text = self.substs[indexPath.item].additional
|
|
||||||
cell.time.text = self.substs[indexPath.item].time
|
|
||||||
|
|
||||||
var psa = false
|
var psa = false
|
||||||
|
|
||||||
@@ -123,13 +120,20 @@ class PlanViewController : UIViewController, UICollectionViewDataSource, UIColle
|
|||||||
cell.additional.textColor = #colorLiteral(red: 0, green: 0, blue: 0, alpha: 1)
|
cell.additional.textColor = #colorLiteral(red: 0, green: 0, blue: 0, alpha: 1)
|
||||||
}
|
}
|
||||||
|
|
||||||
let roomMutable = NSMutableAttributedString(string: self.substs[indexPath.item].room)
|
let mutableStrings = [NSMutableAttributedString(string: self.substs[indexPath.item].group), NSMutableAttributedString(string: self.substs[indexPath.item].time), NSMutableAttributedString(string: self.substs[indexPath.item].course), NSMutableAttributedString(string: self.substs[indexPath.item].room)]
|
||||||
let room = self.substs[indexPath.item].room
|
let strings = [self.substs[indexPath.item].group, self.substs[indexPath.item].time, self.substs[indexPath.item].course, self.substs[indexPath.item].room]
|
||||||
if let qmark = room.firstIndex(of: "?") {
|
|
||||||
let distance = room.distance(from: room.startIndex, to: qmark)
|
for i in 0..<4 {
|
||||||
roomMutable.addAttribute(NSAttributedString.Key.strikethroughStyle, value: 2, range: NSMakeRange(0, distance))
|
if let qmark = strings[i].firstIndex(of: "?") {
|
||||||
|
let distance = strings[i].distance(from: strings[i].startIndex, to: qmark)
|
||||||
|
mutableStrings[i].addAttribute(NSAttributedString.Key.strikethroughStyle, value: 2, range: NSMakeRange(0, distance))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
cell.room.attributedText = roomMutable
|
|
||||||
|
cell.group.attributedText = mutableStrings[0]
|
||||||
|
cell.additional.text = self.substs[indexPath.item].additional
|
||||||
|
cell.time.attributedText = mutableStrings[1]
|
||||||
|
cell.room.attributedText = mutableStrings[3]
|
||||||
|
|
||||||
if image != nil {
|
if image != nil {
|
||||||
let attachment: NSTextAttachment = NSTextAttachment()
|
let attachment: NSTextAttachment = NSTextAttachment()
|
||||||
@@ -142,7 +146,8 @@ class PlanViewController : UIViewController, UICollectionViewDataSource, UIColle
|
|||||||
|
|
||||||
let courseImage = NSMutableAttributedString(string: "")
|
let courseImage = NSMutableAttributedString(string: "")
|
||||||
courseImage.append(NSAttributedString(attachment: attachment))
|
courseImage.append(NSAttributedString(attachment: attachment))
|
||||||
let courseString = NSAttributedString(string: " \(course)")
|
courseImage.append(NSAttributedString(string: " "))
|
||||||
|
let courseString = mutableStrings[2]
|
||||||
courseImage.append(courseString)
|
courseImage.append(courseString)
|
||||||
if psa == true {
|
if psa == true {
|
||||||
courseImage.addAttribute(NSAttributedString.Key.foregroundColor, value: #colorLiteral(red: 1.0, green: 1.0, blue: 1.0, alpha: 1.0), range: NSMakeRange(0, 3))
|
courseImage.addAttribute(NSAttributedString.Key.foregroundColor, value: #colorLiteral(red: 1.0, green: 1.0, blue: 1.0, alpha: 1.0), range: NSMakeRange(0, 3))
|
||||||
@@ -150,7 +155,7 @@ class PlanViewController : UIViewController, UICollectionViewDataSource, UIColle
|
|||||||
|
|
||||||
cell.course.attributedText = courseImage
|
cell.course.attributedText = courseImage
|
||||||
} else {
|
} else {
|
||||||
cell.course.text = course
|
cell.course.attributedText = mutableStrings[2]
|
||||||
}
|
}
|
||||||
|
|
||||||
return cell
|
return cell
|
||||||
@@ -159,7 +164,20 @@ class PlanViewController : UIViewController, UICollectionViewDataSource, UIColle
|
|||||||
// stubs
|
// stubs
|
||||||
|
|
||||||
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeModeForItemAt indexPath: IndexPath) -> MagazineLayoutItemSizeMode {
|
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeModeForItemAt indexPath: IndexPath) -> MagazineLayoutItemSizeMode {
|
||||||
let widthMode = MagazineLayoutItemWidthMode.fullWidth(respectsHorizontalInsets: true)
|
var widthMode: MagazineLayoutItemWidthMode
|
||||||
|
if UIDevice.current.userInterfaceIdiom == .pad { // iPad
|
||||||
|
if UIDevice.current.orientation.isLandscape {
|
||||||
|
widthMode = MagazineLayoutItemWidthMode.thirdWidth
|
||||||
|
} else {
|
||||||
|
widthMode = MagazineLayoutItemWidthMode.halfWidth
|
||||||
|
}
|
||||||
|
} else { // iPhone
|
||||||
|
if UIDevice.current.orientation.isLandscape {
|
||||||
|
widthMode = MagazineLayoutItemWidthMode.halfWidth
|
||||||
|
} else {
|
||||||
|
widthMode = MagazineLayoutItemWidthMode.fullWidth(respectsHorizontalInsets: true)
|
||||||
|
}
|
||||||
|
}
|
||||||
let heightMode = MagazineLayoutItemHeightMode.dynamic
|
let heightMode = MagazineLayoutItemHeightMode.dynamic
|
||||||
return MagazineLayoutItemSizeMode(widthMode: widthMode, heightMode: heightMode)
|
return MagazineLayoutItemSizeMode(widthMode: widthMode, heightMode: heightMode)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user