IOS零散知识笔记

1、OC语法规定:不允许直接修改某个对象中结构体属性的成员。只能整体对结构体修改。

例:

//不能这样赋值:
xx.frame.origin.x = tempX
//而是应该直接给frame赋值

 

 

 2、

- (IBAction)move:(id)sender{
}

 这种上下文下,id类型的对象,是不能用sender.tag的,必须用[sender tag]

 

3、如果使用常量,建议使用宏,这样可以避免开内存

下面声明宏中,k表示常亮

在interface上,#import下,#define kDelta 50

 当然也可以在interface上,#import下,直接写成常亮const int delta = 50;

 

4、控件的属性

frame,表示控件的位置和尺寸,以父控件左上角的原点为坐标原点(0,0)。返回CGRect

CGRect frame = self.flowerImage.frame;

 

center,表示控件的中点,以父控件左上角的原点位左边原点(0,0)。

 

bounds,表示控件的位置和尺寸,以自己左上角坐标位原点(0,0),修改此属性,只能调整控件的尺寸。

 

transform,表示控件的形变状态

self.flowerImage.transform = CGAffineTransformRotate(self.flowerImage.transform, [sender tag] == 4 ? -M_PI_4 : M_PI_4);

 

 5、得到手机界面的高度宽度

self.view.frame.width

 

6、代码添加按钮,用buttonWithType来生成BUTTON,这样如果在老IOS中,也不用手动释放内存

添加按钮监听事件

UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
//圆角矩形会挡住代码设置的Button背景颜色,如果要改背景色,则type需改成customer类型
    [button setFrame:CGRectMake(50, 300, 100, 20)];
    [button setTitle:@"别摸我" forState:UIControlStateNormal];
    
[button addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];

self表示当前的viewController

    [self.view addSubview:button];

 

点击事件的方法:

- (void) btnClick:(id)btn {
    NSLog(@"====%d", [btn tag]);
}

 

 

 

 7、读取项目中的资源

NSBundle *bundle = [NSBundle mainBundle];
NSString *path = [bundle pathForResource:@"文件名", ofType:@"文件后缀名"];
//读取一个plist文件
NSArray *array = [NSArray arrayWithContentsOfFile:path];

 

 8、关闭键盘

//这里的YES或NO,都是关闭键盘,但NO为某些特殊情况下不关闭键盘
//没有找到哪些是特殊情况
[self.view endEditing:YES]

 

 

9、动画效果除了“开启动画,提交动画”的这种方式

还可用一句话写出来

    [UIView animateWithDuration:1 animations:^{
        block();
    } completion:^(BOOL finished) {
        NSLog(@"动画完成");
    }];
    NSLog(@"动画提交");

//先打印"动画提交",再打印动画完成。

 

10、代码添加按钮,用buttonWithType来生成BUTTON,这样如果在老IOS中,也不用手动释放内存

UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
//圆角矩形会挡住代码设置的Button背景颜色,如果要改背景色,则type需改成customer类型
    [button setFrame:CGRectMake(50, 300, 100, 20)];
    [button setTitle:@"别摸我" forState:UIControlStateNormal];
    
    [self.view addSubview:button];

 

内容概要:本文档提供了关于“微型车间生产线的设计与生产数据采集试验研究”的毕业设计复现代码,涵盖从论文结构生成、机械结构设计、PLC控制系统设计、生产数据采集与分析系统、有限元分析、进度管理、文献管理和论文排版系统的完整实现。通过Python代码和API调用,详细展示了各个模块的功能实现和相互协作。例如,利用SolidWorks API设计机械结构,通过PLC控制系统模拟生产流程,使用数据分析工具进行生产数据的采集和异常检测,以及利用进度管理系统规划项目时间表。 适合人群:具有机械工程、自动化控制或计算机编程基础的学生或研究人员,尤其是从事智能制造领域相关工作的人员。 使用场景及目标:①帮助学生或研究人员快速搭建和理解微型车间生产线的设计与实现;②提供完整的代码框架,便于修改和扩展以适应不同的应用场景;③作为教学或科研项目的参考资料,用于学习和研究智能制造技术。 阅读建议:此资源不仅包含详细的代码实现,还涉及多个学科领域的知识,如机械设计、电气控制、数据分析等。因此,在学习过程中,建议读者结合实际操作,逐步理解每个模块的功能和原理,并尝试调整参数以观察不同设置下的系统表现。同时,可以参考提供的文献资料,深入研究相关理论和技术背景。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值