Pathのサイドビュー切替をFlashBuilderで再現してみた

TwitterとInstagramに満足してるので今はほとんど使ってないけど、UIの作り込みがとても評判のPathで採用されているスワイプでメインビューと両サイドビューを切り替えるUIをFlashで再現してみた。このUIって名前とかあるのかね?

SplitViewNavigatorを背面に配置して前面にもう一個ビューを配置、このメインビューにタッチスライド機能を組み込んでなんとかそれっぽく動くように制御できた。この調子で独自UIとか考えてみたいなー。

左手のiPhoneで撮影しつつ、右手でINFOBARを操作してるので、タッチがぎこちないのはご愛嬌。

2012.02.22 by _simo
Categories: air, as3 | Tags: | Leave a comment

ARABIAとiittalaのマグカップを買い足し


最近ネットショップで買い物することが増えたなー。よく利用しているscopeさんが大規模セールやってたのであれこれと3万円分くらい買ってしまった。今までマグカップは自分と嫁の2つしか持っていなかったのでお客さん用にもと買い足し。気分によって色を使い分けられる贅沢。ちょっとしたセレクト感が楽しかったりする。こういう小さいのをちゃんと楽しめるようになりたいといつも思う。


今日は白で。普段ブラックとか飲まないけど、たまには格好つけてみたり。シールをいつ剥がすかいつも迷う。とりあえずしばらくは付けたままにしておこうかな。

2012.02.20 by _simo
Categories: memo | Leave a comment

ユウキの結婚式に行ってきた


大学時代の友人ユウキの結婚式に長崎まで行ってきた。当日入りのメンバーと一緒に電車で揺られながらの小旅行。長崎駅で前日入りメンバーと合流し、送迎バス発車までコーヒー飲みながら過ごす。御祝儀の準備は前日までにね!


式場はルークプラザホテル。稲佐山からの眺望が最高に気持ちよくて天空城みたいな雰囲気。人数も120名超と盛大な挙式と披露宴でした。余興のDVDを持っていくことに気を取られ過ぎてカメラやもろもろを忘れる失態。たまにやっちゃうのよね、これ。iPhone+Instagramで頑張りました。


招待状や席次表、ウエルカムボード、等身大パネル、新郎新婦紹介DVD、ありがとうDVD等々、とにかく手作りにこだわったユウキワールド全開!ホントよく作ったなー。


2次会が終わった後、商店街に出るとランタンフェスティバルで良い感じに灯されてた。龍踊り(じゃおどり)の行進にも出くわし、初めて見ることができた。人の熱気もすごかった!


3次会では新婦が以前働いていた居酒屋に移動。まえぽよが2次会のビンゴで当てた魔王。ここで全部飲んでもうた。この辺からだんだん記憶が怪しくなる。


4次会でバーに流れてひとしきり飲んだ後、〆のラーメン。ちゃんぽんと迷ったけど、思案橋ラーメンのバクダンラーメンが美味しかったー。ニンニクとラード?みたいなペースト状の強烈な何かを溶かしながら食う。うまい。食後にユウキと別れてみんなでホテルに向かう。もう半分くらい記憶なかったけど確かそうだったはず。


次の日は10時にチェックアウトしてツル茶んでトルコライス食べて、文明堂でカステラ買って昼過ぎに帰る。2時間ちょいの電車の旅はもちろん全員爆睡。


最後に自分の引き出物だけみんなより袋が大きかった。余興のDVD作ったりしたから特別にしてくれたらしい。中身はART WORK STUDIOの照明でした。早速加湿器の隣に設置してみた。部屋が更にいい感じに。

ユウキ色々ありがとうー!!そしておめでとさん。末永くお幸せにねー!

2012.02.04 by _simo
Categories: memo | Leave a comment

低山部で宝満山に行ってきた


だいぶ遅くなったけど前々回の低山部動画がようやく編集完了。2年目の宝満山に雪はほとんどなく、滝が凍っているのか心配しながらの登山。低山部の活動日はいつも暑すぎるくらい天気に恵まれるのだ。初参加メンバー2名を加え、久々の10名越え。団体で行くとそれだけで楽しい。

しかし動画撮ってるとバッテリーの消耗がホント激しい。いいかげん予備の電池パック買わないとだな。

2012.01.29 by _simo
Categories: memo | Tags: | Leave a comment

FlashBuilderでコンパイル時のフレームレートを変更するには

FlashBuilderモバイルプロジェクトのプロパティから「Flexコンパイラー」を選択して、「追加コンパイラー引数」のところに下記を追加。

-default-frame-rate 30

これで30fpsのswfがパブリッシュされる。デフォルトでは24fpsみたい。

2012.01.28 by _simo
Categories: air, as3 | Tags: | Leave a comment

TabbedViewNavigatorにViewNavigatorを動的に追加削除するには

TabbedViewNavigatorApplicationを使ってタブ付きアプリを作る場合にタブ数が固定の場合は良いのだけど、動的に増減させる方法。add系やremove系のメソッドでViewNavigatorを追加・削除するだけでは反映されないのね。解決方法はvalidateNowメソッドをコールすること。これしないと再更新されないみたい。

