반응형

SWIFT 12

스위프트를 가능하게 하는 것UI의 DSL?

스위프트를 가능하게 하는 것UI의 DSL? 애플이 새로 나온 것 같습니다.SwiftUIframework는 튜플을 효과적으로 구축하는 새로운 종류의 구문을 사용하지만 다른 구문을 사용합니다. var body: some View { VStack(alignment: .leading) { Text("Hello, World") // No comma, no separator ?! Text("Hello World!") } } 이 구문이 실제로 무엇인지 다루기 위해 노력하면서, 저는VStack여기에 사용된 이니셜라이저는 유형의 종결을 수행합니다.() -> Content두 번째 매개 변수로서, 여기서Content는 다음을 따르는 일반적인 매개 변수입니다.View폐쇄를 통해 추론할 수 있습니다어떤 유형인지 알아보려면Con..

programing 2023.11.04

스위프트 변수가 원자인가요?

스위프트 변수가 원자인가요? Objective-C에서는 원자와 비원자의 특성을 구분할 수 있습니다. @property (nonatomic, strong) NSObject *nonatomicObject; @property (atomic, strong) NSObject *atomicObject; 여러 스레드에서 원자로 정의된 속성을 안전하게 읽고 쓸 수 있는 반면, 여러 스레드에서 원자로 정의되지 않은 속성이나 아이바를 동시에 쓰고 액세스하면 잘못된 액세스 오류를 포함하여 정의되지 않은 동작이 발생할 수 있습니다. Swift에 이와 같은 변수가 있는 경우: var object: NSObject 제가 이 변수를 안전하게 병렬로 읽고 쓸 수 있습니까? (이것을 하는 것의 실제 의미는 고려하지 않고)낮은 수준의 ..

programing 2023.10.10

Swift의 불변/가변 컬렉션

Swift의 불변/가변 컬렉션 저는 Apple의 Swift 프로그래밍 가이드를 참조하여 변이 가능/불변 개체(Array, Dictionary, Sets, Data)를 스위프트 언어로 작성하는 것을 이해하고 있었습니다.하지만 스위프트에서 불변의 컬렉션을 만드는 방법을 이해할 수 없었습니다. 목표-C의 아래 사항에 대해 스위프트에서 동등한 것을 보고 싶습니다. 불변 배열 NSArray *imArray = [[NSArray alloc]initWithObjects:@"First",@"Second",@"Third",nil]; 가변 배열 NSMutableArray *mArray = [[NSMutableArray alloc]initWithObjects:@"First",@"Second",@"Third",nil]; [m..

programing 2023.10.10

단일 레이블에 여러 글꼴 색 사용

단일 레이블에 여러 글꼴 색 사용 iOS에서 하나의 라벨에 2개 또는 3개의 폰트 색상을 사용할 수 있는 방법이 있습니까? "안녕하세요, 안녕하세요"라는 텍스트를 예로 든다면, "안녕하세요"는 파란색, "안녕하세요"는 초록색이 될 것입니다. 이것이 가능한가요, 여러 개의 라벨을 만드는 것보다 더 쉬워 보이나요?여기서 참조. 우선 NSString과 NSMutableAttributedString을 아래와 같이 초기화합니다. var myString:NSString = "I AM KIRIT MODI" var myMutableString = NSMutableAttributedString() In View DidLoad override func viewDidLoad() { myMutableString = NSMut..

programing 2023.09.15

Swift - 하위 클래스에 의해 재정의되어야 하는 클래스 메서드

Swift - 하위 클래스에 의해 재정의되어야 하는 클래스 메서드 스위프트에서 "순수한 가상 함수"를 만드는 표준 방법이 있습니까? 즉, 모든 하위 클래스에서 재정의되어야 하고 그렇지 않으면 컴파일 시간 오류를 발생시키는 것입니까?두 가지 옵션이 있습니다. 프로토콜 사용 슈퍼클래스를 클래스 대신 프로토콜로 정의 Pro: 각 "하위 클래스"(실제 하위 클래스가 아님)가 필요한 메서드를 구현하는지 여부에 대한 시간 검사 컴파일 단점: "슈퍼클래스"(프로토콜)는 메서드나 속성을 구현할 수 없습니다. 메서드의 수퍼 버전에서 어설 예: class SuperClass { func someFunc() { fatalError("Must Override") } } class Subclass : SuperClass { o..

programing 2023.08.31

스위프트 언어에서 대소문자를 무시한 두 문자열을 비교하는 방법은 무엇입니까?

스위프트 언어에서 대소문자를 무시한 두 문자열을 비교하는 방법은 무엇입니까? swift ignore case에서 두 문자열을 어떻게 비교할 수 있습니까? 예를 들어: var a = "Cash" var b = "cash" 변수와 변수를 비교하면 참이 되는 방법이 있습니까?사용해 보십시오. 오래된 스위프트의 경우: var a : String = "Cash" var b : String = "cash" if(a.caseInsensitiveCompare(b) == NSComparisonResult.OrderedSame){ println("Et voila") } 스위프트 3+ var a : String = "Cash" var b : String = "cash" if(a.caseInsensitiveCompare(b)..

programing 2023.08.21

SwiftUI NavigationLink는 클릭하지 않고 목적지 보기를 즉시 로드합니다.

SwiftUI NavigationLink는 클릭하지 않고 목적지 보기를 즉시 로드합니다. 다음 코드 사용: struct HomeView: View { var body: some View { NavigationView { List(dataTypes) { dataType in NavigationLink(destination: AnotherView()) { HomeViewRow(dataType: dataType) } } } } } 이상한 것은, 언제.HomeView표시됩니다.NavigationLink즉시 로드AnotherView결과적으로, 모두AnotherView아직 화면에 표시되지 않더라도 종속성도 로드됩니다.사용자가 행을 클릭하여 표시해야 합니다. 내AnotherView포함DataSource여러 가지 일이..

programing 2023.08.21

Swift. Objective-c 모듈 'Alamofire'를 빌드할 수 없습니다.

Swift. Objective-c 모듈 'Alamofire'를 빌드할 수 없습니다. XCode6을 사용하여 T에 대한 지침에 따라 Alamofire의 바닐라 하위 모듈을 새로 설치합니다.여기 뭔가 안 맞는 것 같아요.제가 받는 오류는 "가져오는 라모파이어에서 objective-c 모듈 "alamofire"를 빌드할 수 없습니다.다음은 오류의 스크린샷입니다. 그리고 내 구성: 이럴 때는 먼저 프레임워크를 따로 구축하면 됩니다.당신의 경우: 계획을 알라모파이어로 변경 빌드(µB) 계획으로 다시 변경 달려. Developer/Xcode/DerivedData로 이동하여 프레임워크의 폴더를 삭제합니다. (또는 DerivedData 자체를 삭제합니다.) 실행 중인 시뮬레이터에 앱 빌드가 있는 경우 해당 앱을 삭제해..

programing 2023.08.01

스위프트 언어로 된 추상 클래스

스위프트 언어로 된 추상 클래스 스위프트 언어로 추상 클래스를 만들 수 있는 방법이 있습니까, 아니면 이것은 오브젝티브-C와 같은 제한 사항입니까?자바가 추상 클래스로 정의하는 것과 비슷한 추상 클래스를 만들고 싶습니다.Swift에는 추상 클래스가 없습니다(Objective-C와 동일).가장 좋은 방법은 Java 인터페이스와 같은 프로토콜을 사용하는 것입니다. 그런 다음 Swift 2.0을 사용하여 프로토콜 확장을 사용하여 메서드 구현 및 계산된 속성 구현을 추가할 수 있습니다.유일한 제한 사항은 구성원 변수 또는 상수를 제공할 수 없고 동적 배포가 없다는 것입니다. 이 기법의 예는 다음과 같습니다. protocol Employee { var annualSalary: Int {get} } extensio..

programing 2023.05.08
반응형