常用ios程序代码

 

我的原文在evernote,evernote链接的内容会不断更新

http://www.evernote.com/shard/s20/sh/9c35c399-4f7c-4015-944c-ad055cb547db/ba84af5872b716b59f18944a9a5e41a2

 

Settings 设置问题
1. setting面板的设置只有当用户去了设置面板后才会产生,所以程序要假设用户没有去过的时候设置默认值
2. 拿到[NSUserDefaultsstandardUserDefaults];取值之前要 [userDefault synchronize]
3. 假如从设置面板取回的是bool值,当你用代码  

[userDefault boolForKey:@"mapautozoom"];

做判断的话, 假如得到了NO, 这时你无法判断 1.是用户设置了NO 2.还是用户从来没设置过所以是NO
这时要先用个  
if([userDefault objectForKey:@"mapautozoom"]){
// 进来了说明用户设置过 然后再用  boolForKey
}

url encoding


NSString *urlString = [stringTobeEncoding  stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

 

alertView

    UIAlertView *alertView = [[UIAlertView alloc]

                              initWithTitle:@"Error" message:message delegate:nil

                              cancelButtonTitle:@"OK" otherButtonTitles:nil];

    [alertView show];

    [alertView release];

    [self dismissModalViewControllerAnimated:YES];





为UI添加处理事件方法


        UIButton *rightButton = [UIButton buttonWithType:UIButtonTypeContactAdd];

        [rightButton addTarget:self action:@selector(showDetails:) forControlEvents:UIControlEventTouchUpInside];



检测用户locale  


//这里实际检测出的是region format设定  不是language设定


CFLocaleGetIdentifier(CFLocaleCopyCurrent())      //zh_CN

[[NSLocaleautoupdatingCurrentLocale] localeIdentifier  //zh_CN]



添加国际化


1. 代码中使用字符串的地方 使用  NSLocalizedString(@"keyName",@"comment")

2. genstrings 扫描 .m 文件 ,生成  Localizable.strings
3. 在项目目录里生成en.lproj zh-Hans.lproj文件夹, 把Localizable.strings 放进去
4. 把Localizable.strings添加成项目的资源文件(copy bundle resources),确保打包的时候会被copy进去,  


程序名国际化


en.lproj/InfoPlist.strings 添加

CFBundleName="EnglishName";   

CFBundleDisplayName="EnglishName";



Settings.bundle 国际化


Settings.bundle/en.lproj/Root.strings
"version"="Version";
Root.plist的 title写 version, 显示的就是Version



剪贴板


得到剪贴板
UIPasteboard *pasteboard=[UIPasteboard generalPasteboard];

把一个字符串放置到剪贴板上: //用户此后在输入框 粘贴的就是这个字符串
pasteboard.string = @"Hello World";


从剪贴板获取字符串:
UIPasteboard *pasteboard=[UIPasteboard generalPasteboard];  
NSString *myString=pasteboard.string;



UISegmentedControl


绑定  value changed  事件




long press事件


    UILongPressGestureRecognizer *lpress = [[UILongPressGestureRecognizeralloc] initWithTarget:selfaction:@selector(longPress:)];
    lpress.minimumPressDuration = 0.5;//按0.5秒响应longPress方法
    lpress.allowableMovement = 10.0;
    [mapaddGestureRecognizer:lpress];//m_mapView是MKMapView的实例
    [lpress release];



- (void)longPress:(UIGestureRecognizer*)gestureRecognizer
{


    if (gestureRecognizer.state == UIGestureRecognizerStateEnded){
        // put your logic here which executed when the user release their finger
        return;
    }
    






modal 窗口


MainVC.m
- (IBAction) helpButtonClick:(id)sender{
    HelpVC *help= [[[HelpVCalloc]init] autorelease];
    help.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
    help.delegate = self;
    [selfpresentModalViewController:help animated:YES];
    
    
}


- (void)dismissModal:(HelpVC *)helpVC{
    [selfdismissModalViewControllerAnimated:YES];
}





HelpVC.h


#import <UIKit/UIKit.h>


@classHelpVC;


@protocol HelpVCDelegate


- (void)dismissModal:(HelpVC *)helpVC;


@end




@interface HelpVC : UIViewController {
    
}


@property (nonatomic, assign)  id<HelpVCDelegate> delegate;


- (IBAction) closeClick:(id)sender;


@end



HelpVC.m
- (IBAction) closeClick:(id)sender{
    [delegatedismissModal:self];
}






内容概要:该研究通过在黑龙江省某示范村进行24小时实地测试,比较了燃煤炉具与自动/手动进料生物质炉具的污染物排放特征。结果显示,生物质炉具相比燃煤炉具显著降低了PM2.5、CO和SO2的排放(自动进料分别降低41.2%、54.3%、40.0%;手动进料降低35.3%、22.1%、20.0%),但NOx排放未降低甚至有所增加。研究还发现,经济性和便利性是影响生物质炉具推广的重要因素。该研究不仅提供了实际排放数据支持,还通过Python代码详细复现了排放特征比较、减排效果计算和结果可视化,进一步探讨了燃料性质、动态排放特征、碳平衡计算以及政策建议。 适合人群:从事环境科学研究的学者、政府环保部门工作人员、能源政策制定者、关注农村能源转型的社会人士。 使用场景及目标:①评估生物质炉具在农村地区的推广潜力;②为政策制定者提供科学依据,优化补贴政策;③帮助研究人员深入了解生物质炉具的排放特征和技术改进方向;④为企业研发更高效的生物质炉具提供参考。 其他说明:该研究通过大量数据分析和模拟,揭示了生物质炉具在实际应用中的优点和挑战,特别是NOx排放增加的问题。研究还提出了多项具体的技术改进方向和政策建议,如优化进料方式、提高热效率、建设本地颗粒厂等,为生物质炉具的广泛推广提供了可行路径。此外,研究还开发了一个智能政策建议生成系统,可以根据不同地区的特征定制化生成政策建议,为农村能源转型提供了有力支持。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值