2009年1月13日 星期二

[筆記]氣象報告API

引用自:http://www.yaosansi.com/post/1366.html

Google Weather API 只支持美国地区使用邮政编码进行查询,例如:
http://www.google.com/ig/api?hl=zh-cn&weather=94043
(94043 为 山景城, 美国加州 的邮政编码)
而除了美国以外的地区需要使用经纬度坐标作为参数才能执行 Google Weather API, 例如:
http://www.google.com/ig/api?hl=zh-cn&weather=,,,30670000,104019996
(30670000,104019996 为 成都, 中国大陆 的经纬度坐标)

当然,也可能通行城市名称的汉语拼音来查询,例如:以下是北京的天气

http://www.google.com/ig/api?weather=Beijing


要其它地区的经纬度坐标,可以通过 Google API 提供的国家代码列表及相应的城市经纬度坐标列表可以查询到,以下是 Google API 提供的查询参数:
http://www.google.com/ig/countries?output=xml&hl=zh-cn
(查询 Google 所支持的所有国家的代码,并以 zh-cn 简体中文显示)
http://www.google.com/ig/cities?output=xml&hl=zh-cn&country=cn



附:其它天气API

Yahoo:http://developer.yahoo.com/weather/

北京天气(可以通过搜索查找)

http://xml.weather.yahoo.com/forecastrss?p=CHXX0008&u=f

国内API:

北京天气

http://weather.all2rss.com/weatherrss.asp?City=北京

2009年1月6日 星期二

[筆記]快速改變MC顏色

import flash.geom.ColorTransform;
var color:ColorTransform=new ColorTransform();
color.color=0xFFF000;
xxx_mc.transform.colorTransform=color;

2009年1月5日 星期一

[怪招]AS3的按鈕行為

xxx_mc.mouseChildren = false;

加了這行就差不多等於AS2的按鈕行為了,不會莫名其妙多"收"到MOUSE_OVER或MOUSE_OUT了。

感謝Vanilla!

2009年1月4日 星期日

[怪招]AS3的mask

AS3的mask並不會改變原物件的長寬;
舉例來說,一個長寬500x500的A_mc,被一個200x200的B_mc所mask,
AS2的時候,trace會發現A_mc的長寬變成200x200了,
但AS3則仍然trace出500x500。
這問題在需要對A_mc縮放的時候,會有大麻煩,
例如我想放大到寬度是1000px,則AS2會放大5倍,但AS3只會放大2倍;
試過DisplayObject的getRect()跟getBounds(),都是trace出500x500,
Vanilla找到一個怪招:
bitmapData.draw(A_mc);
trace(bitmapData.getColorBoundsRect(0xff000000,0xff000000,true));
就會回報正確的長寬了!
感謝Vanilla!

2009年1月2日 星期五

[問題]as2的escape,unescape

code:
System.useCodepage=true;
oldStr="ecardImg/%A6w%A5%FE%AEy%B4%C8%2Ejpg";
trace("oldStr : "+oldStr);
newStr=unescape(oldStr);
trace("newStr : "+newStr);
oldStr=escape(newStr);
trace("oldStr : "+oldStr);

output:
oldStr : ecardImg/%A6w%A5%FE%AEy%B4%C8%2Ejpg
newStr : ecardImg/安全座椅.jpg
oldStr : ecardImg%2F%A6w%A5%FE%AEy%B4%C8%2Ejpg

吃進去跟吐出來的不一樣!?