- 1 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 13:32:59 ]
- NTT DoCoMoのiモード携帯電話用Javaに関する話題を扱うスレッドです。
※DoCoMo以外は下記スレへ。 CLDC+MIDP+携帯電話用Javaスレッド part 7 ttp://pc11.2ch.net/test/read.cgi/tech/1180010672/ ■ iアプリ特有ではなくJava一般に関する質問はこちらへ 【初心者】Java質問・相談スレッド110【大歓迎】 ttp://pc11.2ch.net/test/read.cgi/tech/1197710566/ ■ iモード携帯電話用Java(iアプリ)まとめサイト ttp://ton.my-sv.net/ ■関連スレ 【日本携帯】Mascot Capsule/Micro3D【標準】 ttp://pc8.2ch.net/test/read.cgi/tech/1117773530/
- 348 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 14:34:32 ]
- >>342
3Dのプリミティブを使ってやる。 古い機種の場合3D処理が対応してない場合があるが基本3.0以降の機種ならok ただ3.0以降でも機種依存で動作不完全というか仕様で端の1ドットが欠けたりする。
- 349 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 15:47:48 ]
- 質問
PalettedImageを使いたいんだけど、基本APIのHTMLにはミニマムスペックしかのってないよね? じゃあと思ってPDFで配布されてる「各機種オプションAPI・拡張API実装状況」を見てみたんだけど、 「基本APIに移りました」としか書いてない。 機種毎のそういう依存情報は、どこに書かれてるんでしょう?
- 350 名前:助けて [2008/02/14(木) 16:04:29 ]
- 内容:
過去レスも読んだんですけど、iアプリのテキスト入力で初期入力を数字に設定したいんですけど、 ソースの書き方がわかりません。 setInputModeを使うとかまでは分かるんですけど、それをどう自分の書いてるコードに反映したらいいんかわかんないんです。 お助けください。 書いてるコード↓ class PanelSample extends Panel implements SoftKeyListener,ComponentListener{ TextBox num1 = new TextBox("",8,1,TextBox.DISPLAY_ANY); TextBox num2 = new TextBox("",8,1,TextBox.DISPLAY_ANY); Button btn = new Button("計算実行"); public PanelSample(){ add(new Label("☆位:☆")); add(new Label(" 外?")); add(num1); add(new Label(" 底?"));
- 351 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 16:11:04 ]
- setInputMode
public void setInputMode(int mode)テキスト文字列の初期入力モードを設定します。初期入力モードとは、入力メソッドを起動し た時に最初に設定されるモードのことを表します。デフォルトではかな漢字入力モードです。 パラメータ: mode - 初期入力モードを指定します。NUMBER, ALPHA, KANA のいずれかを指定しま す。
- 352 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 16:15:54 ]
- こういうの、直接答えても何も覚えらんなくてダメなんだろうね。
>>350 1行ずつソースにコメント書いてみな。 で、「何を」「どう」変えたいのか考えればわからないかなー。
- 353 名前:351 mailto:sage [2008/02/14(木) 16:20:01 ]
- 俺もずばり正解を書き込む寸前に、ふとAPIリファレンス見て
ずばり答え書いてあるじゃん('A`) と呆れた
- 354 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 16:28:36 ]
- サンプル見りゃ一発だろ
- 355 名前:助けて [2008/02/14(木) 16:34:36 ]
- ずっとサンプル探したりして、いろいろ試しているんですけど
まったくわかりません。 TextBox num1 = new TextBox("",8,1,TextBox.DISPLAY_ANY); TextBox num1.setInputMode(TextBox.NUMBER); と書いてもビルドでエラーになるんですよ。
- 356 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 16:42:57 ]
- TextBox num1.setInputMode(TextBox.NUMBER);
が明らかにおかしいやん num1.setInputMode(TextBox.NUMBER); だろ?
- 357 名前:助けて [2008/02/14(木) 16:45:52 ]
- >>356
それでビルドしても <identifier> がありません。エラーが起こります。
- 358 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 16:46:32 ]
- 文はメソッドの中に書くものだ
- 359 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 16:48:07 ]
- Javaの基本がなってない
- 360 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 16:49:44 ]
- 呼んでる箇所がおかしいんだろ
- 361 名前:助けて [2008/02/14(木) 17:15:07 ]
- 全然わかんないです。
- 362 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 17:26:41 ]
- Javaをろくに理解せずにサンプルのコピペと試行錯誤だけで作るとこうなるという見本?
- 363 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 17:55:11 ]
- 最低限Javaでハローワールドくらいできろってことだわな
ところで>>349にもレスくだせえ
- 364 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 18:04:04 ]
- ってか、このスレ内に答えがあるだろ確か
- 365 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 00:32:29 ]
- >>349も>>350と同レベル
- 366 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 01:53:54 ]
- >>349
自分も気になって検索してみましたが 作ろうiモードコンテンツ:アプリケーション作成上の注意点 | サービス・機能 | NTTドコモ www.nttdocomo.co.jp/service/imode/make/content/iappli/caution/index.html 機種依存 詳細 P504i(S):Graphics2オプションAPIに関する制限 o9o.jp/kouza/plat_2.htm#P504i_4 このくらいしか見つからなかったです ひとまずミニマムスペックで www.rcdtokyo.com/man/doja/api/com/nttdocomo/ui/PalettedImage.html ・ PalettedImage オブジェクトを引数に指定した Graphics.drawImage(Image, int, int)、 Graphics.drawImage(Image, int, int, int, int, int, int) による描画 は最低限保障されてるらしいですし それしか使わないと決めてソースを書けばいいように思います ただ、PalettedImage で使う Palette の値は取扱いが面倒で (続く
- 367 名前:366 mailto:sage [2008/02/15(金) 01:54:33 ]
- 続き)
過去ログ iモード携帯電話用Java(iアプリ) Part 4 java.yubit.net/imode_java_4.html 上記の過去ログでも触れられてますが Palette#getEntry で取得した値をRGBに直す方法が存在しないらしいので (Palette#getEntry の取得値は、機種毎にまったく異なる値になる) 特定のgif画像のパレット値を、計算により徐々に暗くしていく・明るくしていく、といったことはできないでしょう 事前に変化させたいパレット値の全てを、別途、何らかの形で用意しておく必要がありそうです (RGBが列挙されたバイナリデータを別途持つとか、変化させたいパレット値を全て内包したgif画像を用意するとか)
- 368 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 12:03:31 ]
- >>341
>>347 機種依存だがUSBは可能 まぁUSB UART I.C.使ってのUSB Serial Portだけど (特定の機種で専用ケーブル用意すれば....って事ね) >>341 IrDAモジュールを直接叩けないので できるのは赤外線リモコン(送信)とIrDAな通信だけですな 世に学習リモコン iアプリが無いんだから わかりそうなものだけど
- 369 名前:デフォルトの名無しさん [2008/02/15(金) 12:16:28 ]
- iαppliTool for DoJa-5.1(FOMA) で開発していますが、
エミュレータにて実行しようとした時にコンソールに AppSize と SPsize の合計が > 1024K なので NG です との表示が出てしまい実行できません。 実際に ADF 設定にて SPSize に 20000000 などと設定して AppSize と SPsize の合計が 1024KB を超えているのですが 実機ではなくエミュレータのみで確認できればいいので、この制限を回避したいのですが可能でしょうか?
- 370 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 13:17:11 ]
- www.nttdocomo.co.jp/service/imode/make/content/spec/iappli/index.html
最近やたら多いけど。 何故まず公式の情報をよまないんだ。
- 371 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 13:34:35 ]
- Eclipseでデバッグする際に、現在は公式のDevGuideに従って設定をし
・ヒストリーの実行 ・ヒストリーのデバッグ と行なってエミュレータを動かしているのですが、これをワンタッチ化することはできませんか?
- 372 名前:369 mailto:sage [2008/02/15(金) 13:39:22 ]
- >>370
ご回答ありがとうございます。 意図していたことを伝えるのに言葉が不十分だったかもしれません。 DoJa-5.1 の容量制限は超えていることは承知なのですが、 端末での実行はできなくてよく、エミュレータ上でのみ動けばいいので 制限を外す方法があればと思い質問させて頂いています。 開発中、使用するリソース等を整理する前の段階では 実際の配信用としては容量オーバーの状態でも、 確認用としてビルドしたい場合が多々あるかと思うので 容量オーバーをエラーではなく警告として扱う設定があると思うのですが 試した方法(ADF の ProfileVer を変えてみるなど)では不可能でした。
- 373 名前:デフォルトの名無しさん [2008/02/15(金) 14:47:28 ]
- すみません。
皆さん、N900端末でのメモリ断片化対策とかどうしています? 他の端末だと起こった事はないのですが、N900だとメモリ操作を頻繁に行うと いづれはOutOfMemoryがでてしまうんで、なるべくメモリがキレイな状態の初回起動で データを全て読込むようにしているのですが、 今回400Kだけでは足りなく場面毎に通信からデータを取る必要があります。 現在は設計段階ですが、こまめにgcしてもN900だけは・・な・・てな感じで 悩んでます。どなたか策があればお願い致します。
- 374 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 14:52:19 ]
- まずスクラッチパッドを何バイトに設定しているんだ
話はそれからだ
- 375 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 14:55:39 ]
- >>373
もう使ってる人少ないから無理してサポートせんでも。
- 376 名前:373 [2008/02/15(金) 16:57:45 ]
- >>374
スクラッチパッドはフルに409600に設定しています。 >>375 そうしたいですけど、クライアントが許してくれないんで・・ この世からN900消してほしいです;;
- 377 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 17:22:06 ]
- >>376
N900の時のみ、これを起動直後に実行するようにしてみなさい。 try { HttpConnection hoge = (HttpConnection)Connector.open( "", Connector.READ); hoge.close(); } catch ( Exception e ) { }
- 378 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 18:34:55 ]
- >369
開発中だろうが不正な値(SPSize=約20MB!?)を指定する方が悪い。 エラーとしてしっかり弾くエミュレータの振る舞いは妥当じゃないかね。 ビルドしたいだけならSPSizeを小さくして、さらにresフォルダを空にすればいい。 その状態でjarが1024KB越えてるようだと、テストビルドも何も…てな話。
- 379 名前:378 mailto:sage [2008/02/15(金) 18:41:04 ]
- 補足。
DoJa-3.0や3.5のエミュレータにはサイズ制限のエラーや警告はなかったよ。 でもDoJa-5.0からのクラス使ってりゃビルド通らないだろうから意味ないけど。
- 380 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 19:06:39 ]
- >>379
各エミュレータで試してあげたのか、おまえ優しいな。 つーことは3.x系のエミュのdoja_classes.zipを5.1のと差し替えればビルドだけは通りそうだな。
- 381 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 19:38:43 ]
- 3.5エミュレータでも400K以上のSPだとエラー吐いて起動できないよ。
- 382 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 19:47:43 ]
- 正確に言うと
起動はできるけど400K以降のSPに対してアクセスしようとすると例外が発生する。
- 383 名前:378 mailto:sage [2008/02/15(金) 19:48:25 ]
- >381
あ、>379はSPadのサイズ指定じゃなくて、出来上がるjarのサイズについて。 jarが100KB越えてもビルドエラー出ないってことが言いたかった。 3.0のエミュレータも同様に、jarが30KB越えてもエラーにならないし、実行できちゃう。 >380 未だに3.0/3.5のエミュレータ使うことがあるんで体験談を書いてみた。
- 384 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 19:53:05 ]
- なるーそういうことね
- 385 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 22:35:50 ]
- メガアプリ対応でエミュレータにサイズチェックが追加されたんだろうな。
4.1のエミュレータでも160KBのjarが普通に動いてるよ。 実機で確認するときだけProGuardかけてる。 >>371 それは俺も知りたい
- 386 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 22:54:12 ]
- エミュレータ上での実行は問題なし
DLも上手く行った ところが実機で起動すると、ロード中に かなり高い確率で「αエラーが発生しました」って表示が出て止まる… 毎回、じゃなくて、しばしば。 他のプリインストールしてあるiアプリは問題なく起動するんですが なにを間違えたらこうなるんでしょうか。 スクラッチパッドへの展開に躓いたらキャッチして専用のエラー吐く筈なのに… 端末はF704iです どうか知恵を貸して下さい
- 387 名前:386 mailto:sage [2008/02/15(金) 23:10:11 ]
- すいません、使用しているのはDoja4.0です
- 388 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 23:33:20 ]
- ほとんど全て、try-catch して表示してみればいいんじゃなかろうか。
- 389 名前:デフォルトの名無しさん mailto:sage [2008/02/16(土) 00:23:09 ]
- try catch以前に落ちてるんじゃないの?不正なコードとか検出すると
エミュでは動くのに実機ではダメとかたまにあるよ。まぁ、よっぽど特殊なのか・・・
- 390 名前:デフォルトの名無しさん mailto:sage [2008/02/16(土) 00:26:12 ]
- まずどの関数を実行した時点で落ちるのか
話はそれからだ
- 391 名前:デフォルトの名無しさん mailto:sage [2008/02/16(土) 12:29:31 ]
- >>385
Doja5.0エミュレータでも1M以上のJarが動いたよ。 SPSizeに (1048576 - jarsize) 以上の値を指定したときに >>369になるようだ。
- 392 名前:デフォルトの名無しさん mailto:sage [2008/02/16(土) 12:54:59 ]
- >>386
トレースONにしてどんなエラーが出てるか確認しる
- 393 名前:デフォルトの名無しさん mailto:sage [2008/02/16(土) 14:39:02 ]
- >>391
スクラッチパッドを1バイトでも使うと1M以上のJarは動かないってこと?
- 394 名前:デフォルトの名無しさん mailto:sage [2008/02/16(土) 17:49:06 ]
- (;^ω^)
- 395 名前:デフォルトの名無しさん mailto:sage [2008/02/17(日) 18:48:47 ]
- DoJa-5.0以降でフルスクリーン表示に関する質問。
アイコン情報の領域を残したままにする方法はある? (フルスクリーンでもアンテナや電池残量を表示しておきたいということ)
- 396 名前:アプリ [2008/02/18(月) 02:44:52 ]
- アプリを自分の携帯電話に取り込むことはできますか?
可能ならば方法教えてください。 お願いします。
- 397 名前:デフォルトの名無しさん mailto:sage [2008/02/18(月) 02:54:55 ]
- >>396
何のこっちゃかさっぱり分からんばい
- 398 名前:デフォルトの名無しさん mailto:sage [2008/02/18(月) 02:56:04 ]
- あぷりを「だうんろーど」すると、けいたいでんわにとりこめるよ!
ハ_ハ ('(゚∀゚∩ とりこめるよ! ヽ 〈 ヽヽ_)
- 399 名前:アプリ [2008/02/18(月) 10:16:40 ]
- >398
ダウンロードしてもネットにつながったままでゲームすることになるんです。
- 400 名前:デフォルトの名無しさん mailto:sage [2008/02/18(月) 11:21:08 ]
- >>399
ここが何の板か解って聞いてるのか?
- 401 名前:デフォルトの名無しさん mailto:sage [2008/02/18(月) 11:36:32 ]
- >>395
電池なら表示できる(F905i) それ以外を表示したいなら自分で描画
- 402 名前:デフォルトの名無しさん mailto:sage [2008/02/18(月) 13:05:16 ]
- >401ありがとう。
ソフトキーみたいに出したり消せたりしないかと思ったんだが無理かー
- 403 名前:デフォルトの名無しさん [2008/02/18(月) 15:58:56 ]
- エミュでの話だが、FastMathクラスの精度は微妙だな。
FastMath.add(0.12345678f,0.0f)ってやると0.123291016fって値が返ってくる。 ちなみに+演算子使うと0.12345678fが返ってくる。
- 404 名前:デフォルトの名無しさん mailto:sage [2008/02/18(月) 16:19:31 ]
- だからこそのFast
- 405 名前:デフォルトの名無しさん mailto:sage [2008/02/18(月) 16:25:28 ]
- 1/4096 未満の値は切捨てなんだろうね。
- 406 名前:386 mailto:sage [2008/02/18(月) 16:47:04 ]
- 意地ンなってエラー拾おうとキャッチ付けまくりながら、
ついでにコード見直していたら、 なぜか苦も無く動くようになってしまいました… 個人的に釈然としない上に原因も療法も分かりませんが、 お世話になりました。
- 407 名前:デフォルトの名無しさん mailto:sage [2008/02/18(月) 22:19:03 ]
- FastMathが遅そうだからネイティブの浮動小数点演算と比較ベンチしてみたことがある。
903i以降の機種で試してみた限りは、除算以外は圧倒的にネイティブが早い。 com.nttdocomo.ui.util3dのクラス郡にFastMath使うのいい加減やめて欲しいと思う。
- 408 名前:アプリ [2008/02/19(火) 01:23:00 ]
- あほ〜
- 409 名前:371 mailto:sage [2008/02/19(火) 09:08:58 ]
- >>385
みんなワンタッチ化できてないのか・・・な? Eclipseを使い始めたばかりなので、何かしらワンタッチマクロあたりがないか探してます 誰か心当たりある人いませんか
- 410 名前:デフォルトの名無しさん mailto:sage [2008/02/19(火) 09:13:53 ]
- >ワンタッチ化
Eclipseスレでちょっと質問してきますね
- 411 名前:デフォルトの名無しさん [2008/02/19(火) 20:08:41 ]
- GPSなどの位置情報APIってDoja5.1でもiアプリDXじゃないと
使えない?
- 412 名前:デフォルトの名無しさん mailto:sage [2008/02/20(水) 01:01:31 ]
- >>473
な、なんだってー Fastって嘘なんかい。 なんでラジアンかディグリーで統一しといてくれないんだ・・・orz
- 413 名前:デフォルトの名無しさん mailto:sage [2008/02/20(水) 01:03:12 ]
- × >>473
○ >>407
- 414 名前:デフォルトの名無しさん mailto:sage [2008/02/20(水) 01:56:54 ]
- 四則計算のたびにメソッド呼び出すようじゃ遅くて当然だよねぇ…
- 415 名前:デフォルトの名無しさん mailto:sage [2008/02/21(木) 09:29:57 ]
- JAVA初心者なのですが、アプリを開発しています。
アプリ→PHP→MYSQLの順にデータを送信しているのですが、日本語の欄だけは30%位の確率で空白になってしまいます。 数字のスコアは100%大丈夫なのですが。 アプリ側ではデータを送信出来ているのでPHP側が怪しいと思うのですが、PHP側もエンコードしてUPDATEしているだけなので理由がわかりません。 わかる方がいましたらよろしくお願いします。
- 416 名前:デフォルトの名無しさん mailto:sage [2008/02/21(木) 09:46:48 ]
- まずは原因を特定してこい
プログラムに ○○%の確率で なんてことはありえない
- 417 名前:デフォルトの名無しさん mailto:sage [2008/02/21(木) 14:43:02 ]
- ここって仕事でiアプリ作ってる人もいるかな?
今日L705iに機種変したんだがアプリの挙動が明らかにおかしい。 ボタンの反応が消えたりフリーズしたり。 仕事でやってる人いるなら何か情報もってないかな・・・。
- 418 名前:デフォルトの名無しさん mailto:sage [2008/02/21(木) 15:02:25 ]
- >415
iアプリからのデータ送出でつまずいてるならともかく、 PHP側が怪しいだの言い出したらスレ違い。
- 419 名前:デフォルトの名無しさん mailto:sage [2008/02/21(木) 15:12:03 ]
- >417
仕事も何も関係なくL705iが変な機種かもって考えそうなもんじゃん。 iアプリ対応機種作りのノウハウ少なそうなメーカーなんだし。 と一般視点の俺が言ってみる。
- 420 名前:デフォルトの名無しさん mailto:sage [2008/02/21(木) 15:35:07 ]
- >>417
仕事でやっている人がいればどうだってのさ? 仕事とか関係ないやろ。 逆に仕事でやっている人は情報出しにくいやろ。
- 421 名前:デフォルトの名無しさん mailto:sage [2008/02/21(木) 15:35:36 ]
- >>419
まぁそうなんだけどね・・・・ で、実験プログラムを作ってみていろいろおかしくなるんだけど 1つだけ動作がおかしくなる原因がわかった。 この携帯、ソフトキー1の下にメールボタン?があってその下に電話の受信ボタン?がある。 でそのメールボタンをアプリ起動中に一回でも押すと 常にgetKeypadState()の戻り値にテンキーの5が押されている数値がかえってくる。 ゆえにテンキーの5を決定キーと同等の扱いに自分のアプリは振り分けていたので 方向キーの上を押しても決定キーの方が処理優先とかになってて何押しても決定キー扱いになっていたと・・・。 ついでに言えばこの状態はテンキーの5を押すか電源キーを押すなどで解除される。 ほかにもフリーズとかMLD再生とかでうまくいかない部分が多いのだが・・・こっちはまだわからん。
- 422 名前:デフォルトの名無しさん mailto:sage [2008/02/21(木) 15:38:38 ]
- >>420
俺みたいに気まぐれで買った人間以外となると 仕事でやってる人ぐらいしかアプリ作成でL705iに触れる機会はなさそうだとおもったんだよ・・・。
- 423 名前:デフォルトの名無しさん mailto:sage [2008/02/21(木) 17:46:30 ]
- >>420
仕事でやってるが、ガンガンここに情報だしてるし、ここからもらってるぞ ハード屋つっついてもバグに関する情報全然出さないから、こういうところのほうが情報源としてありがたい >>377で昔俺が書き込んだ対処法が浸透してるんだなとちょっと嬉しくなったw でもL705の情報は全然知らん。ただ >>421 そもそもgetKeypadState使わないほうがいいよ。 processEventで拾ったほうがいい
- 424 名前:デフォルトの名無しさん mailto:sage [2008/02/21(木) 23:36:39 ]
- >>421
確かにL705iはキーの挙動が一部おかしかった。 検証したのが去年のことなんで詳細忘れてしまった…スマヌ。 >>423 getKeypadState使わずにprocessEventで拾った方がいいというのはなぜ? ウチのアプリはgetKeypadStateで処理していた気がする・・・。
- 425 名前:デフォルトの名無しさん mailto:sage [2008/02/22(金) 02:30:35 ]
- Lなんてメーカーがわかった時点で考慮の対象外だったなぁ
- 426 名前:デフォルトの名無しさん mailto:sage [2008/02/22(金) 04:05:06 ]
- L705iってDojaプロファイル何だっけ?3.5?
- 427 名前:デフォルトの名無しさん mailto:sage [2008/02/22(金) 05:13:10 ]
- 3.5LE
馬鹿かと
- 428 名前:デフォルトの名無しさん mailto:sage [2008/02/22(金) 07:18:00 ]
- >>424
getKeypadStateだと、フレームとフレームの間に極短くボタンが押された場合検知できないから FPS30くらいのアプリなら気にならないかもしれないが、それを下回るなら 「あれ?押したのにアプリ反応しないぞ?」ってことがよくおきる processEventなら取りこぼしがない
- 429 名前:デフォルトの名無しさん [2008/02/22(金) 09:35:23 ]
- >>428
15FPSくらいだとしょっちゅうそういう事象が起きるね。 俺はgetKeypadStateの値とprocessEventの値を合わせて使うようにしてる。
- 430 名前:421 mailto:sage [2008/02/22(金) 10:10:18 ]
- 私も押された瞬間を検知するのにはprocessEventで取得したキー情報を使うんだけど
長押しを検知するのにループの先頭でgetKeypadStateもしてるのです。 必要に応じてどちらかの数値を参照する感じかな。 キーフラグ管理でもできるんだけどフラグ管理より楽なんでw
- 431 名前:424 mailto:sage [2008/02/22(金) 22:54:49 ]
- >>428
>>429 >>430 なるほど。勉強になります。 ウチで作ってるのは業務アプリなんで問題になってないけど、 ゲームとか作る場合には考慮する必要アリってことですな。
- 432 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 08:57:46 ]
- >>430
キーフラグつくれよw 一回作れば使いまわしきくんだからw
- 433 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 16:39:14 ]
- PRESSED時に押下時刻覚えさせてる
RELEASEでリセット
- 434 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 17:22:03 ]
- >>433
天才現る
- 435 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 17:23:58 ]
- 俺もキーフラグで管理してないな。
理由としては昔からの癖みたいなもんだが。 昔の機種は機種依存が色々発生しまくってて キーリリースイベントが取得できなかったり、 どんなタイミングでレジューム関係が呼び出されるかも わからなかったからリリースイベント通過しない状態の処理を 入れておくのがこわかったのもある。今思えばそういう機種はなかったんだが。 知ってるかい?P503iは四月作成したアプリがダウンロードできないことをw あんなのが普通にありすぎたからなぁ当時はw
- 436 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 19:07:19 ]
- AplにすればDLできたけどねー
- 437 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 15:35:31 ]
- キーフラグで管理してないやつって
ボタン押下時にやる処理をキーイベントの中でやってんの?
- 438 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 15:44:33 ]
- >>433でやってる
むしろフラグで長押しの効率よい判定がイメージできない
- 439 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 16:57:53 ]
- >>433は
むしろフラグの一種やん
- 440 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 17:00:37 ]
- 質問なのですが、Runtime.getRuntime().freeMemory()を使ったときの残りメモリが
実機上とEclipse上でぜんぜん違うのはなぜなんでしょうか? メモリサイズは実機のサイズに合わせているのに消費メモリが5倍くらい違っている理由がわからないです。
- 441 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 17:18:33 ]
- エミュレータは確かJavaヒープとネイティブヒープで分かれてるよね。
実機がどの端末か分からないけど、中にはこれらのヒープが共用の端末がある。 そしてRuntime.getRuntime().freeMemory()で取れるのはJavaヒープ残量だけ。 つまりヒープ共用の端末でのネイティブヒープ分の差ではないかと推測。
- 442 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 17:19:43 ]
- 逆にMemoryManagerで全てのメモリ量を取ってみれば大体一致すると思う。
- 443 名前:デフォルトの名無しさん [2008/02/25(月) 09:41:18 ]
- >>435
昔の端末ってキー同時押しが2つまでだったよな。 3つを同時に押しっぱなしにして、放すとリリースがおかしくなったような気がする。 うろ覚えですまんが。
- 444 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 11:18:33 ]
- Doja4.0以降では0xAARRGGBBによる半透明描画がサポートされたようなのですが、
対応している描画はfillRectだけとAPIリファレンスにありました いわゆるα値入り32bit画像データなどは利用できないのでしょうか? そもそもGIFもJPEGも対応していないので、そのような画像を用意する手段が思いつきませんが…。 Image.createImageのint配列版も、AARRGGBBではなくRRGGBBとかかれていますし
- 445 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 13:26:37 ]
- >444
Imageの半透明対応はDoJa5.0から。それより前は不可。
- 446 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 13:28:28 ]
- 訂正
× それより前は不可。 ○ それより前はオプションAPIでの対応次第。
- 447 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 14:46:39 ]
- >>445
どうも というか、1ドット単位でのα値の設定はDojaでは無理のようですね。 MIDP2.0は1ドット単位でのα設定ができる(αつき32bit画像が扱える)ので、常にグラフィック関連ではSアプリより前を行っていたiアプリならできるかなと思ったのですが残念です 自前で32bit画像データ型を作って、ミニマムスペックで対応が保証されてる fillRectで1ドットずつ描くって手はありますがw
- 448 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 15:23:43 ]
- 1ドットずつαの違うImageなんて何に使うんだ?
|

|