loading...

مقالات طراحی اپ موبایل

بازدید : 21
پنجشنبه 24 خرداد 1403 زمان : 13:35

به صورت پیش فرض ، viewهای مرتبط با header و footer ، به کلاس UICollectionReusableView ، تخصیص یافته اند. برای اکران تصویر دور‌نما و تیتر در header view ، ما بایستی یک کلاس سفارشی تولید نماییم ؛ که یک زیرکلاس ، از UICollectionReusableView ، است. اذن دهید اسم کلاس را “RecipeCollectionHeaderView” ، در اختیار بگذاریم.

در Storyboard ما Collection Reusable View ، از header را گزینش میکنیم. کلاس سفارشی را تحت طراحی اپلیکیشن در مشهد عنوان “RecipeCollectionHeaderView” در Identify inspector ، تهیه میکنیم. کلید در دست گرفتن را فشار داده و نگه میداریم ، روی Image view ، در قسمت header کلیک کرده و آن را به فولدر RecipeCollectionHeaderView.h برای افزودن Outlet variable (متغییر اساس) ، درگ می‌کنیم. اسم متغییر را “backgroundImage” ، قرار میدهیم. فرایند مشابهی را ، برای UILabel ، تکرار کرده و اسم متغییر را “title” ، قرار می‌دهیم.

طراحی سیاق viewForSupplementaryElementOfKind
در‌صورتی‌که اپلیکیشن را ایفا نماییم ، از آن جایی که طراحی مشی “viewForSupplementaryElementOfKind:” ، را اعمال نداده ایم ، قسمت های header و footer را نخواهیم مشاهده کرد. “RecipeCollectionViewController” را تعیین کرده و عبارت import ، را اضافه میکنیم:

#import "RecipeCollectionHeaderView.h"

آنگاه ، سیاق viewForSupplementaryElementOfKind: را از روش کد ذیل ، ایفا می نماییم:

