`
wenxin2009
  • 浏览: 323614 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

ios学习流水账3

    博客分类:
  • ios
 
阅读更多

1、线程两种方式:

//1、新开启一个线程
    [NSThread detachNewThreadSelector:@selector(test) toTarget:self withObject:nil];
    //2、GCD线程
    dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
    size_t number = 100;
    dispatch_async(queue, ^{
        dispatch_apply(number, queue, ^(size_t iteration) {
            
        });
    });

 

2、双击事件被单击事件拦截

[singleTap requireGestureRecognizerToFail:doubleTap];

 

3、调试时获取类名

DLOG(@"%@",NSStringFromClass([vc  class]));//通过类获取类名
DLOG(@"%@",NSClassFromString(@"DiscoverViewController"));//通过类名获取类

 

4、KVO,“一对一”对象之间的通信,例子如下:

#import <Foundation/Foundation.h>

@interface StockData : NSObject

@property(nonatomic,strong) NSString *stockName;
@property(nonatomic,assign) float price;
@end


#import "StockData.h"

@implementation StockData

@end

 

#import <UIKit/UIKit.h>

@interface ViewController : UIViewController
- (IBAction)btnAction:(id)sender;
@property (weak, nonatomic) IBOutlet UILabel *labShow;

@end

//
//  ViewController.m
//  A
//  KVO例子
//  Created by cs on 15/6/7.
//  Copyright (c) 2015年 dwen. All rights reserved.
//

#import "ViewController.h"
#import "StockData.h"

@interface ViewController (){
    StockData *stock;
    UILabel *_lab1;
}

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    stock = [[StockData alloc] init];
    [stock setValue:@"中展" forKey:@"stockName"];
    [stock setValue:@"100.0" forKey:@"price"];
    [stock addObserver:self forKeyPath:@"price" options:NSKeyValueObservingOptionNew|NSKeyValueObservingOptionOld context:NULL];
    
    _labShow.text = [NSString stringWithFormat:@"%@",[stock valueForKey:@"price"]];
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
}

- (IBAction)btnAction:(id)sender {
    //设值
    [stock setValue:@"20.0" forKey:@"price"];
}

- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context{
    if ([keyPath isEqualToString:@"price"]) {
        _labShow.text = [NSString stringWithFormat:@"%@",[stock valueForKey:@"price"]];
    }
}

- (void)dealloc{

    //TODO 清空释放掉

     [selfremoveObserver:selfforKeyPath:@"price"context:nil];

}
@end

 

5、instancetype和id区别:

    相同点:都可作为方法的返回类型

    不同点:

    一、instancetype可以返回和方法所在类相同类型的对象,id只能返回未知类型对象。

    二、instancetype只能作为返回值,不能像id那样作为参数

 

6、UImage防止拉伸设置

    UIImage *selectImg = [UIImage imageNamed:@"select-checked"];
    UIEdgeInsets insets = UIEdgeInsetsMake(0, 0, 0, 30);
    selectImg = [selectImg resizableImageWithCapInsets:insets];
    [btn setBackgroundImage:selectImg forState:UIControlStateNormal];

 

7、ios中的时间毫秒,long型

        NSNumber *createAtN = [dicPushBody objectForKey:@"createAt"];

 

        long  createAt = [createAtN longValue];

 

8、获取年、月、日

NSDate *now = [NSDate date];
NSCalendar *calendar = [NSCalendar currentCalendar];
NSUInteger unitFlags = NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit;
        NSDateComponents *dateComponent = [calendar components:unitFlags fromDate:now];
int year = (int)[dateComponent year];//年

 

9、url schemes 可在Safari浏览器中打开应用。前提是需在工程中plist文件中配置下



 

配置好后,刷到真机上。然后在Safari地址中输入:artgoer://com.test    就可打开应用。

 

10、设置tabBar背景色

      self.tabBar.barTintColor = [ColorUtilcolorFromHexRGB:@"#000000"];//设置tabBar背景色 

 

11、block回传参数应用示例:

   block适合两个页面之前传值,不适合页面乘积深时,回传参数。

    AddressManageViewController.h文件

 

//定义block
typedef void (^AddressManageBlock) (AddressVo *addressVo);//回传参数

@interface AddAddressViewController : UITableViewController

//声明block
@property (strong, nonatomic) AddressManageBlock addressBlock;

@end
 

 

    AddressmanageViewController.m文件

 

if (self.addressBlock) {
                    self.addressBlock(aVo);
                    [self.navigationController popViewControllerAnimated:YES];
                }
 
    SettlementViewController.m文件

 

 

//地址管理
- (void) goAddressManageAction{
    AddressManageViewController *addressVc = [StoryboardUtil getVCWithSbIden:@"My" identify:@"AddressManageViewController"];
    addressVc.scourceType = NSStringFromClass([SettlementViewController class]);
    [self.navigationController pushViewController:addressVc animated:YES];
    addressVc.addressBlock = ^(AddressVo *aVo){
        //TODO
        self.addressVo = aVo;
        [self.tableView reloadRowsAtIndexPaths:[NSArray arrayWithObject:[NSIndexPath indexPathForRow:0 inSection:0]] withRowAnimation:UITableViewRowAnimationAutomatic];
    };
}
 

 12、滑动返回上一页。在push后添加如下代码。

GoodsDetailViewController *goodsDetailVC = [StoryboardUtil getVCWithSbIden:@"Goods" identify:@"GoodsDetailViewController"];
    [self.navigationController pushViewController:goodsDetailVC animated:YES];
    
    //TODO滑动返回
    if ([self.navigationController respondsToSelector:@selector(interactivePopGestureRecognizer)]) {
        self.navigationController.interactivePopGestureRecognizer.delegate = nil;
    }

 

12、把view添加到Window上

UIWindow *win = [[UIApplication sharedApplication].delegate window];
 [win addSubview:self.view];

 

13、导航titleView添加自定义View

    UIView *titleV = [[UIView alloc] init];
    titleV.frame = CGRectMake(0, 0, 120, 44);
    _btnTopic = [UIButton buttonWithType:UIButtonTypeCustom];
    [_btnTopic setFrame:CGRectMake(0, 0, 50, 40)];
    [_btnTopic setTitle:@"专题" forState:UIControlStateNormal];
    _btnTopic.titleLabel.font = [UIFont boldSystemFontOfSize:18.0f];
    [_btnTopic setTitleColor:WordTextColor forState:UIControlStateNormal];
    [titleV addSubview:_btnTopic];
    _btnDisplay = [UIButton buttonWithType:UIButtonTypeCustom];
    [_btnDisplay setFrame:CGRectMake(70, 0, 50, 40)];
    [_btnDisplay setTitle:@"展览" forState:UIControlStateNormal];
    _btnDisplay.titleLabel.font = [UIFont boldSystemFontOfSize:18.0f];
    [_btnDisplay setTitleColor:TitleColor forState:UIControlStateNormal];
    [titleV addSubview:_btnDisplay];
    self.navItem.titleView = titleV;

 

14、循环布局约束

for (NSLayoutConstraint *lc in headView.lcSpace) {
                lc.constant = 10;
            }

 

15、图片保存到相册

//图片保存到相册
UIImageWriteToSavedPhotosAlbum(lastImg,  self, @selector(imageSavedToPhotosAlbum:didFinishSavingWithError:contextInfo:), nil);

 

- (void)imageSavedToPhotosAlbum:(UIImage *)image didFinishSavingWithError:(NSError *)error contextInfo:(void *)contextInfo
{    NSString *message;
    if (!error) {
        message = @"成功保存到相册";
        [self showStrAlert:@"成功保存到相册"];
    }else
    {
        [self showStrAlert:[NSString stringWithFormat:@"%@",error]];
    }
}

 

16、读取ttf文件字体:

-(UIFont*)customFont{
    NSString *fontPath = [[NSBundle mainBundle] pathForResource:@"209" ofType:@"ttf"];
    NSURL *url = [NSURL fileURLWithPath:fontPath];
    CGDataProviderRef fontDataProvider = CGDataProviderCreateWithURL((__bridge CFURLRef)url);
    if (fontDataProvider == NULL)
        return nil;
    CGFontRef newFont = CGFontCreateWithDataProvider(fontDataProvider);    CGDataProviderRelease(fontDataProvider);
    if (newFont == NULL) return nil;
    NSString *fontName = (__bridge NSString *)CGFontCopyFullName(newFont);
    //....
    NSData *data =[fontName dataUsingEncoding:NSUTF8StringEncoding];
    NSStringEncoding encoding = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);
    NSString*   temp = [[NSString alloc] initWithData:data encoding:encoding];//data为NSData类型
    NSLog(@"fontName======%@==%@",fontName,temp);
    UIFont *font = [UIFont fontWithName:fontName size:12];
    CGFontRelease(newFont);
    return font;
}

 

17、指定页面禁止侧滑返回:

- (void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:animated];
    // 禁用返回手势
    if ([self.navigationController respondsToSelector:@selector(interactivePopGestureRecognizer)]) {
        self.navigationController.interactivePopGestureRecognizer.enabled = NO;
    }
}
- (void)viewWillDisappear:(BOOL)animated
{
    [super viewWillDisappear:animated];
    //开启返回手势,解决侧滑返回时需跳到指定页面
    if ([self.navigationController respondsToSelector:@selector(interactivePopGestureRecognizer)]) {
        self.navigationController.interactivePopGestureRecognizer.enabled = YES;
    }

}

 

18、iOS懒加载

//定义
@property (nonatomic,strong) NSMutableArray *dataArr;

//注意
//...在第一次使用时用self.dataArr,而不能用_dataArr,否则不会产生对象
//...当程序进来时不会产生dataArr对象,只有当第一次self.dataArr调用时,这时会走get方法。可以节省不少内存空间。实例化用懒加载是个不错选择

#pragma mark Getter
- (NSMutableArray *) dataArr{
    if (!_dataArr) {
        _dataArr = [[NSMutableArray alloc] init];
    }
    return _dataArr;
}

 

19.UIButton显示图片和文字,呈上下排列,图片显示上方,文字显示下方。

UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];
            btn.frame = CGRectMake((ScreenWidth/4)*i, 5, ScreenWidth/4, 110);
            [btn.titleLabel setFont:[UIFont systemFontOfSize:15]];
            [btn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
            [btn setTitle:vo.label forState:UIControlStateNormal];
            btn.titleLabel.textAlignment = NSTextAlignmentCenter;
            
            UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(btn.imageView.frame.origin.x+32, btn.imageView.frame.origin.y+20, 30, 30)];
            NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:vo.labelPic]];
            UIImage *img = [UIImage imageWithData:data];
            [imageView setImage:img];
            [btn addSubview:imageView];
            //关键代码
            btn.titleEdgeInsets = UIEdgeInsetsMake(28, 0, 0, 0);
            btn.imageEdgeInsets = UIEdgeInsetsMake(-15,25,0,0);

 

  • 大小: 30.9 KB
分享到:
评论

相关推荐

    大学生 毕业设计 项目实训 基于ionic开发的一款手机应用APP-流水账app(前后端全套源代码).zip

    这个压缩包文件包含了一个大学生毕业设计的完整项目实训,它是一个基于Ionic框架开发的手机应用APP,名为“流水账app”。这个应用旨在帮助用户记录日常生活中的收支情况,提供便捷的财务管理功能。下面是关于这个...

    基于TypeScript(ES)+Angular+Ionic开发的一款APP前后台全套源代码.zip_ES240

    "记一笔:最简约的流水账app - 简书.url"和"一周搞定TypeScript+Angular2+Ionic2 - 简书.url"是两个链接,分别指向关于如何构建一个简单的记账应用的教程和快速掌握TypeScript、Angular2和Ionic2的指南。这些资源...

    毕设单片机实战项目基于esp8266的高考倒计时.zip

    【项目资源】: 单片机项目适用于从基础到高级的各种项目,特别是在性能要求较高的场景中,比如操作系统开发、嵌入式编程和底层系统编程。如果您是初学者,可以从简单的控制台程序开始练习;如果是进阶开发者,可以尝试涉及硬件或网络的项目。 【项目质量】: 所有源码都经过严格测试,可以直接运行。 功能在确认正常工作后才上传。 【适用人群】: 适用于希望学习不同技术领域的小白或进阶学习者。 可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】: 项目具有较高的学习借鉴价值,也可直接拿来修改复刻。 对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】: 有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 鼓励下载和使用,并欢迎大家互相学习,共同进步。 # 注意 1. 本资源仅用于开源学习和技术交流。不可商用等,一切后果由使用者承担。 2. 部分字体以及插图等来自网络,若是侵权请联系删除。

    毕设工坊:专注于计算机毕业设计项目的交流与资源共享平台,涵盖各类技术文档、代码示例及实战经验分享,助力学子顺利完成学业挑战

    毕设工坊:专注于计算机毕业设计项目的交流与资源共享平台,涵盖各类技术文档、代码示例及实战经验分享,助力学子顺利完成学业挑战。

    【window 可视化nvm管理node版本 nvm-desktop】

    【window 可视化nvm管理node版本 nvm-desktop】

    《基于YOLOv8的玉器识别系统》(包含源码、完整数据集、可视化界面、部署教程)简单部署即可运行。功能完善、操作简单,适合毕设或课程设计.zip

    资源内项目源码是来自个人的毕业设计,代码都测试ok,包含源码、数据集、可视化页面和部署说明,可产生核心指标曲线图、混淆矩阵、F1分数曲线、精确率-召回率曲线、验证集预测结果、标签分布图。都是运行成功后才上传资源,毕设答辩评审绝对信服的保底85分以上,放心下载使用,拿来就能用。包含源码、数据集、可视化页面和部署说明一站式服务,拿来就能用的绝对好资源!!! 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、大作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.txt文件,仅供学习参考, 切勿用于商业用途。

    (源码)基于microbit编程语言的mymicrobit扩展插件项目.zip

    # 基于microbit编程语言的mymicrobit扩展插件项目 ## 项目简介 这是一个基于microbit编程语言的mymicrobit扩展插件项目。该项目旨在提供额外的功能和特性,以扩展microbit编程环境。通过此插件,用户可以轻松地在MakeCode环境中进行编程,实现对micro:bit设备的更多控制和功能实现。 ## 项目的主要特性和功能 1. 扩展性提供了丰富的积木块和代码库,允许用户轻松实现复杂的编程逻辑和功能扩展。 2. 图形化编程支持通过积木块形式的图形化编程,降低编程门槛,方便初学者快速上手。 3. 实时预览提供了积木块的实时预览功能,方便用户直观地了解代码块的逻辑和功能。 4. 与MakeCode无缝集成可以直接在MakeCode环境中导入和使用,无需额外的配置和安装。 ## 安装使用步骤

    毕设单片机实战项目基于ESP8266的局域网图片刷新显示系统.zip

    【项目资源】: 单片机项目适用于从基础到高级的各种项目,特别是在性能要求较高的场景中,比如操作系统开发、嵌入式编程和底层系统编程。如果您是初学者,可以从简单的控制台程序开始练习;如果是进阶开发者,可以尝试涉及硬件或网络的项目。 【项目质量】: 所有源码都经过严格测试,可以直接运行。 功能在确认正常工作后才上传。 【适用人群】: 适用于希望学习不同技术领域的小白或进阶学习者。 可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】: 项目具有较高的学习借鉴价值,也可直接拿来修改复刻。 对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】: 有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 鼓励下载和使用,并欢迎大家互相学习,共同进步。 # 注意 1. 本资源仅用于开源学习和技术交流。不可商用等,一切后果由使用者承担。 2. 部分字体以及插图等来自网络,若是侵权请联系删除。

    《基于YOLOv8的印章分析系统》(包含源码、完整数据集、可视化界面、部署教程)简单部署即可运行。功能完善、操作简单,适合毕设或课程设计.zip

    资源内项目源码是来自个人的毕业设计,代码都测试ok,包含源码、数据集、可视化页面和部署说明,可产生核心指标曲线图、混淆矩阵、F1分数曲线、精确率-召回率曲线、验证集预测结果、标签分布图。都是运行成功后才上传资源,毕设答辩评审绝对信服的保底85分以上,放心下载使用,拿来就能用。包含源码、数据集、可视化页面和部署说明一站式服务,拿来就能用的绝对好资源!!! 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、大作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.txt文件,仅供学习参考, 切勿用于商业用途。

    p111基于django的企业员工管理系统.zip

    项目资源包含:可运行源码+sql文件 适用人群:学习不同技术领域的小白或进阶学习者;可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 项目具有较高的学习借鉴价值,也可拿来修改、二次开发。 有任何使用上的问题,欢迎随时与博主沟通,博主看到后会第一时间及时解答。 开发语言:Python 框架:django Python版本:python3.8 数据库:mysql 5.7 数据库工具:Navicat 开发软件:PyCharm 浏览器:谷歌浏览器

    第三章-局域网-思维导图

    第三章-局域网-思维导图

    机械工程PT300机械故障仿真测试台:高校教学与科研用精密振动分析及故障诊断实验系统了您提供的规范

    内容概要:PT300机械故障综合模拟实验台由瓦仑尼安教学设备有限公司生产,旨在帮助用户深入了解振动特征知识及复杂转子振动频谱分析,实现精密振动分析和精准故障诊断。该实验台能模拟轴承故障、不平衡、不对中、设备松动、转子摩擦等多种机械故障现象,可进行不同转速下的轴承故障频率识别、转子静动平衡模拟试验、设备启停机测试等实验。设备采用高效节能ABB三相交流电动机,配备高精度转速控制和测量模块,确保运行稳定。此外,实验台还设有透明防震安全罩和互锁开关,保障实验安全。; 适合人群:高校师生、科研人员等需要学习或研究机械故障诊断相关理论知识和实践技能的人群。; 使用场景及目标:①用于高校等教育机构的教学,辅助学生理解机械故障诊断的理论知识和实践技能;②满足科研人员进行机械故障诊断算法验证、故障特征分析等科研需求。; 其他说明:PT300机械故障综合模拟实验台的每个部件均经过高精度加工,确保在不同振动状态下稳定运行。用户可根据期望分析特定部件的故障特征。设备尺寸为735mm(长)×310mm(宽)×350mm(高),保修一年,且提供免费操作指导服务。

    Android毕设实战项目基于Android+Django+sqlit3开发.zip

    【项目资源】: 适用于从基础到高级的各种项目,特别是在性能要求较高的场景中,比如操作系统开发、嵌入式编程和底层系统编程。如果您是初学者,可以从简单的控制台程序开始练习;如果是进阶开发者,可以尝试涉及硬件或网络的项目。 【项目质量】: 所有源码都经过严格测试,可以直接运行。 功能在确认正常工作后才上传。 【适用人群】: 适用于希望学习不同技术领域的小白或进阶学习者。 可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】: 项目具有较高的学习借鉴价值,也可直接拿来修改复刻。 对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】: 有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 鼓励下载和使用,并欢迎大家互相学习,共同进步。 # 注意 1. 本资源仅用于开源学习和技术交流。不可商用等,一切后果由使用者承担。 2. 部分字体以及插图等来自网络,若是侵权请联系删除。

    【光子晶体模拟】基于COMSOL弱形式PDE的三维光子晶体能带结构计算与优化:电磁场切向连续性处理及带隙分析系统设计使用COMSOL

    内容概要:本文详细介绍了使用COMSOL Multiphysics的弱形式接口对三维光子晶体进行数值模拟的方法和技巧。文章通过具体的代码示例,解释了如何构建光子晶体的介电常数分布、设置弱形式PDE、处理电磁场切向连续性、应用Floquet周期边界条件以及特征值求解等关键步骤。特别强调了弱形式接口相比传统物理场接口的优势,如灵活性和对复杂边界的处理能力。文中还分享了一些实用的经验和注意事项,如布洛赫边界条件的实现、特征值求解器参数的优化配置以及网格划分的技巧。 适合人群:具备一定电磁学和数值模拟基础的研究人员或工程师,尤其是对光子晶体仿真感兴趣的读者。 使用场景及目标:①理解并掌握COMSOL弱形式接口在光子晶体仿真中的应用;②学习如何通过弱形式设置处理复杂的电磁场问题;③提高对光子晶体能带结构和带隙特性的认识;④掌握特征值求解和网格划分的最佳实践。 阅读建议:由于本文涉及较多的具体代码和物理概念,建议读者在阅读过程中结合COMSOL软件进行实际操作,同时查阅相关电磁理论书籍以加深理解。此外,对于文中提到的一些具体参数设置和技巧,可以通过尝试不同的配置来巩固所学知识。

    (源码)基于Arduino平台的INSPTComputacion2项目.zip

    # 基于Arduino平台的INSPTComputacion2项目 ## 项目简介 INSPTComputacion2是一个基于Arduino平台的开发项目。该项目旨在通过Arduino的硬件和软件能力,实现一系列计算和交互功能。通过此项目,用户可以体验到Arduino在嵌入式系统、物联网和微控制器等领域的强大功能。 ## 项目的主要特性和功能 该项目的主要特性和功能包括但不限于以下几点 1. 嵌入式系统开发利用Arduino的硬件资源,开发嵌入式系统应用。 2. 物联网应用实现Arduino与物联网技术的结合,进行数据采集、传输和控制。 3. 交互设计通过Arduino实现人机交互,如按钮控制、LED显示等。 4. 数据处理利用Arduino进行数据处理和分析,如温度、湿度等环境数据的采集和处理。 ## 安装使用步骤 以下是在已下载本项目源码文件后的安装使用步骤 1. 确保已安装Arduino IDE软件。

    毕业设计物联网实战项目基于云且连接 Internet 的新式应用程序。 可用于建立Web应用、 IoT物联网、移动后端等。.zip

    【项目资源】: 物联网项目适用于从基础到高级的各种项目,特别是在性能要求较高的场景中,比如操作系统开发、嵌入式编程和底层系统编程。如果您是初学者,可以从简单的控制台程序开始练习;如果是进阶开发者,可以尝试涉及硬件或网络的项目。 【项目质量】: 所有源码都经过严格测试,可以直接运行。 功能在确认正常工作后才上传。 【适用人群】: 适用于希望学习不同技术领域的小白或进阶学习者。 可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】: 项目具有较高的学习借鉴价值,也可直接拿来修改复刻。 对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】: 有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 鼓励下载和使用,并欢迎大家互相学习,共同进步。 # 注意 1. 本资源仅用于开源学习和技术交流。不可商用等,一切后果由使用者承担。 2. 部分字体以及插图等来自网络,若是侵权请联系删除。

    毕业设计物联网实战项目基于touchgfx,调度基于freertos.zip

    【项目资源】: 物联网项目适用于从基础到高级的各种项目,特别是在性能要求较高的场景中,比如操作系统开发、嵌入式编程和底层系统编程。如果您是初学者,可以从简单的控制台程序开始练习;如果是进阶开发者,可以尝试涉及硬件或网络的项目。 【项目质量】: 所有源码都经过严格测试,可以直接运行。 功能在确认正常工作后才上传。 【适用人群】: 适用于希望学习不同技术领域的小白或进阶学习者。 可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】: 项目具有较高的学习借鉴价值,也可直接拿来修改复刻。 对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】: 有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 鼓励下载和使用,并欢迎大家互相学习,共同进步。 # 注意 1. 本资源仅用于开源学习和技术交流。不可商用等,一切后果由使用者承担。 2. 部分字体以及插图等来自网络,若是侵权请联系删除。

    Python数据结构-学习笔记

    Python数据结构-学习笔记

    电影在线购票系统(springboot+ssm+vue+mysql)含万字系统详细说明文档

    该系统展示了一个电影在线购票系统的结构图,系统分为前台和后台两部分。前台包括首页、影院信息、电影信息、电影资讯和个人中心等模块,主要面向普通用户,提供电影浏览、选座购票、个人账户管理等功能。后台部分由管理员通过后台模块进行操作,包括系统首页、用户管理、场次管理、时间段管理、影院信息管理、电影分类管理、电影信息管理、订单管理和个人中心等模块,用于系统的维护和管理,如用户信息维护、电影和影院信息更新、订单处理等。整个系统旨在为用户提供便捷的在线购票体验,同时确保后台管理的高效和有序。

    5G NR射频基本指标一致性自测用例

    5G NR射频一致性自测用例 由于NR射频测试场景太多,全指标自动化跑测用时太久,本表格选取了主要场景的关键指标,以便于射频工程师对产品的NR射频指标进行初步摸底。 表格每一页概况: 1、NR TDD摸底指标N77/78/79/41 2、NR FDD摸底指标N1/3//5/8/28 附录1、各频段带宽所支持的SCS 附录2、各带宽SCS的RB配置 附录3、灵敏度测试的RB配置 附录4、摸底测试信道查询 附录5、各频段频率范围

Global site tag (gtag.js) - Google Analytics