Snapkit: Ubah prioritas

Dibuat pada 30 Jan 2015  ·  3Komentar  ·  Sumber: SnapKit/SnapKit

Saya tidak tahu cara mengubah prioritas batasan yang sudah diinstal.

Mengubah prioritas NSLayoutConstraint adalah operasi yang murah, dan menggunakan kombinasi prioritas dan .LessThanOrEqual + .GreaterThanOrEqual untuk animasi adalah apa yang disarankan Apple.

Bahkan mungkin bagus untuk menambahkan beberapa pembungkus untuk ini. Anda akan menginstal

x ≦ 40
x ≧ 40 with priority P
x ≧ 20 with priority P + 1

dan Anda kemudian dapat beralih x antara 40 dan 20 dengan mengubah prioritas pada batasan terakhir antara P - 1 dan P + 1 .

enhancement

Komentar yang paling membantu

@danieleggert cabang pengembangan sekarang memiliki dukungan untuk memperbarui prioritas:

var constraint: Constraint? = nil
view.snp_makeConstraints { (make) -> Void in
    constraint = make.edges.equalTo(UIEdgeInsetsMake(10,10,10,10)).priorityHigh()
}
constraint?.updatePriorityLow()

Semua 3 komentar

Mungkin sebaiknya kita mengizinkan pengubahan prioritas melalui snp_updateConstraints . Saya akan melihat apa yang akan terjadi dan apakah itu akan memiliki implikasi.

@danieleggert cabang pengembangan sekarang memiliki dukungan untuk memperbarui prioritas:

var constraint: Constraint? = nil
view.snp_makeConstraints { (make) -> Void in
    constraint = make.edges.equalTo(UIEdgeInsetsMake(10,10,10,10)).priorityHigh()
}
constraint?.updatePriorityLow()

Hai @robertjpayne !
Saya mencoba memperbarui prioritas seperti yang dinyatakan pada komentar terakhir.
Tapi saya mendapat kesalahan ini:

Screen Shot 2020-07-22 at 3 17 00 PM

Apa yang tampaknya menjadi masalah? Menggunakan Snapkit 4.0.0

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

swiftli picture swiftli  ·  9Komentar

seljabali picture seljabali  ·  3Komentar

cooler333 picture cooler333  ·  5Komentar

Cookiezby picture Cookiezby  ·  8Komentar

NicholasTD07 picture NicholasTD07  ·  8Komentar