私はUICollectionViewを持っています。ここでは、セルにUILabelsが含まれていて、UIImageであるbackgroundViewがあります。ラベルの背景ははっきりしています。私の問題は、テキストの色とテキストが現れるイメージの領域内の色との間のコントラストがほとんどない場合、テキストのセグメントが読みにくくなることです。私は、これを助けるために使用できるテクニックがあると考えています(白いテキストに黒い境界線が付いていますか?誰かが私に助言してくれますか?イメージにラベルを貼り付けて、テキストを常に読み取り可能にする方法
まず編集:
私は@EssamMohamed/@AbdelahadDarwish答えをしようとしたが、それはうまくいきませんでした。私は何か間違っているかもしれない。
私は.xibファイルとカスタムクラスを使用しています。ここではカスタムクラスは次のとおりです。
class PointOfInterestCell: UICollectionViewCell {
@IBOutlet weak var nameLabel: UILabel! {
didSet {
//nameLabel.textColor = UIColor.tohTerracotaColor()
}
}
@IBOutlet weak var distanceLabel: UILabel! {
didSet {
let strokeTextAttributes = [
NSStrokeColorAttributeName : UIColor.black,
NSForegroundColorAttributeName : UIColor.white,
NSStrokeWidthAttributeName : -1.0,
] as [String : Any]
let text = distanceLabel.text ?? "????"
distanceLabel.attributedText = NSAttributedString(string: text, attributes: strokeTextAttributes)
}
}
}
この回答を確認して色を取得するには、https://stackoverflow.com/a/29266983を参照してください。 – adev
またはこの回答は平均色https://stackoverflow.com/a/13695592を与え、ラベルテキストの逆色を見つける。 – adev
こんにちは、色1と色2が対照的な色である[色2]境界で[色1]のテキストを使用することをお勧めします。これらの色はカラーホイールから選択できます。 –