- (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView viewForSupplementaryElementOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath
{
UICollectionReusableView *reusableview = nil;

if (kind == UICollectionElementKindSectionHeader) {
RecipeCollectionHeaderView *headerView = [collectionView dequeueReusableSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:@"HeaderView" forIndexPath:indexPath];
NSString *title = [[NSString alloc]initWithFormat:@"Recipe Group #%i", indexPath.section + 1];
headerView.title.text = title;
UIImage *headerImage = [UIImage imageNamed:@"header_banner.png"];
headerView.backgroundImage.image = headerImage;

reusableview = headerView;
}

if (kind == UICollectionElementKindSectionFooter) {
UICollectionReusableView *footerview = [collectionView dequeueReusableSupplementaryViewOfKind:UICollectionElementKindSectionFooter withReuseIdentifier:@"FooterView" forIndexPath:indexPath];

reusableview = footerview;
}

return reusableview;
}

کد بالا، به collection view می‌گوید که header/footer view در هر قسمت ، استعمال میگردد. آغاز ، انتخاب میکنیم که آیا collection view ، درخواست view مرتبط با header یا این که footer ، را داراست یا این که نه. این فعالیت قادر است ، با استعمال از متغیر نوع (kind variable) ، صورت بپذیرد. برای قسمت header view ، ما header view را ( با به کارگیری از سیاق dequeueReusableSupplementaryViewOfKind: ) از صف بیرون میکنیم و یک تیتر و تصویر مطلوب برای آن ، تهیه می‌کنیم. همان گونه که در خط 6 تا 16 میبینید ، ما از شناسه ای به کار گیری میکنیم ، که پیش خیس ، برای اخذ header/footer view ، اختصاص داده بودیم.

فعلا نرم افزار را مجدداً کامپایل کرده و انجام می نماییم. نرم افزار بایستی قسمت های header و footer را در هر قسمت ، مبنی بر صورت پایین علامت دهد:

زمینه نشست سپس چیست؟

امید خواهیم داشت که از فراگیری این گردهمایی ، لذت برده باشید. در‌این گرد هم آیی ، ما از بین مباحث اصولی supplementary view ، گذر کرده و علامت دادیم که چه طور header/footer را در collection view ، اضافه نماییم. در گردهمایی سپس ، جستجو در collection view را ادامه داده و آرم خوا‌هیم اعطا کرد ، که چه‌طور با collection cell ، تعامل برقرار نماییم.

به صورت پیش فرض ، viewهای مرتبط با header و footer ، به کلاس UICollectionReusableView ، تخصیص یافته اند. برای اکران تصویر دور‌نما و تیتر در header view ، ما بایستی یک کلاس سفارشی تولید نماییم ؛ که یک زیرکلاس ، از UICollectionReusableView ، است. اذن دهید اسم کلاس را “RecipeCollectionHeaderView” ، در اختیار بگذاریم.

در Storyboard ما Collection Reusable View ، از header را گزینش میکنیم. کلاس سفارشی را تحت طراحی اپلیکیشن در مشهد عنوان “RecipeCollectionHeaderView” در Identify inspector ، تهیه میکنیم. کلید در دست گرفتن را فشار داده و نگه میداریم ، روی Image view ، در قسمت header کلیک کرده و آن را به فولدر RecipeCollectionHeaderView.h برای افزودن Outlet variable (متغییر اساس) ، درگ می‌کنیم. اسم متغییر را “backgroundImage” ، قرار میدهیم. فرایند مشابهی را ، برای UILabel ، تکرار کرده و اسم متغییر را “title” ، قرار می‌دهیم.

طراحی سیاق viewForSupplementaryElementOfKind
در‌صورتی‌که اپلیکیشن را ایفا نماییم ، از آن جایی که طراحی مشی “viewForSupplementaryElementOfKind:” ، را اعمال نداده ایم ، قسمت های header و footer را نخواهیم مشاهده کرد. “RecipeCollectionViewController” را تعیین کرده و عبارت import ، را اضافه میکنیم:

#import "RecipeCollectionHeaderView.h"

آنگاه ، سیاق viewForSupplementaryElementOfKind: را از روش کد ذیل ، ایفا می نماییم:

- (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView viewForSupplementaryElementOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath
{
UICollectionReusableView *reusableview = nil;

if (kind == UICollectionElementKindSectionHeader) {
RecipeCollectionHeaderView *headerView = [collectionView dequeueReusableSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:@"HeaderView" forIndexPath:indexPath];
NSString *title = [[NSString alloc]initWithFormat:@"Recipe Group #%i", indexPath.section + 1];
headerView.title.text = title;
UIImage *headerImage = [UIImage imageNamed:@"header_banner.png"];
headerView.backgroundImage.image = headerImage;

reusableview = headerView;
}

if (kind == UICollectionElementKindSectionFooter) {
UICollectionReusableView *footerview = [collectionView dequeueReusableSupplementaryViewOfKind:UICollectionElementKindSectionFooter withReuseIdentifier:@"FooterView" forIndexPath:indexPath];

reusableview = footerview;
}

return reusableview;
}

کد بالا، به collection view می‌گوید که header/footer view در هر قسمت ، استعمال میگردد. آغاز ، انتخاب میکنیم که آیا collection view ، درخواست view مرتبط با header یا این که footer ، را داراست یا این که نه. این فعالیت قادر است ، با استعمال از متغیر نوع (kind variable) ، صورت بپذیرد. برای قسمت header view ، ما header view را ( با به کارگیری از سیاق dequeueReusableSupplementaryViewOfKind: ) از صف بیرون میکنیم و یک تیتر و تصویر مطلوب برای آن ، تهیه می‌کنیم. همان گونه که در خط 6 تا 16 میبینید ، ما از شناسه ای به کار گیری میکنیم ، که پیش خیس ، برای اخذ header/footer view ، اختصاص داده بودیم.

فعلا نرم افزار را مجدداً کامپایل کرده و انجام می نماییم. نرم افزار بایستی قسمت های header و footer را در هر قسمت ، مبنی بر صورت پایین علامت دهد:

زمینه نشست سپس چیست؟

امید خواهیم داشت که از فراگیری این گردهمایی ، لذت برده باشید. در‌این گرد هم آیی ، ما از بین مباحث اصولی supplementary view ، گذر کرده و علامت دادیم که چه طور header/footer را در collection view ، اضافه نماییم. در گردهمایی سپس ، جستجو در collection view را ادامه داده و آرم خوا‌هیم اعطا کرد ، که چه‌طور با collection cell ، تعامل برقرار نماییم.

نظرات این مطلب

تعداد صفحات : 90

درباره ما
موضوعات
آمار سایت
  • کل مطالب : 905
  • کل نظرات : 0
  • افراد آنلاین :
  • تعداد اعضا : 0
  • بازدید امروز :
  • بازدید کننده امروز : 1
  • باردید دیروز :
  • بازدید کننده دیروز : 0
  • گوگل امروز :
  • گوگل دیروز :
  • بازدید هفته :
  • بازدید ماه :
  • بازدید سال :
  • بازدید کلی :
  • <
    پیوندهای روزانه
    اطلاعات کاربری
    نام کاربری :
    رمز عبور :
  • فراموشی رمز عبور؟
  • خبر نامه


    معرفی وبلاگ به یک دوست


    ایمیل شما :

    ایمیل دوست شما :



    لینک های ویژه