IT Technology

[原创翻译]在Windows上安装树莓派镜像

原文:Installing Operating System Images using Windows

  • 把SD卡插入读卡器并检查分配的盘符。你可以很容易的在Windows资源管理器的左列找到盘符(例如:G:)。您可以使用SD卡插槽(如果有)或廉价的USB SD卡适配器。
  • 这里下载Win32DiskImager(一个zip包)。Win32DiskImager 可以从U盘启动。
  • 解压zip包,在 Win32DiskImager 上右键,点击 Run as administrator 已管理员身份启动 Win32DiskImager。
  • 选择你解压好的树莓派镜像。
  • 在磁盘列表中选择SD卡的盘符。请选择正确的盘符,否则你将丢失硬盘上的数据!如果 Win32DiskImager 中未找到SD卡,并且你使用了电脑的SD插槽,请尝试使用SD卡适配器。
  • 点击Write按钮,等待写卡完毕。
  • 退出程序,并卸载SD卡。

本文由u0u0翻译于2015.7.24

Quick 3.3 销毁button后立即创建,新button可能不响应事件

比较诡异的现象,参数问题的场景如下:

self.upgradeFrame[i]:removeFromParent()
self.upgradeFrame[i]= cc.ui.UIPushButton.new("shop/upgrade/upgradLocked.png")
    :onButtonClicked(function ( event )
        print(111)
    end)
    :addTo(self)

在Mac的player上大概有10%的几率,新button不能响应事件,而在windows上会高达90%。

建议避免这样的使用场景。

nginx 日志循环

ubuntu安装nginx,默认使用logrotate进行日志管理。
logrotate能解决nginx不能分割日志的缺陷,我们需要对其进行适当配置。

阅读全文»

wordpress 迁移 typecho

1、按照官方的步骤进行操作

http://docs.typecho.org/plugins/wordpress-to-typecho

2、拷贝wordpress的附件wp-content/uploads到 typecho 的 usr/uploads

3、更改数据库中的附件链接

use typecho;
update typecho_contents set text=replace(text,'wp-content/uploads','usr/uploads');

4、nginx静态化

location / {
    if (-f $request_filename/index.html){
         rewrite (.*) $1/index.html break;
    }
    if (-f $request_filename/index.php){
        rewrite (.*) $1/index.php;
    }
    if (!-f $request_filename){
        rewrite (.*) /index.php;
    }
}

Lua中获取table长度的几种方法

1、# 操作可以取得表格的长度,但仅限从 1 开始连续数字为索引的表格

2、count = table.getn(表格对象) ,用途同 #。

3、count = table.nums(表格对象),可计算任意表格长度。

Quick 3.3 修改display.lua 加入EXACT_FIT分辨率适配模式

改动如下:

if CONFIG_SCREEN_AUTOSCALE and CONFIG_SCREEN_AUTOSCALE ~="NONE" then
    if type(CONFIG_SCREEN_AUTOSCALE_CALLBACK) == "function" then
        scaleX, scaleY = CONFIG_SCREEN_AUTOSCALE_CALLBACK(w, h, device.model)
    end

-    if CONFIG_SCREEN_AUTOSCALE == "FILL_ALL" then
+    if CONFIG_SCREEN_AUTOSCALE == "EXACT_FIT" then
+        scale = 1.0
+        glview:setDesignResolutionSize(CONFIG_SCREEN_WIDTH, CONFIG_SCREEN_HEIGHT, cc.ResolutionPolicy.EXACT_FIT)
+    elseif CONFIG_SCREEN_AUTOSCALE == "FILL_ALL" then
        CONFIG_SCREEN_WIDTH = w
        CONFIG_SCREEN_HEIGHT = h
        scale = 1.0
        if cc.bPlugin_ then
            glview:setDesignResolutionSize(CONFIG_SCREEN_WIDTH, CONFIG_SCREEN_HEIGHT, cc.ResolutionPolicy.NO_BORDER)
        else
-            glview:setDesignResolutionSize(CONFIG_SCREEN_WIDTH, CONFIG_SCREEN_HEIGHT, cc.ResolutionPolicy.FILL_ALL)
+            glview:setDesignResolutionSize(CONFIG_SCREEN_WIDTH, CONFIG_SCREEN_HEIGHT, cc.ResolutionPolicy.SHOW_ALL)
            end

Quick 3.3 中监听spine骨骼动画事件

spineAnimation为创建的spine骨骼动画。

spineAnimation:registerSpineEventHandler(function (event)
    dump(event)
end, sp.EventType.ANIMATION_END)

事件有以下类型:

sp.EventType =
{
    ANIMATION_START = 0, 
    ANIMATION_END = 1, 
    ANIMATION_COMPLETE = 2, 
    ANIMATION_EVENT = 3,
}
注:不在在骨骼动画事件中调用spineAnimation:removeFromParent(), spine runtime会异常的。用调度器来解决这个问题。