Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
import UIKit
import Shared
final class TermsConditionsView: UIView {
let titleLabel = UILabel()
let nextButton = CapsuleButton()
let showTermsButton = CapsuleButton()
let radioComponent = RadioTextComponent()
init() {
super.init(frame: .zero)
backgroundColor = Asset.neutralWhite.color
let attString = NSMutableAttributedString(string: Localized.Terms.title)
let paragraph = NSMutableParagraphStyle()
paragraph.alignment = .left
paragraph.lineHeightMultiple = 1.15
attString.addAttribute(.paragraphStyle, value: paragraph)
attString.addAttribute(.foregroundColor, value: Asset.neutralActive.color)
attString.addAttribute(.font, value: Fonts.Mulish.bold.font(size: 34.0) as Any)
attString.addAttributes(attributes: [
.font: Fonts.Mulish.bold.font(size: 34.0) as Any,
.foregroundColor: Asset.brandPrimary.color
], betweenCharacters: "#")
titleLabel.numberOfLines = 0
titleLabel.attributedText = attString
radioComponent.titleLabel.text = Localized.Terms.radio
nextButton.isEnabled = false
nextButton.set(style: .brandColored, title: Localized.Terms.accept)
showTermsButton.set(style: .seeThrough, title: Localized.Terms.show)
addSubview(titleLabel)
addSubview(nextButton)
addSubview(radioComponent)
addSubview(showTermsButton)
setupConstraints()
}
required init?(coder: NSCoder) { nil }
private func setupConstraints() {
titleLabel.snp.makeConstraints {
$0.top.equalTo(safeAreaLayoutGuide).offset(30)
$0.left.equalToSuperview().offset(38)
$0.right.equalToSuperview().offset(-44)
}
radioComponent.snp.makeConstraints {
$0.left.equalToSuperview().offset(40)
$0.right.equalToSuperview().offset(-40)
$0.bottom.equalTo(nextButton.snp.top).offset(-20)
}
nextButton.snp.makeConstraints {
$0.left.equalToSuperview().offset(40)
$0.right.equalToSuperview().offset(-40)
$0.bottom.equalTo(showTermsButton.snp.top).offset(-10)
}
showTermsButton.snp.makeConstraints {
$0.left.equalToSuperview().offset(40)
$0.right.equalToSuperview().offset(-40)
$0.bottom.equalTo(safeAreaLayoutGuide).offset(-40)
}
}
}