だいたい186日前に更新最終更新日時: 2010-03-04 (木) 19:20:46
現在の位置
FrontPage > とにかくメモ
目次(I) [折り畳む]
- とにかくメモする
- そのうちクラス化
- TopのFlashとかバナーとかではscalemodeをSHOW_ALLにしとく
- movがインターレースのときはシーケンスもインターレースにしとく
- xmlをtext()してtextFieldに入れると改行が倍になる
- TextFieldの改行コード
- VNCためす
- FLVの全画面再生は重い。BMD.draw()をしてるほうがなぜか軽い
- Safari3とか4のポップアップブロックを回避する
- チェックリスト
- ブレンドモードするときのList
- [解決]GlowFilterをつかったobjectにロールオーバーをかけるとビクビクする
- [解決]IE系でExternalInterfaceをつないだ後にswfをremoveするとサクっとクラッシュする
lastmod: 2010-03-04 (木) 19:20:46
Tag: flash
とにかくメモする †
そのうちクラス化 †
import com.bit101.components.PushButton;
import com.bit101.components.Window;
import flash.display.BlendMode;
import flash.display.DisplayObject;
import flash.display.DisplayObjectContainer;
import flash.events.Event;
class BlendModeControls extends Window
{
public static const BLEND_MODE_LIST:Array =
[
BlendMode.ADD,
BlendMode.ALPHA,
BlendMode.DARKEN,
BlendMode.DIFFERENCE,
BlendMode.ERASE,
BlendMode.HARDLIGHT,
BlendMode.INVERT,
BlendMode.LAYER,
BlendMode.LIGHTEN,
BlendMode.MULTIPLY,
BlendMode.NORMAL,
BlendMode.OVERLAY,
BlendMode.SCREEN,
BlendMode.SUBTRACT
];
private var _target:DisplayObject;
function BlendModeControls(blendmodeTarget:DisplayObject, parent:DisplayObjectContainer = null, xpos:Number = 0, ypos:Number = 0, title:String = "BlendMode")
{
super(parent, xpos, ypos, title);
_target = blendmodeTarget;
_createBtns();
}
private function _createBtns():void
{
var yPos:Number = 20;
for (var i:int = 0, n:int = BLEND_MODE_LIST.length; i < n; ++i)
{
var btn:PushButton = new PushButton(this, 0, yPos, BLEND_MODE_LIST[i], _changeBlendmode);
btn.name = BLEND_MODE_LIST[i];
yPos += btn.height - 1;
}
}
private function _changeBlendmode(e:Event):void
{
_target.blendMode = e.target.name;
trace( "_target.blendMode : " + _target.blendMode );
}
}
TopのFlashとかバナーとかではscalemodeをSHOW_ALLにしとく †
(2010-02-03 (水) 21:18:10)
ブラウザのズーム機能のおかげで、Flashの領域が固定でなく可変になってしまう。
なので、SHOW_ALLにしとくことで、可変でも対応できる
movがインターレースのときはシーケンスもインターレースにしとく †
(2010-01-30 (土) 16:57:42)
- シーケンス
- インターレース
- 書き出し
- ここでプログレッシブ
にするとうまくいく。
- mov:インターレース
- シーケンス: プログレッシブ
- 書き出し: プログレッシブ
だとアウト
xmlをtext()してtextFieldに入れると改行が倍になる †
(2009-12-15 (火) 11:19:33)
var xml:XML = <root> unko chinko </root> textField.text = xml.text();
ってすると改行が倍になる。\r\nがそれぞれ解釈されるらしいので、どちらかをreplaceして代入するといいvalue.replace(/\r?\n/g, "<br>"); //OK
TextField?の改行コード †
(2009-11-11 (水) 13:31:57)
tf.text = str // これには\nで大丈夫
var value:String = tf.text; //value.replace(/\n/g, "<br>"); //ダメ value.replace(/\r?\n/g, "<br>"); //OK
VNCためす †
(2009-11-10 (火) 11:21:01)
構築しとこ
FLVの全画面再生は重い。BMD.draw()をしてるほうがなぜか軽い †
(2009-10-23 (金) 13:21:23)
Flvを全画面表示するよりも、
FlvをキャプチャしたBMDを拡大して表示したほうがだいぶ軽い
CPU使用率 50%→40%くらいの差があった
drawはEnterFrame?じゃなくて、FlvのFpsにあわせるとより軽くなる。それでも重いならキャプチャのタイミングを20~24Fpsまで落としてもいいかもしれん。背景で使うとかやったら、あまり差がわからん。
Safari3とか4のポップアップブロックを回避する †
(2009-03-13 (金) 20:37:08)
as3のExternalInterface経由でwindow.openを呼ぶとポップアップブロックにひっかかる。
とりあえずnavigateToURL(~~,_blank)で回避しとく
package { import flash.external.ExternalInterface; public class IsSafari { //---------------------------------- // static var/const //---------------------------------- //---------------------------------- // instance var //---------------------------------- private static var _isSafari:Boolean = false; private static var _isInit:Boolean = false; /** * コンストラクタ */ public function IsSafari() { } public static function isSafari():Boolean { if (!_isInit) checkUA(); return _isSafari; } static private function checkUA():void { if (ExternalInterface.available) { var ua:String = ExternalInterface.call("function() { return navigator.userAgent }"); if (ua == null) return; if (ua.match(/Safari\/([\.\d]+)/) && !ua.match(/Chrome\/([\.\d]+)/)) _isSafari = true; else _isSafari = false; } _isInit = true; } } }
チェックリスト †
(2009-03-02 (月) 13:29:06)
- クロスブラウザがめんどくさい
- popupしないといけないときは、全部のブラウザとOSで確認せんと
ブレンドモードするときのList †
(2009-02-19 (木) 18:31:58)
_listBox = new List(); addChild(_listBox); _listBox.addItem( { label: BlendMode.ADD, data: BlendMode.ADD} ); _listBox.addItem( { label: BlendMode.ALPHA, data: BlendMode.ALPHA } ); _listBox.addItem( { label: BlendMode.DARKEN, data: BlendMode.DARKEN } ); _listBox.addItem( { label: BlendMode.DIFFERENCE, data: BlendMode.DIFFERENCE } ); _listBox.addItem( { label: BlendMode.ERASE, data: BlendMode.ERASE } ); _listBox.addItem( { label: BlendMode.INVERT, data: BlendMode.INVERT } ); _listBox.addItem( { label: BlendMode.LAYER, data: BlendMode.LAYER } ); _listBox.addItem( { label: BlendMode.LIGHTEN, data: BlendMode.LIGHTEN } ); _listBox.addItem( { label: BlendMode.MULTIPLY, data: BlendMode.MULTIPLY } ); _listBox.addItem( { label: BlendMode.NORMAL, data: BlendMode.NORMAL } ); _listBox.addItem( { label: BlendMode.OVERLAY, data: BlendMode.OVERLAY } ); _listBox.addItem( { label: BlendMode.SCREEN, data: BlendMode.SCREEN } ); _listBox.addItem( { label: BlendMode.SUBTRACT, data: BlendMode.SUBTRACT } ); _listBox.allowMultipleSelection = false; //_listBox.addEventListener(Event.CHANGE, listChange); _listBox.rowCount = _listBox.length; //bitmapレンダーはこっち var blendmode:String = _listBox.selectedItem ? _listBox.selectedItem.label : BlendMode.NORMAL; var bmd:BitmapData = _canvas.bitmapData; bmd.draw(_container, null, null, blendmode);
[解決]GlowFilter?をつかったobjectにロールオーバーをかけるとビクビクする †
(2008-11-18 (火) 16:29:02)
GlowFilter?を使ったbgがあるスプライトで
マウスを乗せるとrollOverとrollOutを繰り返して、ビクビクする感じになる
- ダミーの透明レイヤーを敷いて、そいつにマウスイベントを登録するとうまくいった -- 2008-11-18 (火) 16:29:42
[解決]IE系でExternalInterfaceをつないだ後にswfをremoveするとサクっとクラッシュする †
(2008-10-25 (土) 01:30:54)
ExternalInterfaceを使って接続したあとにswfをremoveChildすると死亡した。
単純な作りのExternalinterfaceなら死なない。ブログパーツでゴニョゴニョしてると死んだ。強引に親DIVごとごっそりけしてもエラーが出た。try catchで受け取ってもExternalInterface上でのエラーとしか出なかった。接続してたから?
setTimeoutを使ってみるか。
- setTimeoutで解決!コールスタックを断ち切ればOK -- 2008-10-25 (土) 18:54:24
- 関連ページ
- FrontPage151日前
- ExternalInterface668日前
ツールボックス
katapad.com
タグ
メニュー
- Pukiwikiとは
- SandBox
- WikiName
- InterWikiName
- WikiEngines?
- FormattingRules
最新の20件
最新の20件
- とにかくメモ