アプリ起動時の認証とかネットワーク状況次第でアプリを通常起動させたくない時に、一度タブを全て削除してエラー画面のビューのみを表示させたい時に使えますよと。

tabbedNavigator.removeAll();
tabbedNavigator.validateNow(); //これ重要!

var errorNavi:ViewNavigator = new ViewNavigator();
errorNavi.firstView = views.ErrorView;
errorNavi.label = "エラー画面";
errorNavi.percentWidth = 100;
errorNavi.percentHeight = 100;

tabbedNavigator.addItem(errorNavi);
tabbedNavigator.validateNow(); //これ重要!

■アドビのフォーラムにも書いてあった。英語だけど。
http://forums.adobe.com/message/3701497

2012.01.27 by _simo
Categories: air, as3 | Tags: | Leave a comment

FlashBuilderでmxmlに動的にaddChildするには

表示オブジェクトをAS3で動的に作ってmxmlに直接addChildしようとするとエラーになる。どうやらmxmlに表示オブジェクトを配置するにはaddElementを使うらしい。mxmlにはコンポーネントしか配置できないので、SpriteとかのAS3で作った表示オブジェクトはUIComponentに包んでから配置してやる。上記コードで赤い角丸ベタ塗りが表示できる。ようやく標準コンポーネント以外の独自UIをアプリに持ち込めるな。超基本過ぎて泣ける。

var sp:Sprite = new Sprite();
sp.graphics.clear();
sp.graphics.beginFill(0xff0000, 1);
sp.graphics.drawRoundRect(0, 0, stage.stageWidth, stage.stageHeight - navigator.actionBar.height, 30, 30);
sp.graphics.endFill();

var ui:UIComponent = new UIComponent();
ui.addChild(sp);
addElement(ui);

2012.01.27 by _simo
Categories: air, as3 | Tags: | Leave a comment

次回の低山部

今週の1/29(日)に宝満山に登ります。2名の初参加者と一緒に今年も氷瀑を見に行くのだ。昨日今日とだいぶ寒いので滝はしっかり凍ってるはず。撮影、編集の勉強も兼ねて前々回の英彦山の動画。狙った色に転がすの難しいのね。

2012.01.26 by _simo
Categories: memo | Tags: | Leave a comment

タブ移動するタイミングを検知する

import mx.events.FlexEvent;
import spark.events.IndexChangeEvent;

/**
 * 初期化
 */
protected function creationCompleteHandler(e:FlexEvent):void
{
	tabbedNavigator.addEventListener(IndexChangeEvent.CHANGING, onTabChange);
	tabbedNavigator.addEventListener(IndexChangeEvent.CHANGE, onTabChange);
}

/**
 * タブ移動
 */
protected function onTabChange(e:IndexChangeEvent):void
{
	switch(e.type)
	{
		//-----[タブ移動の直前]
		case "changing":
			trace("タブ移動前", "selectIndex=", tabbedNavigator.selectedIndex, "label=", tabbedNavigator.selectedNavigator.label);
			break;

		//-----[タブ移動の直後]
		case "change":
			trace("タブ移動後", "selectIndex=", tabbedNavigator.selectedIndex, "label=", tabbedNavigator.selectedNavigator.label);
			break;
	}
}

タブ付きアプリケーションでタブ移動の前後に処理を挟みたい時の検知方法。TabbedViewNavigatorApplicationのmxmlで初期化するタイミング(creationComplete関数とか)でtabbedNavigatorにIndexChangeEventをリスナー登録しておく。各Viewではどのタブから移動してきたかは分からないみたいね。

2012.01.19 by _simo
Categories: air, as3 | Tags: | Leave a comment

新年会しました


よく登ったり遊んだり飲んだり仕事したりしているメンバーで今年初顔合わせ。当日は準備や子供の面倒見ながらだったので写真取れず。カメラ大好きkanekomeganeさんがシャレオッティに撮ってくれたので拝借させてもらいました。1品持ち寄りでお昼集合、夕方まで飲むわ食べるわ話すわでゆったりしながらの良い新年会でした。


motoo夫婦から頂いたブルース・リーのトラックスーツ。ジャストサイズ!!いっちんのぼってりしたお腹によく似合う。ありがとうございました!


広島から持って帰った日本酒の生酒と鹿児島の焼酎があっという間に空いてしまったので、あとはビール、酎ハイ、甘酒、紅茶飲んだり。次回はもう少し用意しておきます。w

Webの事以外にもいろんな話ができるこのメンバーの集まりがすごく面白くて、とても大事にしたい繋がり。アイデア相談したり作りたいもの共有したり。今年は低山部でアウトドア専用のトネリコアプリとか作りたいなー。


nenriki夫婦からもアヒルの玩具や新居祝いのワインまで頂いて本当にありがとうございました!あれから毎日子分のようにアヒルを引き連れて部屋をウロウロしております。ワインは家族の記念日に大事に飲ませて頂きますねー。

…椅子が足りなくて申し訳なかったです。スタックできるスツールを何脚か買っておかねば。

2012.01.15 by _simo
Categories: memo | Leave a comment