如何在表格視圖的自定義單元格右側添加灰色邊框顏色?我的表格有一個自定義單元格,想為所有單元格添加邊框顏色,但在右側僅表示可以向右滑動,這是我的自定義單元格類:
import UIKit
class AdminCustomCell: UITableViewCell {
@IBOutlet weak var MainView: UIView!
@IBOutlet weak var BackView: UIView!
@IBOutlet weak var Km: UILabel!
override func awakeFromNib() {
super.awakeFromNib()
self.BackView.layer.borderWidth = 1
self.BackView.layer.cornerRadius = 20
self.BackView.layer.borderColor = UIColor.white.cgColor
self.BackView.layer.masksToBounds = true
self.MainView.layer.shadowOpacity = 0.18
self.MainView.layer.shadowOffset = CGSize(width: 0, height: 2)
self.MainView.layer.shadowRadius = 6
self.MainView.layer.shadowColor = UIColor.black.cgColor
self.MainView.layer.masksToBounds = false
}
//@IBOutlet weak var ParkingView: UIView!
@IBOutlet weak var Label: UILabel!
@IBOutlet weak var Alert: UILabel!
@IBOutlet weak var Logos: UIImageView!
@IBOutlet weak var ParkingView: UIView!
override func setSelected(_ selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
// Configure the view for the selected state
}
override func layoutSubviews() {
super.layoutSubviews()
ParkingView.frame = ParkingView.frame.inset(by: UIEdgeInsets(top: 10, left: 10, bottom: 10, right: 10))
}
}
uj5u.com熱心網友回復:
您可以嘗試使用 CALayer 或覆寫drawRect并在您想要的位置畫一條線。
這是一個使用 CALayer 的示例
private func addRightBorder() {
let border = CALayer()
let borderWidth: CGFloat = 5
// Set the color your want
border.backgroundColor = UIColor.red.cgColor
// Create a rect only on the right of the view
border.frame = CGRect(x: bounds.maxX - borderWidth,
y: 0,
width: borderWidth,
height: bounds.maxY)
layer.addSublayer(border)
}
更新
根據鄧肯的有效評論:
請注意,如果您的應用程式支持設備旋轉(或 iPad 多任務處理),您需要添加檢測布局更改和移動邊框層的邏輯。因此,對于完整的實作,您可能需要將邊框層保存為實體變數并添加代碼以調整其在布局更改時的位置。
以下是一些有望處理這種情況的更改:
// Persist the CALayer
var rightBorder: CALayer?
let borderWidth: CGFloat = 5
override func layoutSubviews() {
super.layoutSubviews()
// Add right border if we haven't already
if rightBorder == nil {
addRightBorder()
}
// Update the frames based on the current bounds
rightBorder?.frame = CGRect(x: bounds.maxX - borderWidth,
y: 0,
width: borderWidth,
height: bounds.maxY)
}
private func addRightBorder() {
rightBorder = CALayer()
rightBorder!.backgroundColor = UIColor.red.cgColor
layer.addSublayer(rightBorder!)
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/444101.html
標籤:迅速 代码 合适的视图 uikit 合适的viewcell编辑控件
上一篇:XCode-無法注冊捆綁識別符號
