β (NSInteger)collectionView:(UICollectionView *)collectionView
numberOfItemsInSection:(NSInteger)section{
return 0;
}
/* ΠΡ ΠΏΠΎΠΊΠ° Π½Π΅ Π·Π½Π°Π΅ΠΌ, ΠΊΠ°ΠΊ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ ΡΠ΅ΠΊΡΠΈΠΈ Π² ΡΠ±ΠΎΡΠ½ΡΠΉ Π²ΠΈΠ΄, ΠΏΠΎΡΡΠΎΠΌΡ Π΄Π»Ρ Π½Π°ΡΠ°Π»Π° Π²ΠΎΠ·Π²ΡΠ°ΡΠΈΠΌ Π·Π΄Π΅ΡΡ nil */
β (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView
cellForItemAtIndexPath:(NSIndexPath *)indexPath{
return nil;
}
@end
ΠΠ° Π΄Π°Π½Π½ΠΎΠΌ ΡΡΠ°ΠΏΠ΅ ΡΡΠΎΡ ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠΈΡΠ°ΡΡ ΠΏΠΎΠ»Π½ΡΠΌ. ΠΠΎ, ΠΊΠ°ΠΊ Π±ΡΠ»ΠΎ ΡΠΊΠ°Π·Π°Π½ΠΎ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ 5.1, ΠΏΡΠΈ ΠΏΠΎΠΏΡΡΠΊΠ΅ Π΅Π³ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π²Π°ΡΠΈΠΉΠ½ΠΎ Π·Π°Π²Π΅ΡΡΠΈΡΡΡ. ΠΠ΅Π»ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ Π΄Π΅Π»Π΅Π³Π°Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΠΌΠ°ΠΊΠ΅ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠ±ΠΎΡΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° Π² Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ nil. ΠΡΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π½ΠΈΠΊΡΠ΄Π° Π½Π΅ ΠΈΡΡΠ΅Π·Π»Π°, ΠΌΡ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌΡΡ ΡΡΡΡΠ°Π½ΠΈΡΡ Π΅Π΅ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ 5.3.
Π‘ΠΌ. ΡΠ°ΠΊΠΆΠ΅
Π Π°Π·Π΄Π΅Π»Ρ 5.0 ΠΈ 5.1.
5.3. ΠΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ Π² ΡΠ±ΠΎΡΠ½ΠΎΠΌ Π²ΠΈΠ΄Π΅
ΠΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°ΡΠΈ
Π’ΡΠ΅Π±ΡΠ΅ΡΡΡ, ΡΡΠΎΠ±Ρ Π²Π°Ρ ΡΠ±ΠΎΡΠ½ΡΠΉ Π²ΠΈΠ΄ Π±ΡΠ» ΡΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Π°Π½ ΠΊΠ°ΠΊ ΡΠ°Π±Π»ΠΈΡΠ° (ΡΠ΅ΡΠΊΠ°), ΡΡΠΎΠ±Ρ Π΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π»ΠΎΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π½Π° ΡΠΈΡ. 5.1.
Π Π΅ΡΠ΅Π½ΠΈΠ΅
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΠΊΠ»Π°ΡΡΠ° UICollectionViewFlowLayout, ΠΈΠ½ΡΡΠ°Π½ΡΠΈΡΡΠΉΡΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ΡΠ±ΠΎΡΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π²ΡΠ΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°-ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΠ° initWithCollectionViewLayout: ΠΈΠ· ΠΊΠ»Π°ΡΡΠ° UICollectionViewController, Π° Π·Π°ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅Π΄Π°ΠΉΡΠ΅ ΡΡΠΎΠΌΡ ΠΌΠ΅ΡΠΎΠ΄Ρ Π²Π°Ρ ΠΌΠ°ΠΊΠ΅ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ.
ΠΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅
ΠΠ°ΠΊΠ΅Ρ Π΄Π»Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ ΠΎΡΠ΅Π½Ρ Π»Π΅Π³ΠΊΠΎ ΠΈΠ½ΡΡΠ°Π½ΡΠΈΡΠΎΠ²Π°ΡΡ. ΠΠΎ ΠΏΡΠ΅ΠΆΠ΄Π΅, ΡΠ΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ Π΅Π³ΠΎ ΡΠ±ΠΎΡΠ½ΠΎΠΌΡ Π²ΠΈΠ΄Ρ, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΡΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°Π½. ΠΠ΄Π΅ΡΡ ΠΌΡ ΠΎΠ±ΡΡΠ΄ΠΈΠΌ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ° ΠΊΠ»Π°ΡΡΠ° UICollectionViewFlowLayout ΠΈ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΡΡΠ΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π½Π°Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ΅Ρ, ΠΊΠ°ΠΊ ΡΡΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π° Π²Π»ΠΈΡΡΡ Π½Π° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΡΠ΅Π΅ΠΊ ΡΠ±ΠΎΡΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° Π½Π° ΡΠΊΡΠ°Π½Π΅.
β’ minimumLineSpacing β Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ, ΡΠΎΠΎΠ±ΡΠ°ΡΡΠ΅Π΅ ΠΌΠ°ΠΊΠ΅ΡΡ Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΎΠΉ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΎΡΠ΅ΠΊ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΠ΄Π°ΠΌΠΈ. ΠΠ°ΠΊΠ΅ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ΄Π΅Π»ΠΈΡΡ ΠΈ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°, ΡΡΠΎΠ±Ρ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠ° Π²ΡΠ³Π»ΡΠ΄Π΅Π»Π° ΠΊΡΠ°ΡΠΈΠ²ΠΎ, Π½ΠΎ ΠΌΠ΅Π½ΡΡΠ΅ Π²ΡΠ΄Π΅Π»ΠΈΡΡ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ. ΠΡΠ»ΠΈ Π²Π°Ρ ΡΠ±ΠΎΡΠ½ΡΠΉ Π²ΠΈΠ΄ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΠΌΠ°Π» ΠΈ Π² Π½Π΅Π³ΠΎ Π½Π΅ ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡΡΡ Π²ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ, ΠΎΠ½ΠΈ Π±ΡΠ΄ΡΡ ΠΎΠ±ΡΠ΅Π·Π°ΡΡΡΡ, ΠΊΠ°ΠΊ ΠΈ Π»ΡΠ±ΡΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ Π²ΠΈΠ΄Ρ Π² iOS SDK.
β’ minimumInteritemSpacing β Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ, ΡΠΎΠΎΠ±ΡΠ°ΡΡΠ΅Π΅ ΠΌΠ°ΠΊΠ΅ΡΡ Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΎΠΉ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΎΡΠ΅ΠΊ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΠ΅ΠΉΠΊΠ°ΠΌΠΈ Π² ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅. ΠΠΏΡΡΡ ΠΆΠ΅ ΡΡΠΎ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΎΡΠ΅ΠΊ, ΠΈ ΠΌΠ°ΠΊΠ΅Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΡΡΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΡΠ±ΠΎΡΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π°.
β’ itemSize β Π²Π΅Π»ΠΈΡΠΈΠ½Π° CGSize, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ°Ρ ΡΠ°Π·ΠΌΠ΅ΡΡ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΠ΅ΠΉΠΊΠΈ Π² ΡΠ±ΠΎΡΠ½ΠΎΠΌ Π²ΠΈΠ΄Π΅.
β’ scrollDirection β Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠΏΠ° UICollectionViewScrollDirection, ΡΠΎΠΎΠ±ΡΠ°ΡΡΠ΅Π΅ ΠΌΠ°ΠΊΠ΅ΡΡ Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΎΠΉ, ΠΊΠ°ΠΊ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡΠΎΠΊΡΡΡΠΈΠ²Π°ΡΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ±ΠΎΡΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π°. Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠΊΡΡΡΠΈΠ²Π°ΡΡΡΡ Π»ΠΈΠ±ΠΎ ΠΏΠΎ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΠΈ, Π»ΠΈΠ±ΠΎ ΠΏΠΎ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΠΈ, Π½ΠΎ Π½Π΅ Π² ΠΎΠ±ΠΎΠΈΡ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΡΠΎ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ ΠΈΠΌΠ΅Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ UICollectionViewScrollDirectionVertical, Π½ΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π΅Π³ΠΎ Π½Π° UICollectionViewScrollDirectionHorizontal.
β’ sectionInset β Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠΏΠ° UIEdgeInsets, Π·Π°Π΄Π°ΡΡΠ΅Π΅ ΡΠ°Π·ΠΌΠ΅Ρ ΠΏΠΎΠ»Π΅ΠΉ Π²ΠΎΠΊΡΡΠ³ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠ΅ΠΊΡΠΈΠΈ. Π ΠΏΡΠΈΠ½ΡΠΈΠΏΠ΅, ΠΏΠΎΠ»Ρ β ΡΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π½Π΅ ΠΎΡΠ½ΠΎΡΠΈΡΡΡ Π½ΠΈ ΠΊ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΡΡΠ΅Π΅ΠΊ. ΠΠ»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°ΠΊΠΈΡ ΠΎΡΡΡΡΠΏΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ UIEdgeInsetsMake. Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΠ»Ρ Π΅ΡΡΡ Π²Π΅ΡΡ Π½ΠΈΠΉ, Π½ΠΈΠΆΠ½ΠΈΠΉ, ΠΏΡΠ°Π²ΡΠΉ ΠΈ Π»Π΅Π²ΡΠΉ ΠΊΡΠ°ΠΉ, Π²ΡΠ΅ ΠΎΠ½ΠΈ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°ΡΡΡΡ ΡΠΈΡΠ»Π°ΠΌΠΈ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ. ΠΠ΅ Π²ΠΎΠ»Π½ΡΠΉΡΠ΅ΡΡ, Π΅ΡΠ»ΠΈ ΡΡΠΎ ΠΎΠ±ΡΡΡΠ½Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΅ΡΡΡ ΠΏΡΡΠ°Π½ΡΠΌ β Π²ΡΠΊΠΎΡΠ΅ Π²ΡΠ΅ Π²ΡΡΠ°Π½Π΅Ρ Π½Π° ΡΠ²ΠΎΠΈ ΠΌΠ΅ΡΡΠ°.
Π Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ Π² ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ Π±ΡΠ΄Ρ ΠΈΡΡ ΠΎΠ΄ΠΈΡΡ ΠΈΠ· ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π²Ρ ΡΠΆΠ΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ»ΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ, ΠΈΠ·Π»ΠΎΠΆΠ΅Π½Π½ΡΠ΅ Π² ΡΠ°Π·Π΄Π΅Π»Π°Ρ 5.1 ΠΈ 5.2, ΠΈ Π½Π° Π΄Π°Π½Π½ΠΎΠΌ ΡΡΠ°ΠΏΠ΅ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π½Π°ΠΏΠΈΡΠ°Π½ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ΡΠ±ΠΎΡΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π°, Π° ΡΠ°ΠΊΠΆΠ΅ Π΄Π΅Π»Π΅Π³Π°Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΠΈΠΉ ΡΡΠΎΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ΡΠ±ΠΎΡΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΊΠΎΡΠ½Π΅Π²ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° Π²ΠΈΠ΄Π° ΠΎΠΊΠ½Π°. Π’Π΅ΠΏΠ΅ΡΡ ΠΌΡ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌΡΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π΄Π΅Π»Π΅Π³Π°Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΡΠΎΠ±Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ ΡΠ±ΠΎΡΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° Π΄Π΅ΠΉΡΡΠ²ΡΡΡΠΈΠΉ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ:
#import Β«AppDelegate.hΒ»
#import Β«ViewController.hΒ»
@implementation AppDelegate
β (UICollectionViewFlowLayout *) flowLayout{
UICollectionViewFlowLayout *flowLayout =
[[UICollectionViewFlowLayout alloc] init];
flowLayout.minimumLineSpacing = 20.0f;
flowLayout.minimumInteritemSpacing = 10.0f;
flowLayout.itemSize = CGSizeMake(80.0f, 120.0f);
flowLayout.scrollDirection = UICollectionViewScrollDirectionVertical;
flowLayout.sectionInset = UIEdgeInsetsMake(10.0f, 20.0f, 10.0f, 20.0f);
return flowLayout;
}
β (BOOL) application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{
/* ΠΠ½ΡΡΠ°Π½ΡΠΈΡΡΠ΅ΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ΡΠ±ΠΎΡΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° Ρ Π²Π°Π»ΠΈΠ΄Π½ΡΠΌ ΠΌΠ°ΠΊΠ΅ΡΠΎΠΌ
Π΄Π»Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ */
ViewController *viewController =
[[ViewController alloc]
initWithCollectionViewLayout: [self flowLayout]];
self.window = [[UIWindow alloc] initWithFrame:
[[UIScreen mainScreen] bounds]];
self.window.backgroundColor = [UIColor whiteColor];
/* ΠΠ°Π΄Π°Π΅ΠΌ ΡΠ±ΠΎΡΠ½ΡΠΉ Π²ΠΈΠ΄ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΊΠΎΡΠ½Π΅Π²ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° Π²ΠΈΠ΄Π° ΠΎΠΊΠ½Π° */
self.window.rootViewController = viewController;
[self.window makeKeyAndVisible];
return YES;
}
Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° ΡΠ±ΠΎΡΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° ΠΎΡΡΠ°Π΅ΡΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅, ΠΊΠ°ΠΊ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ 5.2. ΠΡΠ»ΠΈ ΡΠ΅ΠΉΡΠ°Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΠΎ Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΠΏΡΠΎΡΡΠΎ ΡΠ΅ΡΠ½ΡΠΉ ΡΠΊΡΠ°Π½, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° ΡΠ±ΠΎΡΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° ΡΠΎΠ½ Π²ΠΈΠ΄Π° Π΄Π°ΠΆΠ΅ Π½Π΅ Π·Π°ΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π½Π° Π±Π΅Π»ΡΠΉ. ΠΠΎΠΊΠ° Π½Π°Ρ ΡΡΠΎ ΡΡΡΡΠ°ΠΈΠ²Π°Π΅Ρ. ΠΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠΆΠ΅ Π½Π΅ Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ Π°Π²Π°ΡΠΈΠΉΠ½ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Ρ Π½Π°Ρ ΡΠΆΠ΅ Π΅ΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΌΠ°ΠΊΠ΅ΡΠ°.
Π‘ΠΌ. ΡΠ°ΠΊΠΆΠ΅
Π Π°Π·Π΄Π΅Π»Ρ 5.1 ΠΈ 5.2.
5.4. ΠΠ°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΠ±ΠΎΡΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° ΠΏΡΠΎΡΡΠ΅ΠΉΡΠΈΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ
ΠΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°ΡΠΈ
ΠΡ ΡΠΆΠ΅ Π·Π°ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π»ΠΈ Π΄Π»Ρ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ±ΠΎΡΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° ΠΌΠ°ΠΊΠ΅Ρ Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΎΠΉ, Π½ΠΎ ΠΏΠΎΠΊΠ° Π½Π΅ Π·Π½Π°Π΅ΡΠ΅, ΠΊΠ°ΠΊ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ Π² Π½Π΅ΠΌ ΡΡΠ΅ΠΉΠΊΠΈ.
Π Π΅ΡΠ΅Π½ΠΈΠ΅
ΠΠ»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π°ΡΠΈΡ ΡΡΠ΅Π΅ΠΊ Π»ΠΈΠ±ΠΎ Π½Π°ΠΏΡΡΠΌΡΡ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ ΠΊΠ»Π°ΡΡΠΎΠΌ UICollectionViewCell, Π»ΠΈΠ±ΠΎ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄ΠΈΡΠ΅ ΠΎΡ Π½Π΅Π³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»Π°ΡΡ, Π½Π° Π±Π°Π·Π΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠΆΠ΅ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π΄Π°Π»Π΅Π΅, Ρ Π²Π°Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ°ΠΉΠ». xib, Π°ΡΡΠΎΡΠΈΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Ρ ΡΡΠ΅ΠΉΠΊΠΎΠΉ.
ΠΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅
Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ Ρ ΠΈΡΡ ΠΎΠΆΡ ΠΈΠ· ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π²Ρ ΡΠΆΠ΅ ΠΏΡΠΎΡΠ°Π±ΠΎΡΠ°Π»ΠΈ ΡΠ°Π·Π΄Π΅Π»Ρ 5.1β5.3 ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ»ΠΈ Π±Π°Π·ΠΎΠ²ΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
ΠΡΠ΄Π΅ΠΌ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΠΎ ΠΏΠΎΡΡΠ΄ΠΊΡ. ΠΠ°ΡΠ½Π΅ΠΌ Ρ ΡΠ°ΠΌΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΠΈ ΡΠ°ΠΌΠΎΠ³ΠΎ Π±ΡΡΡΡΠΎΠ³ΠΎ ΡΠΏΠΎΡΠΎΠ±Π° ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΡΠ΅Π΅ΠΊ. ΠΠ½ΡΡΠ°Π½ΡΠΈΡΡΠ΅ΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΠΈΠΏΠ° UICollectionViewCell ΠΈ Π·Π°Π½Π΅ΡΠ΅ΠΌ ΠΈΡ Π² ΡΠ±ΠΎΡΠ½ΡΠΉ Π²ΠΈΠ΄ Π² Π½Π°ΡΠ΅ΠΌ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ΅ Π΄Π°Π½Π½ΡΡ . Π£ ΠΊΠ»Π°ΡΡΠ° UICollectionViewCell Π΅ΡΡΡ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ Π²ΠΈΠ΄Π° Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠΎΠ΅ contentView, ΠΊΡΠ΄Π° Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ Π²ΠΈΠ΄Ρ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°Π΄Π°Π²Π°ΡΡ ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΡΡΠ΅ΠΉΠΊΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ²Π΅Ρ ΡΠΎΠ½Π°. ΠΠΌΠ΅Π½Π½ΠΎ ΡΠ²Π΅ΡΠΎΠΌ ΡΠΎΠ½Π° ΠΌΡ ΠΈ Π·Π°ΠΉΠΌΠ΅ΠΌΡΡ Π² ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅. ΠΠΎ ΠΏΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ, ΠΊΠ°ΠΊ Π½Π°ΡΠ°ΡΡ, ΠΎΠΏΠΈΡΠ΅ΠΌ, ΡΠ΅Π³ΠΎ ΠΌΡ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌΡΡ Π΄ΠΎΠ±ΠΈΡΡΡΡ Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅, ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠ±ΡΡΡΠ½ΠΈΠΌ ΡΡΠΎΡΡΠΈΠ΅ ΠΏΠ΅ΡΠ΅Π΄ Π½Π°ΠΌΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ.
ΠΡ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌΡΡ Π·Π°ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°ΡΡ ΡΠ±ΠΎΡΠ½ΡΠΉ Π²ΠΈΠ΄ Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΎΠΉ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π±ΡΠ΄ΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ ΡΡΠΈ ΡΠ΅ΠΊΡΠΈΠΈ. Π ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ΡΠ΅ΠΊΡΠΈΠΉ Π±ΡΠ΄Π΅Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ ΠΎΡ 20 Π΄ΠΎ 40 ΡΡΠ΅Π΅ΠΊ, ΠΏΡΠΈΡΠ΅ΠΌ Π² ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΠ΅ΠΊΡΠΈΠΈ Π²ΡΠ΅ ΡΡΠ΅ΠΉΠΊΠΈ ΠΊΡΠ°ΡΠ½ΡΠ΅, Π²ΠΎ Π²ΡΠΎΡΠΎΠΉ β Π·Π΅Π»Π΅Π½ΡΠ΅, Π² ΡΡΠ΅ΡΡΠ΅ΠΉ β ΡΠΈΠ½ΠΈΠ΅ (ΡΠΈΡ. 5.5).
Π ΠΈΡ. 5.5. ΠΡΠΎΡΡΠΎΠΉ ΡΠ±ΠΎΡΠ½ΡΠΉ Π²ΠΈΠ΄ Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΎΠΉ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ ΡΡΠΈ ΡΠ΅ΠΊΡΠΈΠΈ Ρ ΡΡΠ΅ΠΉΠΊΠ°ΠΌΠΈ ΡΠ°Π·Π½ΡΡ ΡΠ²Π΅ΡΠΎΠ²
ΠΡΠ°ΠΊ, Π½Π°ΡΠ½Π΅ΠΌ. Π ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ΅ ΡΠ±ΠΎΡΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΠΌΠ΅ΡΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ· ΡΡΠ΅Ρ ΡΠ²Π΅ΡΠΎΠ². ΠΠ°Π»Π΅Π΅ ΠΏΡΠΈΡΠ²ΠΎΠΈΠΌ ΡΡΠΈ ΡΠ²Π΅ΡΠ° ΡΡΠ΅ΠΉΠΊΠ°ΠΌ ΠΈΠ· ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠ΅ΠΊΡΠΈΠΈ:
/* Π£ Π½Π°Ρ Π±ΡΠ΄Π΅Ρ ΡΡΠΈ ΡΠ΅ΠΊΡΠΈΠΈ, ΠΈ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· Π½ΠΈΡ ΠΌΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠΌ ΡΠ²ΠΎΠΉ ΡΠ²Π΅Ρ ΡΡΠ΅Π΅ΠΊ. ΠΠ»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ²Π΅ΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ°ΠΌΡΠ΅ ΠΎΠ±ΡΡΠ½ΡΠ΅ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ UIColor, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ ΠΏΠΎΠ·ΠΆΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ΡΡΠ΅Π΅ΠΊ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΡΠ΅ΠΊΡΠΈΡΡ */
β (NSArray *) allSectionColors{
static NSArray *allSectionColors = nil;
if (allSectionColors == nil){
allSectionColors = @[
[UIColor redColor],
[UIColor greenColor],
[UIColor blueColor],
];
}
return allSectionColors;
}
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΠ΅ Π²ΡΠ΄Π΅Π»Π΅Π½Π½ΡΠΉ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡ initWithCollectionViewLayout: Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° ΡΠ±ΠΎΡΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° ΠΈ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠΉΡΠ΅ UICollectionViewCell Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΌ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ. ΠΠ΅ Π²ΠΎΠ»Π½ΡΠΉΡΠ΅ΡΡ, Π΅ΡΠ»ΠΈ ΠΏΠΎΠΊΠ° Π½Π΅ ΡΠΎΠ²ΡΠ΅ΠΌ ΡΠ»Π°Π²Π»ΠΈΠ²Π°Π΅ΡΠ΅ Ρ ΠΎΠ΄ ΠΌΡΡΠ»ΠΈ, Π²Π·Π³Π»ΡΠ½ΠΈΡΠ΅ Π½Π° ΡΠΈΡΡΠ°ΡΠΈΡ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ: Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΠ΅ΠΉΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ Π²Π°Ρ ΡΠ±ΠΎΡΠ½ΡΠΉ Π²ΠΈΠ΄, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΠ½Π°ΡΠ°Π»Π° ΠΏΡΠΎΡΠΌΠΎΡΡΠΈΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΡΡΠ΅Π΅ΠΊ, Π΄ΠΎΡΡΡΠΏΠ½ΡΡ Π΄Π»Ρ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ, ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡ, Π΅ΡΡΡ Π»ΠΈ Π² ΡΡΠΎΠΉ ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ ΡΡΡΡΠ°ΠΈΠ²Π°ΡΡΠΈΠ΅ Π΅Π΅ ΡΡΠ΅ΠΉΠΊΠΈ. ΠΡΠ»ΠΈ ΠΎΠ½ΠΈ Π½Π°ΠΉΠ΄ΡΡΡΡ, ΡΠ±ΠΎΡΠ½ΡΠΉ Π²ΠΈΠ΄ ΠΈΠ·Π²Π»Π΅ΡΠ΅Ρ ΡΠ°ΠΊΠΈΠ΅ ΡΡΠ΅ΠΉΠΊΠΈ ΠΈΠ· ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ, Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΠ½ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ ΡΡΠ΅ΠΉΠΊΡ ΠΈ Π²Π΅ΡΠ½Π΅Ρ Π΅Π΅ Π²Π°ΠΌ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ.
Π Π±ΠΎΠ»Π΅Π΅ ΡΠ°Π½Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΡ iOS ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΠ»ΠΎΡΡ Π²ΡΡΡΠ½ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΡΠ΅ΠΉΠΊΠΈ, Π΅ΡΠ»ΠΈ ΡΠ°Π±Π»ΠΈΡΠ½ΠΎΠΌΡ Π²ΠΈΠ΄Ρ Π½Π΅ ΡΠ΄Π°Π²Π°Π»ΠΎΡΡ Π½Π°ΠΉΡΠΈ Π³ΠΎΡΠΎΠ²ΡΠ΅ ΡΡΠ΅ΠΉΠΊΠΈ Π΄Π»Ρ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ (ΡΠ±ΠΎΡΠ½ΡΠ΅ Π²ΠΈΠ΄Ρ Π² ΡΠ°Π½Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΡ iOS ΠΎΡΡΡΡΡΡΠ²ΠΎΠ²Π°Π»ΠΈ). ΠΠ΄Π½Π°ΠΊΠΎ Ρ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ Π½ΠΎΠ²ΡΡ API Apple Π²ΡΠΏΠΎΠ»Π½ΠΈΠ»Π° ΠΎΡΠ΅Π½Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ ΡΠ°Π±ΠΎΡΡ, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡΠ°ΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΌΠΈ ΡΡΠ΅ΠΉΠΊΠ°ΠΌΠΈ. ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΠ»Π° Π½ΠΎΠ²ΡΠ΅ API ΠΊΠ°ΠΊ Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡΠ½ΡΡ , ΡΠ°ΠΊ ΠΈ Π΄Π»Ρ ΡΠ±ΠΎΡΠ½ΡΡ Π²ΠΈΠ΄ΠΎΠ². ΠΠΎΡΡΠΎΠΌΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ·ΠΎΠ² ΠΈ Ρ ΡΠ°Π±Π»ΠΈΡΠ½ΡΠΌ Π²ΠΈΠ΄ΠΎΠΌ, ΠΈ ΡΠΎ ΡΠ±ΠΎΡΠ½ΡΠΌ Π²ΠΈΠ΄ΠΎΠΌ. ΠΡΠ»ΠΈ ΠΆΠ΅ Π²Π°ΠΌ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π½ΠΎΠ²ΡΡ ΡΡΠ΅ΠΉΠΊΡ, ΡΠΎ Π²Ρ ΠΏΡΠΎΡΡΠΎ ΡΡΠ΅Π±ΡΠ΅ΡΠ΅ ΠΎΡ ΡΠ°Π±Π»ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΡΠ±ΠΎΡΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° Π½ΠΎΠ²ΡΡ ΡΡΠ΅ΠΉΠΊΡ Π½ΡΠΆΠ½ΠΎΠ³ΠΎ ΡΠΎΠ΄Π°. ΠΡΠ»ΠΈ ΡΠ°ΠΊΠ°Ρ ΡΡΠ΅ΠΉΠΊΠ° ΠΈΠΌΠ΅Π΅ΡΡΡ Π² ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ, ΡΠΎ ΠΎΠ½Π° (ΡΡΠ΅ΠΉΠΊΠ°) Π±ΡΠ΄Π΅Ρ Π²Π°ΠΌ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π°. ΠΡΠ»ΠΈ Π½Π΅Ρ β ΡΠΎ ΡΠ°Π±Π»ΠΈΡΠ½ΡΠΉ ΠΈΠ»ΠΈ ΡΠ±ΠΎΡΠ½ΡΠΉ Π²ΠΈΠ΄ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΊΡΡ ΡΡΠ΅ΠΉΠΊΡ. ΠΡΠΎΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠ΅ΠΉ ΠΌΠ½ΠΎΠ³ΠΎΡΠ°Π·ΠΎΠ²ΠΎΠΉ ΡΡΠ΅ΠΉΠΊΠΈ, ΠΎΠ½ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΡΡΡ Π΄Π²ΡΠΌΡ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ: