用一陣子,才想到要錄音的功能,所以在Market 找了兩三套來試,都有想同的問題,就是另一方通話的聲音太小了,在想不會那麼巧吧!,所以在網站爬了一下。原來問題在 Android 不知道Google 什麼會改善。
http://mortlemania.wordpress.com/2010/06/10/call-recording-crippled-on-android-fix-this-now-google/
http://code.google.com/p/android/issues/detail?id=2117#c180
2010年7月26日 星期一
Fly Mosquito 模擬像蚊子浮動的效果
Fly Mosquito 模擬像蚊子浮動的效果
//主程式
package {
import flash.display.*;
import flash.media.*;
import flash.events.*;
import webco.*;
public class MainTest extends Sprite {
public function MainTest() {
var num=5;
var msq;
var aMS= new Array();
for (var i=0; i<=num; i++) {
msq = new Mosquito();
msq.x=randomNumber(0,stage.stageWidth-50);
msq.y=randomNumber(0,stage.stageHeight-50);
//trace(msq);
addChild(msq);
msq.addEventListener(MouseEvent.CLICK ,onClick);
aMS.push(new MosquitoSimulator(msq));
trace(i);
}
var sound:Sound = new MosquitoSound();
sound.play();
}
function onClick(e:Event) {
var sound:Sound = new MosquitoSound();
sound.play();
}
function randomNumber(low:Number=NaN, high:Number=NaN):Number {
var low:Number=low;
var high:Number=high;
if (isNaN(low)) {
throw new Error("low must be defined");
}
if (isNaN(high)) {
throw new Error("high must be defined");
}
return Math.round(Math.random() * (high - low)) + low;
}
}
}
//模擬程式
package webco{
import flash.display.*;
import flash.events.*;
import flash.geom.Point;
import flash.media.*;
import caurina.transitions.Tweener;
public class MosquitoSimulator {
var initX;
var initY;
var dX=50;
var dY=50;
var simular:*;
public function MosquitoSimulator(obj:Sprite) {
this.simular=obj;
initX=simular.x;
initY=simular.y;
this.simular.addEventListener(MouseEvent.MOUSE_OVER,onOver);
this.simular.addEventListener(MouseEvent.MOUSE_OUT,onOut);
setFloat();
}
function onOver(e:Event) {
var clickPoint:Point = new Point(simular.mouseX, simular.mouseY);
clickPoint = simular.localToGlobal(clickPoint)
simular.buttonMode = true;
var nx = clickPoint.x-simular.width/2;
var ny = clickPoint.y-simular.height/2;
Tweener.removeTweens(this.simular);
Tweener.addTween(this.simular, {x:nx, y:ny, delay:0, time:0.5, transition:"easeInOutQuart"} );
}
function onOut(e:Event) {
setFloat();
}
function setFloat() {
var nx=randomNumber(initX,initX-dX);
var ny=randomNumber(initY,initY-dY);
var delay =randomNumber(0,2);
//trace("setFloat",nx, ny);
Tweener.addTween(this.simular, {x:nx, y:ny, delay:delay, time:2, transition:"easeInOutQuart",onComplete:setFloatHandle} );
}
function setFloatHandle() {
//var nx=randomNumber(initX,);
//var ny=randomNumber(3,7);
//trace("setFloatHandle",initX, initY);
Tweener.addTween(this.simular, {x:initX, y:initY, time:1, delay:0, transition:"easeInOutQuart", onComplete:setFloat} );
}
function randomNumber(low:Number=NaN, high:Number=NaN):Number {
var low:Number=low;
var high:Number=high;
if (isNaN(low)) {
throw new Error("low must be defined");
}
if (isNaN(high)) {
throw new Error("high must be defined");
}
//return Math.round(Math.random() * (high - low)) + low;
return (Math.random() * (high - low)) + low;
}
}// end class
}
下載
http://tmp.webco.tw/flash/mosquito/mosquito.swf
//主程式
package {
import flash.display.*;
import flash.media.*;
import flash.events.*;
import webco.*;
public class MainTest extends Sprite {
public function MainTest() {
var num=5;
var msq;
var aMS= new Array();
for (var i=0; i<=num; i++) {
msq = new Mosquito();
msq.x=randomNumber(0,stage.stageWidth-50);
msq.y=randomNumber(0,stage.stageHeight-50);
//trace(msq);
addChild(msq);
msq.addEventListener(MouseEvent.CLICK ,onClick);
aMS.push(new MosquitoSimulator(msq));
trace(i);
}
var sound:Sound = new MosquitoSound();
sound.play();
}
function onClick(e:Event) {
var sound:Sound = new MosquitoSound();
sound.play();
}
function randomNumber(low:Number=NaN, high:Number=NaN):Number {
var low:Number=low;
var high:Number=high;
if (isNaN(low)) {
throw new Error("low must be defined");
}
if (isNaN(high)) {
throw new Error("high must be defined");
}
return Math.round(Math.random() * (high - low)) + low;
}
}
}
//模擬程式
package webco{
import flash.display.*;
import flash.events.*;
import flash.geom.Point;
import flash.media.*;
import caurina.transitions.Tweener;
public class MosquitoSimulator {
var initX;
var initY;
var dX=50;
var dY=50;
var simular:*;
public function MosquitoSimulator(obj:Sprite) {
this.simular=obj;
initX=simular.x;
initY=simular.y;
this.simular.addEventListener(MouseEvent.MOUSE_OVER,onOver);
this.simular.addEventListener(MouseEvent.MOUSE_OUT,onOut);
setFloat();
}
function onOver(e:Event) {
var clickPoint:Point = new Point(simular.mouseX, simular.mouseY);
clickPoint = simular.localToGlobal(clickPoint)
simular.buttonMode = true;
var nx = clickPoint.x-simular.width/2;
var ny = clickPoint.y-simular.height/2;
Tweener.removeTweens(this.simular);
Tweener.addTween(this.simular, {x:nx, y:ny, delay:0, time:0.5, transition:"easeInOutQuart"} );
}
function onOut(e:Event) {
setFloat();
}
function setFloat() {
var nx=randomNumber(initX,initX-dX);
var ny=randomNumber(initY,initY-dY);
var delay =randomNumber(0,2);
//trace("setFloat",nx, ny);
Tweener.addTween(this.simular, {x:nx, y:ny, delay:delay, time:2, transition:"easeInOutQuart",onComplete:setFloatHandle} );
}
function setFloatHandle() {
//var nx=randomNumber(initX,);
//var ny=randomNumber(3,7);
//trace("setFloatHandle",initX, initY);
Tweener.addTween(this.simular, {x:initX, y:initY, time:1, delay:0, transition:"easeInOutQuart", onComplete:setFloat} );
}
function randomNumber(low:Number=NaN, high:Number=NaN):Number {
var low:Number=low;
var high:Number=high;
if (isNaN(low)) {
throw new Error("low must be defined");
}
if (isNaN(high)) {
throw new Error("high must be defined");
}
//return Math.round(Math.random() * (high - low)) + low;
return (Math.random() * (high - low)) + low;
}
}// end class
}
下載
http://tmp.webco.tw/flash/mosquito/mosquito.swf
2010年7月22日 星期四
AS3 Singleton Pattern
為了確保類別的實體化不會有第二次,不論系統內何處實體化都是相同的物件,可以用來當做全域變數的實體物件
SingletonTest.as
package
{
import flash.display.Sprite;
public class SingletonTest extends Sprite
{
public function SingletonTest()
{
var initialSingleton:Singleton = Singleton.getInstance();
var subsequentSingleton:Singleton = Singleton.getInstance();
}
}
}
Singleton.as
package
{
public class Singleton
{
private static var _instance:Singleton;
public function Singleton(pvt:PrivateClass) {
}
public static function getInstance():Singleton
{
if(Singleton._instance == null)
{
Singleton._instance=new Singleton(new PrivateClass());
trace("Singleton instantiated");
}
else
{
trace("Sorry--already have a Singleton instantiated")
}
return Singleton._instance;
}
}
}
class PrivateClass
{
public function PrivateClass() {
trace("Private class is up");
}
}
SingletonTest.as
package
{
import flash.display.Sprite;
public class SingletonTest extends Sprite
{
public function SingletonTest()
{
var initialSingleton:Singleton = Singleton.getInstance();
var subsequentSingleton:Singleton = Singleton.getInstance();
}
}
}
Singleton.as
package
{
public class Singleton
{
private static var _instance:Singleton;
public function Singleton(pvt:PrivateClass) {
}
public static function getInstance():Singleton
{
if(Singleton._instance == null)
{
Singleton._instance=new Singleton(new PrivateClass());
trace("Singleton instantiated");
}
else
{
trace("Sorry--already have a Singleton instantiated")
}
return Singleton._instance;
}
}
}
class PrivateClass
{
public function PrivateClass() {
trace("Private class is up");
}
}
2010年7月20日 星期二
建立文字盒 TextField
import flash.text.*;
var label1:TextField ;
label1 = createCustomTextField(100, 500, 400, 20);
label1.text = "Webco.TW";
private function createCustomTextField(x:Number, y:Number, width:Number, height:Number):TextField {
var result:TextField = new TextField();
result.x = x; result.y = y;
result.width = width; result.height = height;
addChild(result);
var my_fmt:TextFormat = new TextFormat();
my_fmt.color = 0xFFFFFF;
result.defaultTextFormat = my_fmt;
return result;
}
2010年7月16日 星期五
阿建的筆記: Away3D 雙面貼圖
阿建的筆記: Away3D 雙面貼圖: "Away3D 雙面貼圖 http://tmp.webco.tw/flash/sphereMapping/sphereMap.swf 產生PNG格式的透明圖片 做為貼圖 AS3 的程式碼 package { import f..."
阿建的筆記: Flash 載入 3D Object
阿建的筆記: Flash 載入 3D Object: "Flash 載入 3D Object package { import away3d.cameras.Camera3D; import away3d.containers.*; import away3d.core.math.Nu..."
NOKY英語單字學習網站使用方法
- 請在進入本網頁www.noky.tw後,先註冊,
以利個人學習記錄;選擇國小、國中、高中課程! 並打開喇叭或戴上耳機。
- 建議從國小課程之各階段開始,
如此可復習並增加耳語聽力習慣!
- 點選進入國小課程,並從初級選項開始!
- 進入初級選項後,點選藍色顯示項目「馬上練習」。
每日選擇一項即可,把該項之三十個單字(每一項目量皆同)嚐試過 後即可休息,很輕鬆吧^^,如此日日練習即可見功效。
- 練習時,請跟著外籍女士所錄製的純正語音發音,念出來之後,
再選擇該單字的正確意思。如此,可加強印象並校正口語腔調。 養成習慣,出國不亂!^^
訂閱:
文章 (Atom)