소셜 미디어 IOS 응용 프로그램에서 블록 객체 사용 방법

IOS 응용 프로그램에서 블록 객체 사용 방법

비디오: Quick Look: Milanote for iOS 2024

비디오: Quick Look: Milanote for iOS 2024
Anonim

Objective-C 블록은 전통적인 C 함수와 비슷하지만 블록은 작고 독립적 인 코드 단위입니다. iOS 앱 그것들은 메소드와 함수의 인자로 전달 될 수 있고, 그런 다음에 어떤 일을 할 필요가있을 때 사용됩니다. (많은 프로그래밍 주제와 마찬가지로 블록 객체를 사용할 때 블록 객체를 이해하는 것이 더 쉽습니다.)

iOS 4 이상에서는 시스템 프레임 워크의 여러 메소드와 함수가 다음과 같은 블록을 매개 변수로 사용하기 시작합니다. <

완료 처리기
  • 알림 처리기

  • 오류 처리기

  • 열거 형

  • 정렬

  • 여기에서는 블록 기반 메서드를 사용하여 자동차에 애니메이션을 적용하지만 블록 객체에는 특히 Grand Central Dispatch와 동시 처리를위한 두 가지 권장 기술인 NSOperationQueue 클래스에서 사용되는 여러 가지 용도가 있습니다. 동시 처리를 확인하십시오.

블록 변수를 선언하고이를 메소드의 인수로 전달하면 어떤 일이 발생 하는지를 쉽게 파악할 수 있습니다. 그러나 선언 구문은 별표 포인터 (*) 대신 캐럿 (^)을 사용한다는 점을 제외하면 함수 포인터의 표준 구문과 비슷합니다.

+ (void) animateWithDuration: (NSTimeInterval) duration 애니메이션을 볼 수 있습니다: (void (^) (void)) 애니메이션 완성: (void (^) (BOOL finished)) 완료;

Apple은 이제 블록을 기본 디자인 패턴으로 상속 및 위임과 함께 처리합니다. 따라서 블록이 점점 더 많이 사용되고 있음을 알면 놀랄 필요가 없습니다. 그럼에도 불구하고, 다소 진보 된 코드이기 때문에 코드는 심도있게 조사되므로 정말 이상한 구문에도 불구하고 블록에 익숙해집니다.

void (^) (void)) 애니메이션

완료는 반환 값이없는 블록으로 정의됩니다.

시작하려면, 이것은 매개 변수가없고 반환 값이없는 블록으로 애니메이션을 정의하는 구문입니다. 값은 단일 부울 인수 매개 변수를 취합니다.

(void (^) (BOOL finished)) 완료

블록을 인라인으로 만들면 캐럿 (^) 연산자를 사용하여 블록의 시작을 나타냅니다. 그런 다음 일반 중괄호로 묶인 코드를 따르십시오.그게

