gpt4 book ai didi

objective-c - 使用 Cocoa Touch 和 Objective C 创建选择菜单

转载 作者:搜寻专家 更新时间:2023-10-30 19:41:30 25 4
gpt4 key购买 nike

我正在使用 Cocoa Touch 创建一个单一 View 应用程序。我需要一个菜单​​来显示该单一 View 的不同主题选择,我一直想知道最好的方法是什么,以及如何实现。

我应该创建主从 View 吗?如果是这样,我如何让详细 View 成为应用程序加载的初始屏幕。但我不确定这是否是最好的方法。

我也一直在看这样的东西pop over menu ,但我宁愿自己学习如何实现这种事情,也不愿购买现成的解决方案。 Cocoa Touch 中是否有提供类似功能的类?他们显然使用 Core Graphics 从头开始​​构建了这个菜单,但是有没有更简单的方法来实现这种类型的菜单,例如使用一组 UIButton?

代码示例将不胜感激,但我真的在寻找解决这个问题的最佳方法,所以我知道要熟悉哪些框架。

TIA

最佳答案

您可以尝试将 UICollectionViewUICollectionViewFlowLayout 结合使用来创建可用于在不同主题之间切换的按钮网格。

如果不进一步了解您想要从选择菜单中获得什么、您有多少个主题、您希望它如何显示等,就很难推荐一种方法而不是另一种方法。但是因为 UICollectionViewFlowLayout 是 Apple 提供的预定义的 UICollectionViewLayout,用于在网格排列中显示 UIViews,所以它可能是解决这个问题的好方法问题。

下面是如何使用 UICollectioViewFlowLayout 实现 UICollectionView:

头文件

@interface ViewController : UIViewController <UICollectionViewDataSource,UICollectionViewDelegateFlowLayout> {
UICollectionView * themeSelection;
}

执行文件

- (void)viewDidLoad {
UICollectionViewFlowLayout *layout=[[UICollectionViewFlowLayout alloc] init];
themeSelection =[[UICollectionView alloc] initWithFrame:self.view.frame collectionViewLayout:layout];
[themeSelection setDataSource:self];
[themeSelection setDelegate:self];

[themeSelection registerClass:[UICollectionViewCell class] forCellWithReuseIdentifier:@"cellIdentifier"];
[self.view addSubview: themeSelection];

[super viewDidLoad];
}

- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section {
return 15;
}

- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
UICollectionViewCell *cell=[collectionView dequeueReusableCellWithReuseIdentifier:@"cellIdentifier" forIndexPath:indexPath];

//Each cell is a theme that could be selected

return cell;
}

- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath {
return CGSizeMake(100, 100);
}

关于objective-c - 使用 Cocoa Touch 和 Objective C 创建选择菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17742180/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com