}
β (void) setObject:(id)paramObject atIndexedSubscript:(NSUInteger)paramIndex{
switch (paramIndex){
case 0:{
self.firstName = paramObject;
break;
}
case 1:{
self.lastName = paramObject;
break;
}
default:{
[NSException raise:@"Invalid index" format: nil];
}
}
}
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π²Π΅ΡΡ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ ΡΠ°Π½Π΅Π΅ ΠΊΠΎΠ΄ Π²ΠΎΡ ΡΠ°ΠΊ:
Person *person = [Person new];
person[kFirstNameKey] = @"Tim";
person[kLastNameKey] = @"Cook";
NSString *firstNameByKey = person[kFirstNameKey];
NSString *lastNameByKey = person[kLastNameKey];
NSString *firstNameByIndex = person[0];
NSString *lastNameByIndex = person[1];
if ([firstNameByKey isEqualToString: firstNameByIndex] &&
[lastNameByKey isEqualToString: lastNameByIndex]){
NSLog(@"Success");
} else {
NSLog(@"Something is not right");
}
ΠΡΠ»ΠΈ Π²Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ»ΠΈ Π²ΡΠ΅ ΡΠ°Π³ΠΈ, ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Π² ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅, ΡΠΎ Π½Π° ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΡΠ²ΠΈΡΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Success.
1.1. ΠΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ UIAlertView
ΠΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°ΡΠΈ
ΠΡ Ρ ΠΎΡΠΈΡΠ΅, ΡΡΠΎΠ±Ρ Ρ Π²Π°ΡΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΠ»ΠΎΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΎ ΠΊΠ°ΠΊ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ (Alert). Π’Π°ΠΊΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠΏΡΠΎΡΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΡΡ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅, Π·Π°ΠΏΡΠΎΡΠΈΡΡ Ρ Π½Π΅Π³ΠΎ ΠΈΠΌΡ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡΡ Π²Π²Π΅ΡΡΠΈ ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠ΅ΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² ΡΠ²ΠΎΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.
Π Π΅ΡΠ΅Π½ΠΈΠ΅
ΠΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ UIAlertView.
ΠΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅
ΠΡΠ»ΠΈ Π²Ρ ΡΠ°ΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ΡΡ iOS, ΡΠΎ Π²Π°ΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎ ΠΏΠΎΠΏΠ°Π΄Π°Π»ΠΈΡΡ Π²ΠΈΠ΄Ρ-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ. ΠΡΠΈΠΌΠ΅Ρ ΡΠ°ΠΊΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½Π° ΡΠΈΡ. 1.1.
Π ΠΈΡ. 1.1. ΠΠΈΠ΄-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅, ΡΠΎΠΎΠ±ΡΠ°ΡΡΠΈΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΡΡΠΎ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π°ΠΊΡΠΈΠ²Π½ΠΎΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Ρ ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠΎΠΌ
ΠΠ°ΠΈΠ»ΡΡΡΠΈΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π²ΠΈΠ΄Π°-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ, ΡΠ°Π·ΡΠΌΠ΅Π΅ΡΡΡ, Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Π΅Π³ΠΎ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ°-ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΠ°:
β (void) viewDidAppear:(BOOL)paramAnimated{
[super viewDidAppear: paramAnimated];
UIAlertView *alertView = [[UIAlertView alloc]
initWithTitle:@"Alert"
message:@"You've been delivered an alert"
delegate: nil
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"OK", nil];
[alertView show];
}
ΠΠΎΠ³Π΄Π° ΡΡΠΎΡ Π²ΠΈΠ΄-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡΡ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΎΠ½ ΡΠ²ΠΈΠ΄ΠΈΡ ΡΠΊΡΠ°Π½, ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΉ ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡ Π½Π° ΡΠΈΡ. 1.2.
Π ΠΈΡ. 1.2. ΠΡΠΎΡΡΠΎΠΉ Π²ΠΈΠ΄-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΡΠΉ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΠΈΠ΄-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅, ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ show. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ Π²ΡΠ΅Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π½Ρ Π±Π°Π·ΠΎΠ²ΠΎΠΌΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΡ-ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΡ Π²ΠΈΠ΄Π°-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ:
β’ title β ΡΡΡΠΎΠΊΠ°, ΠΊΠΎΡΠΎΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ²ΠΈΠ΄ΠΈΡ Π² Π²Π΅ΡΡ Π½Π΅ΠΉ ΡΠ°ΡΡΠΈ Π²ΠΈΠ΄Π°-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΅Π½ΠΈΡ. ΠΠ° ΡΠΈΡ. 1.2 ΡΡΠ° ΡΡΡΠΎΠΊΠ° β Title;
β’ message β ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΠ° ΡΠΈΡ. 1.2 Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Message;
β’ delegate β ΠΎΠΏΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ-Π΄Π΅Π»Π΅Π³Π°Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΠΌ Π²ΠΈΠ΄Ρ-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ. ΠΠ°ΡΠ΅ΠΌ ΡΡΠΎΡ ΠΎΠ±ΡΠ΅ΠΊΡ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°ΠΆΠΌΠ΅Ρ Π½Π° ΡΠΊΡΠ°Π½Π½ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ, ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½Π½ΡΡ Π² ΡΡΠΎΠΌ Π²ΠΈΠ΄Π΅. ΠΠ±ΡΠ΅ΠΊΡ, ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΡΠΉ Π΄Π°Π½Π½ΠΎΠΌΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ, Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Ρ UIAlertViewDelegate;
β’ cancelButtonTitle β ΡΡΡΠΎΠΊΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°ΡΡΡΡ ΠΊΠ½ΠΎΠΏΠΊΠ΅ ΠΎΡΠΌΠ΅Π½Ρ (Cancel Button) Π² Π²ΠΈΠ΄Π΅-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠΈ. ΠΡΠ»ΠΈ Π² Π²ΠΈΠ΄Π΅-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠΈ Π΅ΡΡΡ ΠΊΠ½ΠΎΠΏΠΊΠ° ΠΎΡΠΌΠ΅Π½Ρ, ΡΠΎ ΡΠ°ΠΊΠΎΠΉ Π²ΠΈΠ΄ ΠΎΠ±ΡΡΠ½ΠΎ ΠΏΠΎΠ±ΡΠΆΠ΄Π°Π΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΊ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ. ΠΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π΅ Ρ ΠΎΡΠ΅Ρ ΡΠΎΠ²Π΅ΡΡΠ°ΡΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅, ΡΠΎ ΠΎΠ½ Π½Π°ΠΆΠΈΠΌΠ°Π΅Ρ ΠΊΠ½ΠΎΠΏΠΊΡ ΠΎΡΠΌΠ΅Π½Ρ. ΠΡΠΈΡΠ΅ΠΌ Π½Π° ΡΡΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠ΅ Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΡΡΡΠΎΠΊΠ°-Π½Π°Π΄ΠΏΠΈΡΡ Cancel (ΠΡΠΌΠ΅Π½ΠΈΡΡ). ΠΠ°Π΄ΠΏΠΈΡΡ Π΄Π»Ρ ΡΡΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΠ΅ Π²Ρ ΡΠ°ΠΌΠΈ, ΠΈ ΡΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΎΠΏΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΉ β ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΠΈ Π±Π΅Π· ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΡΠΌΠ΅Π½Π°;
β’ otherButtonTitles β Π½Π°Π΄ΠΏΠΈΡΠΈ Π½Π° Π΄ΡΡΠ³ΠΈΡ ΠΊΠ½ΠΎΠΏΠΊΠ°Ρ , ΡΠ΅Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ Π² Π²ΠΈΠ΄Π΅-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠΈ. Π Π°Π·Π΄Π΅Π»ΡΠΉΡΠ΅ ΡΠ°ΠΊΠΈΠ΅ Π½Π°Π΄ΠΏΠΈΡΠΈ Π·Π°ΠΏΡΡΡΠΌΠΈ. ΠΡΠΆΠ½ΠΎ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ Π² ΠΊΠΎΠ½ΡΠ΅ ΡΠΏΠΈΡΠΊΠ° Π½Π°Π·Π²Π°Π½ΠΈΠΉ ΡΡΠΎΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ nil, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠΎΠ΅ ΡΠΈΠ³Π½Π°Π»ΡΠ½ΠΎΠΉ ΠΌΠ΅ΡΠΊΠΎΠΉ. ΠΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΌ.
ΠΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π²ΠΎΠΎΠ±ΡΠ΅ Π±Π΅Π· ΠΊΠ½ΠΎΠΏΠΎΠΊ. ΠΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ ΡΠΌΠΎΠΆΠ΅Ρ ΡΠ±ΡΠ°ΡΡ Ρ ΡΠΊΡΠ°Π½Π°. Π‘ΠΎΠ·Π΄Π°Π²Π°Ρ ΡΠ°ΠΊΠΎΠΉ Π²ΠΈΠ΄, Π²Ρ ΠΊΠ°ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠ·Π°Π±ΠΎΡΠΈΡΡΡΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΎΠ½ ΡΠ±ΠΈΡΠ°Π»ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ΅ΡΠ΅Π· 3 ΡΠ΅ΠΊΡΠ½Π΄Ρ ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΠΎΡΠ²ΠΈΡΡΡ. ΠΠΈΠ΄-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π±Π΅Π· ΠΊΠ½ΠΎΠΏΠΎΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ ΡΠ±ΠΈΡΠ°Π΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ, β ΡΡΠΎ Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π±Π΅Π΄ΡΡΠ²ΠΈΠ΅, Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΠ°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ»ΡΡΠΈΡ Π½ΠΈΠ·ΠΊΠΈΠ΅ ΠΎΡΠ΅Π½ΠΊΠΈ Π½Π° App Store Π·Π° ΡΠΎ, ΡΡΠΎ Π²ΠΈΠ΄-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ. ΠΠ΅Π»ΠΈΠΊΠ° Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡ, ΡΡΠΎ Π²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π²ΠΎΠΎΠ±ΡΠ΅ ΡΠ΄Π°Π»ΡΡ Ρ ΡΡΠ½ΠΊΠ°.
ΠΠΈΠ΄Ρ-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΎΡΠΌΠ»ΡΡΡ Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΡΠΈΠ»Π΅ΠΉ. Π ΠΊΠ»Π°ΡΡΠ΅ UIAlertView Π΅ΡΡΡ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ alertViewStyle ΡΠΈΠΏΠ° UIAlertViewStyle:
typedef NS_ENUM(NSInteger, UIAlertViewStyle) {
UIAlertViewStyleDefault = 0,
UIAlertViewStyleSecureTextInput,
UIAlertViewStylePlainTextInput,
UIAlertViewStyleLoginAndPasswordInput
};
ΠΠΎΡ ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΡΡΠΈΡ ΡΡΠΈΠ»Π΅ΠΉ:
β’ UIAlertViewStyleDefault β ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΡΡΠΈΠ»Ρ Π²ΠΈΠ΄Π°-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΌΡ Π²ΠΈΠ΄Π΅Π»ΠΈ Π½Π° ΡΠΈΡ. 1.2;
β’ UIAlertViewStyleSecureTextInput β ΠΏΡΠΈ ΡΠ°ΠΊΠΎΠΌ ΡΡΠΈΠ»Π΅ Π² Π²ΠΈΠ΄Π΅-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠΈ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡΡ Π·Π°ΡΠΈΡΠ΅Π½Π½ΠΎΠ΅ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ»Π΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΡΠ°Π½Π΅Ρ ΡΠΊΡΡΠ²Π°ΡΡ ΠΎΡ Π·ΡΠΈΡΠ΅Π»Ρ ΡΠΈΠΌΠ²ΠΎΠ»Ρ, Π²Π²ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ. Π’Π°ΠΊΠΎΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ Π²Π°ΠΌ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Ρ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΡΠ΅ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΅Π³ΠΎ ΡΡΠ΅ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π΄Π»Ρ Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ Π±Π°Π½ΠΊΠΎΠ²ΡΠΊΠΎΠ³ΠΎ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ;
β’ UIAlertViewStylePlainTextInput β ΠΏΡΠΈ ΡΠ°ΠΊΠΎΠΌ ΡΡΠΈΠ»Π΅ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π½Π΅Π·Π°ΡΠΈΡΠ΅Π½Π½ΠΎΠ΅ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ»Π΅. ΠΡΠΎΡ ΡΡΠΈΠ»Ρ ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΡΠ»ΡΡΠ°Π΅Π², ΠΊΠΎΠ³Π΄Π° Π²Ρ ΠΏΡΠΎΡΠΈΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²Π²Π΅ΡΡΠΈ Π½Π΅ΡΠ΅ΠΊΡΠ΅ΡΠ½ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π½ΠΎΠΌΠ΅Ρ Π΅Π³ΠΎ ΡΠ΅Π»Π΅ΡΠΎΠ½Π°;
β’ UIAlertViewStyleLoginAndPasswordInput β ΠΏΡΠΈ ΡΠ°ΠΊΠΎΠΌ ΡΡΠΈΠ»Π΅ Π² Π²ΠΈΠ΄Π΅-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠΈ Π±ΡΠ΄Π΅Ρ Π΄Π²Π° ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ ΠΏΠΎΠ»Ρ: Π½Π΅Π·Π°ΡΠΈΡΠ΅Π½Π½ΠΎΠ΅ β Π΄Π»Ρ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ Π·Π°ΡΠΈΡΠ΅Π½Π½ΠΎΠ΅ β Π΄Π»Ρ ΠΏΠ°ΡΠΎΠ»Ρ.
ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°ΡΠΈΠ½Π°Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π²ΠΈΠ΄ΠΎΠΌ-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ΠΌ, ΡΠΊΠ°ΠΆΠΈΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡ-Π΄Π΅Π»Π΅Π³Π°Ρ Π΄Π»Ρ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ. ΠΡΠΎΡ Π΄Π΅Π»Π΅Π³Π°Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΠ΄ΡΠΈΠ½ΡΡΡΡΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Ρ UIAlertViewDelegate. Π‘Π°ΠΌΡΠΉ Π²Π°ΠΆΠ½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌΡΠΉ Π² ΡΡΠΎΠΌ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π΅, β alertView: clickedButtonAtIndex:, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΡΡΠ°Π·Ρ ΠΆΠ΅, ΠΊΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°ΠΆΠΈΠΌΠ°Π΅Ρ Π½Π° ΠΎΠ΄Π½Ρ ΠΈΠ· ΠΊΠ½ΠΎΠΏΠΎΠΊ Π² Π²ΠΈΠ΄Π΅-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠΈ. ΠΠ½Π΄Π΅ΠΊΡ Π½Π°ΠΆΠ°ΡΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ Π²Π°ΠΌ ΡΠ΅ΡΠ΅Π· ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ clickedButtonAtIndex.
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΠΌ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΡΠΏΡΠΎΡΠΈΠΌ, Ρ ΠΎΡΠ΅Ρ Π»ΠΈ ΠΎΠ½ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π½Π° ΡΠ°ΠΉΡ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅ Safari ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π½Π°ΠΆΠΌΠ΅Ρ ΡΡΡΠ»ΠΊΡ Π½Π° ΡΡΠΎΡ ΡΠ°ΠΉΡ, ΠΏΡΠΈΡΡΡΡΡΠ²ΡΡΡΡΡ Π² Π½Π°ΡΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅. Π ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠΈ Π±ΡΠ΄ΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π΄Π²Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ: Yes (ΠΠ°) ΠΈ No (ΠΠ΅Ρ). Π Π΄Π΅Π»Π΅Π³Π°ΡΠ΅ Π²ΠΈΠ΄Π°-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ ΠΌΡ ΡΠ²ΠΈΠ΄ΠΈΠΌ, ΠΊΠ°ΠΊΠ°Ρ ΠΊΠ½ΠΎΠΏΠΊΠ° Π±ΡΠ»Π° Π½Π°ΠΆΠ°ΡΠ°, ΠΈ ΠΏΡΠ΅Π΄ΠΏΡΠΈΠΌΠ΅ΠΌ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ.
Π‘Π½Π°ΡΠ°Π»Π° ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΠΌ Π΄Π²Π° ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ Π½Π°Π΄ΠΏΠΈΡΡ Π½Π° ΡΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΠΈΠ· Π΄Π²ΡΡ ΠΊΠ½ΠΎΠΏΠΎΠΊ:
β (NSString *) yesButtonTitle{
return @"Yes";
}
β (NSString *) noButtonTitle{
return @"No";
}
Π’Π΅ΠΏΠ΅ΡΡ Π½ΡΠΆΠ½ΠΎ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ Π½Π°ΡΠ΅Π³ΠΎ Π²ΠΈΠ΄Π° ΠΏΠΎΠ΄ΡΠΈΠ½ΡΠ΅ΡΡΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Ρ UIAlertViewDelegate:
#import <UIKit/UIKit.h>
#import Β«ViewController.hΒ»
@interface ViewController () <UIAlertViewDelegate>
@end
@implementation ViewController
β¦
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ°Π³ β ΡΠΎΠ·Π΄Π°ΡΡ ΠΈ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΠΊΠ½ΠΎ Ρ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ΠΌ:
β (void)viewDidAppear:(BOOL)animated{
[super viewDidAppear: animated];
self.view.backgroundColor = [UIColor whiteColor];
NSString *message = @"Are you sure you want to open this link in Safari?";
UIAlertView *alertView = [[UIAlertView alloc]
initWithTitle:@"Open Link"
message: message
delegate: self
cancelButtonTitle: [self noButtonTitle]
otherButtonTitles: [self yesButtonTitle], nil];
[alertView show];
}
ΠΠΈΠ΄-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΠΊΠ°ΠΊ Π½Π° ΡΠΈΡ. 1.3.
Π ΠΈΡ. 1.3. ΠΠΈΠ΄-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ Ρ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ No (ΠΠ΅Ρ) ΠΈ Yes (ΠΠ°)
ΠΠ°Π»Π΅Π΅ Π½ΡΠΆΠ½ΠΎ ΡΠ·Π½Π°ΡΡ, ΠΊΠ°ΠΊΠΎΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΡΠ±ΡΠ°Π» Π² Π½Π°ΡΠ΅ΠΌ ΠΎΠΊΠ½Π΅ β No (ΠΠ΅Ρ) ΠΈΠ»ΠΈ Yes (ΠΠ°). ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ alertView: clickedButtonAtIndex:, ΠΎΡΠ½ΠΎΡΡΡΠΈΠΉΡΡ ΠΊ Π΄Π΅Π»Π΅Π³Π°ΡΡ Π½Π°ΡΠ΅Π³ΠΎ Π²ΠΈΠ΄Π°-ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ:
β (void) alertView:(UIAlertView *)alertView
clickedButtonAtIndex:(NSInteger)buttonIndex{
NSString *buttonTitle = [alertView buttonTitleAtIndex: buttonIndex];
if ([buttonTitle isEqualToString: [self yesButtonTitle]]){
NSLog(@"User pressed the Yes button.");
}