我正在使用如下所示的自定义开源操作表:
我的问题是,当我将头文件导入我的项目DoActionSheet.h
时代码中断了,所以我添加了所有的" Demo"只有当我使用在演示中用于挑选和选择样式的相同分段控件时,文件和代码才能正常工作,例如:
DoActionSheet *vActionSheet = [[DoActionSheet alloc] init];
vActionSheet.nAnimationType = _sgType.selectedSegmentIndex;
if (_sgStyle.selectedSegmentIndex == 0)
[vActionSheet setStyle1];
else if (_sgStyle.selectedSegmentIndex == 1)
[vActionSheet setStyle2];
else if (_sgStyle.selectedSegmentIndex == 2)
[vActionSheet setStyle3];
但是当我删除分段控件时,请说我选择setStyle1
并执行:
DoActionSheet *vActionSheet = [[DoActionSheet alloc] init];
vActionSheet.nAnimationType = [vActionSheet setStyle1];
我在这里做错了什么?有没有更好的方法来解决这个问题?我整合了一个普通的iOS UIActionSheet
就好了,我只想看看这个。
答案 0 :(得分:1)
我不是100%你正在尝试做的事情,但是这段代码并没有将nAnimationType
设置为整数来改变它的动画。它只是调用返回setStyle1
的{{1}}方法。您将动画值与设置操作表外观的方法混淆。
void
你可能想要这样的东西:
DoActionSheet *vActionSheet = [[DoActionSheet alloc] init];
vActionSheet.nAnimationType = [vActionSheet setStyle1];
如果您想更改警报视图按钮,背景等的外观......请在操作表实例上调用以下方法之一:
DoActionSheet *vActionSheet = [[DoActionSheet alloc] init];
vActionSheet.nAnimationType = 0; // to use the normal animation or 1
vActionSheet.nAnimationType = 1; // to fade it in
vActionSheet.nAnimationType = 2; // 2 to bounce/pop it in
最后,演示项目没有生成静态库或框架,所以如果您要在项目中使用此类及其扩展,我认为您需要所有源代码。要集成你需要的部分并不困难。
您需要做的就是在Xcode中创建一个名为" DoActionSheet"的新组,然后从演示项目的文件夹中拖放(从Finder)第三方源和DoActionSheet文件夹直接进入刚刚创建的新组。然后你就可以像在demo的ViewController.m中一样完成头文件。使用它作为使用DoActionSheet类的指南。