애니메이션에서 일어난 일입니다. ^ {self. 차.

완료: ^ (BOOL finished) {[self rotate];}

이 예에서는 블록을 인라인으로 사용하지만 다른 로컬 변수와 마찬가지로 선언 할 수도 있습니다. 코드를 굵은 체로하여 testDrive 메소드에 추가하십시오.

- (IBAction) testDrive: (id) 발신자 {CGPoint center = CGPointMake (자동차 중심 x, 자기 관찰 프레임의 원점 y + 차 프레임의 크기. 높이 / 2);

void

(^ animation) () =

^ ()

{

self. 차. 센터 = 센터; }; void (^ 완료) (BOOL) = ^ (BOOL 완료) { [자동 회전]; }; [UIView animateWithDuration: 3 애니메이션: 애니메이션 완료: 완료]; } 블록을 선언 할 때 캐럿 (^) 연산자를 사용하여 코드가 일반 중괄호로 묶인 블록의 시작을 나타내고 세미콜론은 블록 표현식의 끝을 나타냅니다. Listing 10-2의 선언은 다음 animateWithDuration: animation: completion: 메소드 선언에서 볼 수있는 것과 거의 동일합니다. 단, 식별자가 약간 옮겨 졌음을 제외하고는. + (void) animateWithDuration: (NSTimeInterval) duration 애니메이션: (void (^) (void)) 애니메이션 완성: ( void (^) (BOOL 완료)

) 완료;

여기서는 ^ 연산자를 사용하여 두 개의 블록 변수를 선언합니다. 하나는 반환 값이없는 애니메이션 이름이고 하나는 반환 값이없고 BOOL을 단일 인수로 사용하는 완료 이름입니다.

void (^ animation) () void (^ 완료) (BOOL) 이것은 다른 변수 선언 (int i = 1과 같은)과 같습니다. ^ 연산자를 사용하여 블록 변수에 할당 된 블록 리터럴 의 시작을 나타냅니다. 블록 리터럴에는 블록의 본문 (코드)과 함께 인수 이름 (완료)이 포함되며 세미콜론으로 끝납니다.

void

(^ animation) () =

^ ()

{본인. 차. center = center;}; void (^ 완료) (BOOL) =

^ (BOOL 완료) {[자기 회전];}; 블록을 놓으면 코드를 단순화하기 위해 블록을 사용하는 모든 종류의 기회를 발견하게됩니다. 

IOS 응용 프로그램에서 블록 객체 사용 방법

편집자의 선택

소셜 미디어 측정법을 사용하여 판매를 늘리는 방법 - 소셜 미디어 측정 항목을 사용하는 한 회사

소셜 미디어 측정법을 사용하여 판매를 늘리는 방법 - 소셜 미디어 측정 항목을 사용하는 한 회사

판매를위한 크로스 플랫폼 참여는 Best Buy입니다. Best Buy는 모바일 쇼핑 및 소셜 쇼핑을 매장의 각 품목에 대한 QR 코드를 사용하여 매장 내 경험으로 가져 왔습니다. 고객은 상점의 각 항목에 대한 QR 코드를 스캔하여 리뷰를 포함한 더 많은 정보를 얻을 수 있습니다.

블로그에 Google 웹 로그 분석을 설치하는 방법 - 아직없는 경우

블로그에 Google 웹 로그 분석을 설치하는 방법 - 아직없는 경우

블로그 또는 사이트에서 Google 웹 로그 분석 추적 통계를 사용하여 빠르고 쉽게 설치할 수 있습니다. 설치는 1 분 밖에 걸리지 않으며 완전히 고통스럽지 않습니다. 먼저 Google 애널리틱스 ID를 가져 와서 어딘가에 작성하십시오. 쉽게 찾을 수 있습니다. Google 애널리틱스와 대시 보드에서 로그인하십시오.

웹 사이트에 Google 웹 로그 분석을 설치하는 방법 - 웹 사이트에 Google 웹 로그 분석을 설치하는

웹 사이트에 Google 웹 로그 분석을 설치하는 방법 - 웹 사이트에 Google 웹 로그 분석을 설치하는

단 1 분이며 고통스럽지 않습니다. 곧 Google 애널리틱스 덕분에 잠자는 동안 소셜 미디어 측정 항목을 추적하게 될 것입니다. 먼저 Google 애널리틱스 ID를 가져 와서 어딘가에 작성하십시오. 쉽게 찾을 수 있습니다. Google 애널리틱스 및 대시 보드에 로그인하고 톱니 바퀴 아이콘을 클릭하기 만하면됩니다. ...

편집자의 선택

마케팅 자동화에서 분할 테스트의 기본 이점 - A / B 테스트라고도하는 더미 테스트

마케팅 자동화에서 분할 테스트의 기본 이점 - A / B 테스트라고도하는 더미 테스트

다 변수 테스트뿐만 아니라 요인 일정을 유지하고 다양한 시나리오에서 다른 결과를 테스트하여 마케팅 자동화 테스트를 수행하는 것을 의미합니다. 하나의 유료 검색 광고를 통해 사람들을 2 개의 개별 방문 페이지로 유도하는 것이 그 예입니다. 방문 페이지 테스트하기 ...

자동화 된 마케팅을위한 컨텐츠 작성의 기본 - 인형

자동화 된 마케팅을위한 컨텐츠 작성의 기본 - 인형

마케팅 자동화 도구의 사용을 극대화하기 위해 먼저 사람과 콘텐츠와의 관계를 이해해야합니다. 올바른 사람에게 올바른 콘텐츠를 보내는 경우에만 자동화가 유용합니다. 이를 올바르게 수행하는 방법에 대한 기본적인 이해를 돕기 위해 사람들은 두 가지 유형이 관련되어 있음을 인식해야합니다 ...

Microsoft Dynamics CRM을 사용하는 e-Mail 및 Microsoft Dynamics CRM- 더미

Microsoft Dynamics CRM을 사용하는 e-Mail 및 Microsoft Dynamics CRM- 더미

고객 관계를 관리하는 데 도움이되는 Microsoft 도구 현대 직장에서 가장 유용한 도구 중 하나는 전자 메일이므로 전자 메일을 만들고 읽거나, 전자 메일을 특정 레코드에 연결하거나, 일정을 관리하는 데 숙련되어 있어야합니다. ...

편집자의 선택

웹 호스팅 계획에서 더 많은 것을 얻기위한 10 가지 팁 - 인형

웹 호스팅 계획에서 더 많은 것을 얻기위한 10 가지 팁 - 인형

당신은 자신의 웹 사이트 또는 블로그를 가지고 있고, 고객, 독자 또는 웹 호스팅 기술에 의존하는 추종자 만 있습니다. 다음 팁은 웹 호스팅 계획을 최대한 활용하는 데 도움이됩니다. 제어판에서 백업 옵션을 확인하십시오. 일부 제어판을 사용하면 자동화 된 백업을 수행 할 수 있습니다. ...

귀하의 웹 호스트가 귀하를 도와주지 않는 10 가지 사항 (무료) - 인형

귀하의 웹 호스트가 귀하를 도와주지 않는 10 가지 사항 (무료) - 인형

은 웹 호스트만큼 멋지고, 웹 사이트를 디자인, 제작 및 운영하는 데 도움이되는 일에는 한계가 있습니다. 그것은 모두 돈으로옵니다. 귀하가 기꺼이 지불하는 한 귀하의 호스트는 기꺼이 도움이 될 것입니다. 각 호스트는 다릅니다. ...