samwei12's blog

Stay hungry, stay foolish.

原文链接

问题

  • 今天在查找之前的 C++ 笔记时,突然发现之前的资料全没了,整个 Cpp 文件夹内就只剩下了三个文件,怎么形容当时的心情呢,应该说是一下就跌倒了谷底,感觉之前的心血全白费了,有种深深的挫败感.
阅读全文 »

原文链接

参考链接:
https://zh.mweb.im/mweb-1.4-add-floder-octpress-support.html
https://zhuanlan.zhihu.com/p/30513914

网上搜索到相关资料,如上面的链接,发现最新版本 MWeb (3.1.2)步骤有所出入,添加外部文件夹时候并没有弹出设置页面,需要自己手动在左侧文件夹上右击,点击编辑,

原文链接

背景

最近在项目开发中,需要针对 Jenkins 项目进行配置,Jenkins 的 job 配置采用的是 xml,在维护配置模板的过程中就遇到了问题,因为逐步发现配置灵活性超出了字符串的范畴,本文旨在简单介绍 Python 下模板引擎模块 Jinja2 的使用。

什么是 Jinja2?

Jinja2 是一个 Python 的功能齐全的模板引擎。它有完整的 unicode 支持,一个可选的集成沙箱执行环境,被广泛使用,以 BSD 许可证授权。

以上是官方说明,简单来说,它提供了替换功能(变量替换)和一些强大的特性(控制流、继承等),可以快速生成数据文件,使得业务与数据分离开来,满足一些灵活多变的配置需求。

阅读全文 »

原文链接

我们都知道ARC中weakassign或者说unsafe_unretained最大的不同就是设置weak属性后,系统会在对象被释放后自动将指向对象的指针置为nil,而assign则会产生一个悬空指针,那么系统是如何实现这一机制呢?我们能否自己模拟系统对weak的实现呢?

阅读全文 »

原文链接

近期在Mac项目中有一个处理鼠标拖拽事件的需求, 大致处理流程是这样的:

  1. 从 NSView 继承得到一个子类
  2. 覆盖处理拖拽事件相关方法
  3. 注册拖拽事件
阅读全文 »

原文链接

七牛云是个很好用的图床,但是 Mac 下并没有什么很好用的客户端,每次上传都需要在网页上手动一个个传文件,十分麻烦,于是仔细看了下七牛云的部分文档,打算使用QRSBox来自动上传图片.

阅读全文 »

原文链接

最近在看ios programming - the big nerd ranch guide 这本书,其中第24章介绍了如何使用系统接口来实现 State Restoration. 示例部分介绍的是如何针对 UINavigationController 来进行保存和还原状态, 然后额外的练习题部分是 UITabbarController 的状态保存和恢复,可是在这里却一直遇到问题, 导致程序返回时UITabbarController始终无法还原状态,本文记录下如何使用State Restoration和UITabbarController所需的额外处理。

阅读全文 »

原文链接

AVCaptureSession阻塞主线程问题

前阵子程序中出现了一个奇怪的 bug,在 iOS 系统上,页面弹出的时候会卡很久,相机始终黑屏,大概6-7秒钟,跟踪具体每个步骤花费时间的时候发现在viewWillDisappear:中开销最大,这其中只调用了一个相机关闭的代码:

1
2
3
if ([[self.avCameraManager session] isRunning]) {
[[self.avCameraManager session] stopRunning];
}

仔细看了文档之后,发现问题出在 stopRunning这里,

阅读全文 »

原文链接

最近项目中有一个需求是需要手动点击相机对焦,这里由于相机对焦部分需要一个类似于系统对焦框一样的缩放动画,同时动画时长为0.3秒,因此这里就有一个很普遍的需求,如果用户在0.3秒内继续点击对焦会怎么样?

动画部分代码很简单,如下:

1
2
3
4
5
6
7
8
9
10
self.transform = CGAffineTransformMakeScale(2.0f, 2.0f);
[UIView animateWithDuration:0.3f delay:0.0f options:UIViewAnimationOptionCurveLinear
animations:^{
self.transform = CGAffineTransformIdentity;
}
completion:^(BOOL finished){
if (finished) {
[self hideFocus];
}
}];

对焦框在0.3秒内进行两倍缩小到正常尺寸的一个动画,之后隐藏。

阅读全文 »
0%