Właśnie zacząłem uczyć się programowania na iOS, nie mogę znaleźć prostego zaokrąglonego przycisku. Znajduję zasoby dla starszych wersji. Czy muszę ustawić niestandardowe tło dla przycisku? W Androidzie użyłbym po prostu łatki 9, ale wiem, że iOS nie ma takiej możliwości.
ios
xcode
uibutton
storyboard
Gintas_
źródło
źródło
Możesz absolutnie zrobić prosty zaokrąglony przycisk bez potrzeby dodatkowego obrazu tła lub pisania kodu do tego samego. Wystarczy postępować zgodnie z poniższym zrzutem ekranu, aby ustawić atrybuty środowiska wykonawczego dla przycisku, aby uzyskać pożądany efekt.
Nie pojawi się w,
Storyboard
ale będzie działać dobrze po uruchomieniu projektu.Uwaga: „Key Path” i wartość wynosi 5. Wartość musi być zmieniony w zależności od wysokości i szerokości przycisku. Formuła na to to wysokość przycisku * 0,50. Więc baw się wokół wartości, aby zobaczyć oczekiwany zaokrąglony przycisk w symulatorze lub na urządzeniu fizycznym. Ta procedura będzie wyglądać na żmudną, gdy masz więcej niż jeden przycisk do zaokrąglenia w serii ujęć.
layer.cornerRadius
źródło
clipsToBounds
aby to zadziałało.Możesz zrobić coś takiego:
Ustaw klasę na
MyButton
in,Identity Inspector
aw IB będziesz miećrounded
właściwość:źródło
layer.masksToBounds = true
równieżWstaw kod w klasie RoundButton.
Odnieś się do obrazu.
źródło
Najłatwiej to zrobiłem, ustawiając cornerRadius na połowę wysokości widoku.
źródło
Możesz podłączyć swój
IBOutlet
przycisk ze scenorysu.Następnie możesz ustawić
corner radius
przycisk, aby był zaokrąglony w rogu.na przykład twój
outlet
jestmyButton
wtedy,Przedmiot - C.
Szybki
Jeśli chcesz dokładny okrągły przycisk wówczas przycisk jest
width
iheight
musi byćequal
icornerRadius
musi być równa wysokości lub szerokości / 2 (połowa szerokości lub wysokości).źródło
Jak sugerowała inna odpowiedź, aby wykonać większość tej pracy w kodzie, tylko jedna odpowiedź faktycznie zapewniła sposób wyświetlenia zmian w interfejsie IB Storyboard. Moja odpowiedź wykracza poza tę odpowiedź, umożliwiając zmianę kąta promienia widoku, przycisku, obrazu itp.
Proszę spojrzeć na poniższy kod. Aby użyć tego kodu, utwórz nowy plik Swift o nazwie RoundedView lub jakkolwiek chcesz go nazwać, a następnie przejdź do swojego storyboardu i zmień klasę na „RoundedView”, „RoundedImageView” lub „RoundedButton”.
źródło
Dodając
layer.cornerRadius
scenorys, upewnij się, że nie masz spacji wiodących ani końcowych. Jeśli skopiujesz wklej, możesz wstawić spacje. Byłoby miło, gdyby XCode powiedział jakieś ostrzeżenie lub błąd.źródło
Spróbuj tego!!
źródło
Rozszerzenie jest najlepszą opcją dla tego problemu. Utwórz rozszerzenie widoku lub przycisku
Zadzwoń z kodu
źródło
Używam Xcode w wersji 11.4
W inspektorze atrybutów możesz zdefiniować promień narożnika.
Nie pojawi się w Storyboard, ale będzie działać dobrze po uruchomieniu projektu.
źródło
źródło