摘要:
IOS中的objective-c采用引用计数方式管理内存,最近在写动画效果的时候遇到了内存泄露问题。关于对象的delegate声明,在objective-c的编程指南中推荐的是使用assign来声明,如果才用retain等增加引用计数的声明方式,管理不当就很容易出现循环引用问题,造成内存无法被释放。但这次写动画发现一个例外,即CABasicAnimation的delegate在赋值时会将对象的引用计数加一。当CABasicAnimation的removeOnCompletion为NO时,动画结束以后并不会被移除,最终形成一个循环引用,对象无法被释放掉。在指定了Animation的delegat 阅读全文
摘要:
IOS的UIImagePickerController可以让用户通过相机或者相册获取想要的图片,并且通过设置allowsEditing属性允许用户在选择了图片以后对图片进行裁剪。不过在某些时候会出现正方形的裁剪框没有适配图片的情况,如下图:这时候裁剪得到的是一张长方形图片,并且图片尺寸与UIImagePickerController设置的maxWidth和maxHeight尺寸并不符合。例如一个高和宽比例为1:2的图片,设置裁剪的maxWidth和maxHeight均为100,裁剪框的范围类似于上面右边的图片,上下留空左右框住图片的边界。最终获取到的裁剪结果为一张宽为100高为200的长方.. 阅读全文
摘要:
这里记录如何获取系统背景主题是黑色还是白色 C#:Visibility darkBackgroundVisibility =(Visibility)Application.Current.Resources["PhoneDarkThemeVisibility"];// Write the theme background value.if (darkBackgroundVisibility == ... 阅读全文
摘要:
键盘种类: 键盘 备注 输入范围 包括自动完成和一个带有两页图释的图释菜单。 Chat, Text 默认键盘。 AddressCity, AddressCountryName, AddressCountryShortName, AddressStateOrProvince, AddressStreet*, AlphanumericFullWidth, AlphanumericHal... 阅读全文
摘要:
wp7的应用还是太少了,中文应用更少。虽然有天气预报应用但是自己感觉并不好用,感觉这样的程序应该很简单,于是萌生了自己写一个的想法。 印证了群里朋友说的一句话:程序员往往都是使用别人的程序觉得这里不好那里不好,等到自己想做一个的时候才发现水很深。 整个过程真是几经波折。先在网上搜索一番,发现了Windows Phone 7 网络编程之天气预报应用,看到xml解析的时候就知难而退了,因为在学校的时候... 阅读全文
摘要:
之前了解过一点XML文件解析,断断续续看过各种各样的解析方法,大家都说要数LINQ to XML最简单了。不过几次想自己动手试试总是没成功,搜索到的教程都太繁杂晦涩。这次在单位实习又有解析XML的需求只有硬着头皮试试了,结果还成功了!总结下来还是需要思路清晰,XML文件就是一些节点和属性,只要掌握了对应的层次关系,代码逻辑清晰语法正确就一定能成功! LINQ to XML确实很简单,这次主要是学习... 阅读全文
摘要:
大多是网上零散找到的,小部分是自己使用的时候自己遇到的。 XtraGrid的关键类就是:GridControl和GridView。GridControl本身不显示数据,数据都是显示在GridView/CardView/XXXXView中。GridControl是各种View的容器。所以要控制显示,要从GridView这些类入手。 1.DevExpress控件组中的GridControl控件不能使横... 阅读全文
摘要:
成功注册了,希望自己以后能坚持学习Windows phone 方法很简单:首先注册一个edu的邮箱,然后用自己的live帐号登录微软dreamspark,使用edu邮箱验证学生身份。之后在edu邮箱会收到一个激活码,在网站激活激活dreamspark帐号。最后用激活dreamspark的live帐号登录,注册APP HUB帐号。注册以后会在邮箱收到包含激活地址的邮件,激活之后会收到另外一封确认邮件... 阅读全文
摘要:
@ARGV 包含了程序从命令行得到的所有参数。 记录一下:my $Usage ="\nUsage: $0 <参数1> <参数2>\n\n";if(@ARGV != 2){ print "$Usage"; exit -1;}my ($file) = $ARGV[0];if(!($file )){ die "$Usage";}参数输入错误的话,输出Usage,相当于使用帮助了。 阅读全文
摘要:
map容器中含有一个或一对迭代器形参的insert函数版本并不说明是否有或有多少个元素插入到容器中,而单个参数版本中则会返回pair类型对象: m.insert(e) e是一个用在m上的value_type类型的值。如果键(e.first)不在m中,则插入一个值为e.second的新元素;如果该键在m中已存在,则保持m不变。该函数返回一个pair类型对象,包含指向键为e.first的元素的map... 阅读全文
摘要:
1、获取当前时间 2、获取设定时间 3、检查当前时间与设定时间是否相等 4、获取设定动作 5、执行设定动作 有使用API函数的办法,但是未能实现。采用打开CMD命令提示符使用shutdown命令的办法。 学会使用几个新的控件,学会打开CMD执行命令,同样也可以打开其他程序。 点此下载 阅读全文
摘要:
眼馋别人的程序,自己试着做一个。请教了前辈了解了一些情况。 最初思想: 1、获取找茬窗口的坐标。 2、用photoshop获取左右两张图片在游戏窗口中的坐标。 3、获取左、右两张图片,保存为BMP格式。 4、两张图片进行像素对比,相同的填充为白色,不同的填充为黑色。生成带有黑斑的图片。 5、生成图片放入找茬游戏窗口对应位置,鼠标点击黑斑直接得分。 由于按像素校验图片这块没能实现而放弃该方案。 最终... 阅读全文
摘要:
题目: 已知有如下string对象: string line1 = "We were her pride of 10 she named us:"; string line2 = "Benjamin, Phoenix, the Prodigal"; string line3 = "and perspicacious pacific Suzanne"; string sentence = line1... 阅读全文
摘要:
1、如果程序要求随机访问元素,则应使用vector或deque容器。 2、如果程序必须在容器中间位置插入或删除元素,则应采用list容器。 3、如果程序不是在容器的的中间位置,而是在容器首部或尾部插入或删除元素,则应采用deque容器。 4、如果只需在读取输入时在容器的中间位置插入元素,然后需要随机访问元素,则可考虑在输入时将元素读入到一个list容器,接着对此容器重新排序,使其适合顺序访问,然后... 阅读全文
摘要:
弄清楚容器的capacity(容量)与size(长度)的区别非常重要。size指容器当前拥有的元素个数;而capacity则指容器在必须分配新存储空间之前可以存储的元素总数。 程序如下: //编写程序研究标准库为vector对象提供的内存分配策略#include <iostream>#include <vector> using namespace std;int main(){ int a; ... 阅读全文