Saya memiliki gambar persegi panjang (jpg) dan ingin menggunakannya untuk mengisi latar belakang tombol dengan sudut bulat di xcode.
Saya menulis yang berikut ini:
UIButton *button = [[UIButton buttonWithType:UIButtonTypeRoundedRect] retain];
CGRect frame = CGRectMake(x, y, cardWidth, cardHeight);
button.frame = frame;
[button setBackgroundImage:backImage forState:UIControlStateNormal];
Namun, tombol yang saya dapatkan dengan pendekatan itu tidak memiliki sudut yang membulat: melainkan persegi panjang polos yang persis seperti gambar asli saya. Bagaimana saya bisa mendapatkan gambar dengan sudut bulat untuk mewakili tombol saya?
Terima kasih!
ios
cocoa-touch
uibutton
rounded-corners
ganda07
sumber
sumber
Anda dapat mencapai dengan Atribut RunTime ini
kita dapat membuat tombol kustom. cukup lihat tangkapan layar terlampir.
mohon memperhatikan:
dalam atribut runtime untuk mengubah warna perbatasan ikuti instruksi ini
buat kelas kategori CALayer
dalam file h
dalam file m:
sekarang dan seterusnya untuk mengatur tangkapan layar pemeriksaan warna perbatasan
Terima kasih
sumber
borderColor
. Tapi kemudian selalu menggunakan warna hitam untuk borderColor.@property(nonatomic, assign) UIColor* borderIBColor;
(yang tidak berbenturan dengan nama lain) dalam file header, dan implementasinya adalah:-(void)setBorderIBColor:(UIColor*)color{self.borderColor = color.CGColor;} -(UIColor*)borderIBColor{return [UIColorcolorWithCGColor:self.borderColor];}
Anda mungkin ingin memeriksa perpustakaan saya yang disebut DCKit . Itu ditulis pada versi terbaru Swift .
Anda dapat membuat tombol sudut / bidang teks bulat dari pembuat antarmuka secara langsung:
Ini juga memiliki banyak fitur keren lainnya, seperti bidang teks dengan validasi, kontrol dengan batas, garis putus-putus, tampilan lingkaran dan garis rambut dll.
sumber
Mendorong ke batas jari-jari sudut hingga mendapatkan lingkaran:
Jika bingkai tombol berbentuk bujur sangkar, tidak masalah frame.height atau frame.width. Kalau tidak, gunakan yang terbesar dari keduanya.
sumber
Impor kerangka kerja QuartCore jika tidak ada di proyek Anda yang ada, lalu impor
#import <QuartzCore/QuartzCore.h>
di viewcontroller.msumber
sumber
Lebar set pertama = 100 dan Tinggi = 100 tombol
sumber
Jika Anda ingin sudut bulat hanya untuk satu sudut atau dua sudut, dll ... baca posting ini:
[ObjC] - UIButton dengan sudut bundar - http://goo.gl/kfzvKP
Ini adalah subclass XIB / Storyboard. Impor dan tetapkan batas tanpa menulis kode.
sumber
Untuk Swift:
sumber
digunakan kode di bawah ini untuk membuat putaran sudut UIButton:
sumber
Coba kode saya. Di sini Anda dapat mengatur semua properti UIButton seperti warna teks, warna latar belakang, radius sudut, dll.
Sekarang panggil seperti ini
sumber
Jawaban alternatif yang menetapkan batas juga (membuatnya lebih seperti tombol) ada di sini ... Cara mengatur batas persegi panjang untuk jenis khusus UIButton
sumber
Untuk iOS SWift 4
sumber
Untuk Tujuan C :
Untuk Swift :
sumber
Pembaruan Swift 4
Saya juga mencoba banyak pilihan namun saya tidak bisa mendapatkan putaran UIButton saya terpojok. Saya menambahkan kode jari-jari sudut di dalam
viewDidLayoutSubviews()
masalah Saya.Kami juga dapat menyesuaikan cornerRadius sebagai berikut
sumber