2009年 6月 の記事

Progression なぐり書き

以下、個人的なメモ。(シーン移動するボタン周りのやつ)

//次のシーンへ
var prog:Progression = getProgressionById("index");
var _goto:Goto = new Goto(prog.current.next.sceneId);
_goto.execute();

//前のシーンへ
var prog:Progression = getProgressionById("index");
var _goto:Goto = new Goto(prog.current.previous.sceneId);
_goto.execute();

//出発地のシーンの親
trace(progression.departedSceneId.clone().transfer("../"));
//目的地のシーンの親
trace(progression.destinedSceneId.clone().transfer("../"));

//シーン移動中の処理
progression.addEventListener(ProcessEvent.PROCESS_START, _onProcessStart);
private function _onProcessStart(e:ProcessEvent):void{
	e.target.removeEventListener(ProcessEvent.PROCESS_START, _onProcessStart);

	//シーン移動イベント中に、さらにシーン移動イベントが実行されないようにイベント削除してやったり
}

//シーン移動完了の処理
progression.addEventListener(ProcessEvent.PROCESS_COMPLETE, _onProcessComplete);
private function _onProcessComplete(e:ProcessEvent):void {
	e.target.removeEventListener(ProcessEvent.PROCESS_COMPLETE, _onProcessComplete);

	//シーン移動イベント再登録してやる
}

iPhone OS 3.0

今のところ OS 3.0 にしたら、文字を入力しようとした時に一文字ずつ確定されて使い物にならなくなるアプリがあります。
twitterrific と ウィズダム でその現象を確認しました。
他にもまだまだあると思います。

で、肝心のその解決策ですが、キーボード設定で日本語入力を QWERTY のみにする。これだけ。
僕はテンキー入力も絵文字も OFF にしていたわけですが、アップデート後どういうわけか勝手に設定が変えられていたようで。
同じような現象で困っている人がいれば、解決するかは分かりませんがとりあえず試してみてはどうでしょうか。

経営において一番大切なもの

日本でいちばん大切にしたい会社という本を読みました。経営の本は、「経営において大事なものは顧客をなによりも一番に考えること」といった内容が多いのですが、この本は違いました。

1 社員とその家族を幸せにする
2 外注先・下請企業の社員を幸せにする
3 顧客を幸せにする
4 地域社会を幸せに、活性化させる
5 株主を幸せにする
(amazonより)

という順に優先順位をつけられています。なんと顧客が3番目なんです。
まず1番に社員の幸せを考えない会社はダメだとこの本は言っています。顧客がいないと仕事がないじゃないかと思うかもしれませんが、その仕事をするのは社員なんです。いくら仕事があったところでそれが出来る人がいなければなんの意味もありません。そして、社員満足度が高ければ仕事の質も必然的に上がります。たしかに会社に対して不満がいっぱいでいい仕事なんて出来ません。質が低下するのは当たり前です。薄給でこき使われ、生活、家庭を犠牲にし、それでいていい仕事をするなんて果たして人間に可能なことなんでしょうか。

その次に外注、下請けです。この立場になるとよく分かることですが、とにかく無茶ぶりが多い。見積もり通りの請求でも後から買いたたかれ・・・そういう恨みを買うような仕事の仕方は非常によろしくないです。自分で自分の首を絞めているようなものです。なぜならば、もしその元請けがクラッシュしたとき、助け舟を出してくれるパートナーが皆無といった状況になってもおかしくありません。ほとんどが「あーあ、やっぱりね」みたいに思うぐらいだと思います。そんな風に孤立するよりも、仲間を増やす仕事の仕方をしたほうがいいと思います。

個人的に、こういうビジネス系の本にもかかわらずとても感動してしまいました。こう、心を揺さぶる何か、といいますか、そういうのを感じました。

※もしドメインが nbhd6119.com と表示されていましたら、お手数ですが http://boondockradio.net/ に変更をお願いします。また、もし RSS をご登録いただいておりましたら、こちらも再登録をお願いします。

dispatchEvent について

dispatchEvent でむっちゃハマりました。
親クラスで、外部クラスのイベントを発行してくれるメソッド呼び出しても全然反応してくれませんでした。
原因特定できたので備忘録。

package {
    import flash.display.Sprite;
    import flash.events.Event;
    import flash.text.TextField;
    
    public class FlashTest extends Sprite {
        
        private var _tf:TextField = new TextField();
        private var _foobar:FooBar = new FooBar();
        
        public function FlashTest() {
            
            addChild(_tf);
            
            //イベント登録の前に呼び出すとリスナーが効かない
            //_foobar.hogehoge("hoge");
            
            _foobar.addEventListener("piyo", _piyo);
            _tf.appendText("piyo : " + _foobar.willTrigger("piyo") + "\n");
            
            //イベント登録後に呼び出すと効く
            _foobar.hogehoge("hoge");
            
            _tf.appendText("piyo : " + _foobar.willTrigger("piyo") + "\n");
        }
        private function _piyo(e:Event):void{
            e.target.removeEventListener("piyo", _piyo);
            _tf.appendText("おしまい\n");
        }
    }
}

import flash.events.Event;
import flash.events.EventDispatcher;
class FooBar extends EventDispatcher{
    public function FooBar(){
    }
    
    public function hogehoge(_value:String):void{
        if(_value == "hoge") {
            dispatchEvent(new Event("piyo"));
        }
    }
}

原因はとても単純なことでした。
イベントリスナーに登録する前にイベントが発行されるわけなので、イベント拾ってくれないのは当たり前。
イベントが発行される前にイベントリスナーを登録しとかないといけません。
今まで意識してなかったのが恐ろしい^^;

ハマった時は新たに検証用ファイルを作って、ソースをシンプルにして検証するのが近道ですね。
こういう検証にも wonderfl って使えますね。


※もしドメインが nbhd6119.com と表示されていましたら、お手数ですが http://boondockradio.net/ に変更をお願いします。また、もし RSS をご登録いただいておりましたら、こちらも再登録をお願いします。

雑記

さて、毎年恒例のアップル税の納付の時期が近づいてまいりましたが、皆様いかがお過ごしでしょうか。

個人的にこのサービスなんかがいいなと思いました。今後 MobileMe にこういう機能が追加されていくのかな。

Return top