Androidプログラミング質問スレ Part12
1000とり逃げしてんなよな すれたてしろや
タブレットでローカルナビゲーションってどう実現されてますか? やはりアクションバーの下に自前のナビゲーションバーでしょうか。
>>1 乙
次は
>>950 のやつが立ててくれ
前スレのオートフォーカスの話だけど、getFocusMode()で返る値が下記のモードのときは、
autoFocus()呼んじゃダメって、各値のところに書いてあるな
FOCUS_MODE_INFINITY
FOCUS_MODE_FIXED
FOCUS_MODE_EDOF
FOCUS_MODE_CONTINUOUS_VIDEO
乙
javaでアプリケーションサーバを作って、 Android端末にC2DMを利用してメッセージを送信したいと考えています。 どうやって実現すれば良いのか調べたいのですが、 アプリケーションサーバー自体の知識不足からか ググってもいまいちわかりませんでした。 何か良い書籍などあれば教えてください。
>>7 詳しく書いてあるネットを見て分からなかったのなら
本を見ても同じだと思うよ。
具体的にどの変がわからないのか書けばアドバイスするよ。
サーバは何使うか決まってるの?
DTMFダイヤラーアプリを作成し、実機でも発信することができました。
今度は、DTMF音を受信してデコードし、画面上に受信したDTMF音を表示する
アプリを作成しようと思っています
(
http://www.kero2.org/android/adtmfdec.htm ↑このようなアプリを作ろうと考えています)
が、参考サイト等またはソースコードがまったく見当たりません;
Android1.6〜2.2上の端末で動作するアプリとして開発したいのですが…
ご教授のほど、よろしくお願いします。
10 :
7 :2011/09/05(月) 14:32:58.83
>>8 GAEを使おうと考えています。
(たぶん実務で使うわけではないので何でも良いのですが)
開発環境はEclipse EE/javaです。
現状ですがhello worldを表示させるプログラムを
サーバー上にアップデートする所まで行きました。
[わからないこと]
・Android側:取得したデバイス登録IDをサーバ側へ送信する方法
・サーバー側:とりあえず
http://labs.techfirm.co.jp/android/mana/3156を貼り付けてみたが HTMLの記述がわからない、というか全体的にわからない。
って状況です、javaとAndroidの知識は若干あるつもりですが。
サーバー側のプログラミングがよくわかってないため。
何から見ればよいのかチンプンカンプンです。
エミュレータ(2.2)にて、空ループを作って60Hzくらいで回っているところに、 Canvas canvas = surfaceView.getHolder().lockCanvas(); これ1行(実際はunlockもだが)入れるだけで10Hzくらいになるんだけど、 実機だと大丈夫ですか? 開発マシンはC2Dの2.4GHzです。
12 :
7 :2011/09/05(月) 14:45:49.13
前スレで聞いたのですがまだ解決していないのでどなたか解決策ご存知の方いらしたらお願いします。 NDK GDBを使おうと思ったのですが、ndk-gdbを実行すると以下のようなエラーが出てうまくいきません。 awk: fatal: can't open source file `/cygdrive/c/NDKnatest/C:/android-ndk-r6 /build/awk/check-awk.awk' for reading (No such file or directory) ERROR: Could not run 'awk' command. Do you have it installed properly? c:/NDKnatestがプロジェクトのパスです。何故かこの後にパスが連結されて処理されてしまっているようです。 これは何が原因なのでしょうか。 awkコマンドは単体なら実行できます。
14 :
7 :2011/09/05(月) 14:50:38.54
>>13 環境変数が間違っているとか?
念のため確認してみてはどうでしょうか。
Androidですれ違い通信が可能なアプリを開発することは可能なのでしょうか? 今の仕様ではユーザが手操作で通信を可にし、かつ3分間しか自動接続はできないとあったのですが、 すれちがったーっというアプリはすれ違い通信をしているようなので気になりました。
ホーム画面設置のウィジェットにおいて、ScrollViewが使えないということで困っております。 スクロールバーを表示させるには自前で書くしかないのでしょうか… 参考になりそうなものでも教えていただけると助かります。
>>16 スクロールビューの使い方はこんな感じにするのが正しいんだけど
配置の順番は合ってる?
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="
http://schemas.android.com/apk/res/android "
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<ScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="300dip"
android:text="@string/hello"
/>
</LinearLayout>
</ScrollView>
</LinearLayout>
>>17 ウィジェットを作るときは、限られたコンポーネントしか使用できずその中にScrollViewは含まれておらず困っております。
そもそもちっちゃなウィジェットの中身をスクロールさせようって考えが間違ってる。
>>10 デバイスIDはDefaultHttpClientを使って送ってみて。
DefaultHttpClientじゃなくてもいいけど。
HTMLの記述ってどこで必要?
>>14 環境変数はANDROID_NDK_ROOT、PATHにndkのディレクトリが正しく指定されていました。
22 :
7 :2011/09/05(月) 16:41:21.70
>>21 ANDROID_NDK_ROOTを"c:/..."ではなくcygwinでのフルパス("/cygdrive/c/...")に設定してみろ
>>23 ANDROID_NDK_ROOTをcygwinのフルパスにしたらgdb起動しました!ありがとうございました。
>>4 ローカルナビゲーションが何か分からんけど
必要ならアクションバーにも突っ込めるでしょ
>>11 大丈夫
>>15 その仕様をどこから引っ張ってきたのか知らないけど
すれ違い通信に3分以上かけるきなの?
>>18 困るも何もScrllViewはRemoteViewsじゃないから使えない
たまにはおっぱいのことも思い出してあげてください。。。 ていうか誰か知らない?
誰だてめえ
うpしてみ
adb push でエミュレータの /scdard下へ転送したファイルがたまに読み込めなくなるんだけど、 同じ症状の人いない? 読めなくなったファイルはアプリからもオープンに失敗するし、adb shell からもファイル名を ダイレクトに指定して ls しても見つからないけど、 ls * では一覧に名前だけは見える。 同じファイルをもう一回pushすると ls * で同一の名前が二つ並ぶ。avdが壊れてるのかな?
ご回答ありがとうございます。ただ、ScrollViewを使えないのは承知しています。 その上でスクロールバーを実装したウィジェットが多くあり、ニーズも存在するため質問させていただきました…
すみません、超初心者なんですが、 トヨタのロゴをカメラに映すとトヨタの車の映像が呼び出される、 というようなアプリを作りたいのですが、 何から勉強をはじめればよいですか? 本は2冊ほど買いました。
まず服を脱ぎます。
基本的に自分の1機種でしか試せないと思いますが みなさん特定のこの機種で動かなかったというような報告はどれくらいありますか?
>>34 そこがわからないんです。。
いま手元にAndroid SDK 逆引きハンドブックがあるのですが
カメラやグラフィックのチャプターにそういった認識に関する物が
見当たりません。
何か他にいい本やキーワードなどはございませんでしょうか?
>>30 ニーズがある云々言われても出来ないものは出来ない
一部のホームアプリでは使えるようになってるみたいだけど、標準のやつじゃ使えない
後は3.0以降では使えた気がする
>>35 画像認識ならopenCVがとってもお手軽
>>31 本を買ったんなら本を読めばいいじゃねえか、死ねよ。
好きな場所から下に進めていけ、
括弧の中に有効なキーワード書いておいたから。
1.画面に「hello world」と表示させる(TextView)
2.画面に適当な画像を表示させる(ImageView)
3.カメラ機能を呼び出す(インテント)
4.カメラで撮った画像を表示させる(ImageView)
5.画像処理(bitmap?)
指定した時間にSleep状態からActivityを起動したいのですが、上手くいきません。 AlarmManager.RTCでも AlarmManager.RTC_WAKEUPでもSleep状態から起きずでした。 なので、 BroadcastReceiverを継承したクラスを作り ブロードキャスト飛ばしてonReceive内でWakeLockとkeylockで画面オン&ロック解除をしたらSleep状態から起きました。 そして更にonReceive内からActivityを起動しようとgetActivityやらstartActivityで試みましたが、 そうすると今度はSleep状態から起きません。 どうすれば良いのでしょうか?ご教授お願いします。
>>38 >>37 ありがとうございます。
OPENCVを新たに学び、アンドロイドで頑張ってみようと思います。
Androidアプリの開発用マシンを購入しようと思ってるんですが、ディスプレイはどのくらいのサイズが良いですかね。 ワイド型にするか、標準的なのがいいか迷ってます。よろしくお願いします。
開発関係なく今の標準は23インチくらいだろ
>>33 不具合で機種報告してくる奴はほとんどいなかったな。
Iconia A500で落ちるって報告あった時は、3.0の端末持ってなかったから、
買って試したな。
AndroidのOS2.3SHARP製をゲットしてテストしてみたのですが、 やはりautofocusでエラー落ちしていました。 autoFocus呼び出し部分を /*〜〜〜*/でコメントアウトして撮影したところ 正常に動作していることを確認、撮影→保存処理関連は問題ないようです。 デバッグモードでみてみると 取り敢えず、String data = params.getFocusMode(); で見てみるとautoが返ってきていました。 autoが返ってきていることを考えると、対応していると思うのですが・・・ 実際の呼び出し部分の流れが try { ※camera.autoFocus(new Camera.AutoFocusCallbak() { public void onAutoFocus(boolean success, Camera camera) { camera.autoFocus(null); } }); } catch (Throwable e) { ※ e. } camera.takePicture(null,null,this); } return true; } となり、ブレークポイントを※印の部分にセットしました。 続きます
46 :
45 :2011/09/06(火) 10:44:15.83
テストしてみたところ、シャッター音も再生され、return true;まで問題なくいったのですが その後 | → ボタンを押していくと、デバッグThreadの部分に Camera.autoFocus(Camera$AutoFocusCallback) 行870の部分でステップオーバーすると thisの部分にInvocationTargetException exceptionが、RuntimeException を出しており、detailMessageを見ると"autoFocus failed"となっていました。 この場合、autoFocusは未対応ってことなのでしょうか? 別機種2種類では、このようなエラーは出ませんでした。 未対応の場合、autoFocusを行わないといった処理をしたいのですが getAutoFocusではautoが返ってくる状況 どういった処理で、対応/非対応を見分ければいい感じでしょうか?
47 :
45 :2011/09/06(火) 10:48:10.50
追記: エラー終了した場合はもちろんのこと、 画像データは保存されていない状況です。
>>45 SHARPはSHARP SDKを提供しているけど、その中にCameraExクラスが
あるみたいだな。
これを使わないとダメとかあるのかな?
apkをインストールするアプリを作りたいのですが apkをインストールするためのクラスや関数について解説したページご存知ですか?
50 :
48 :2011/09/06(火) 11:30:26.23
CameraExは二眼カメラ用のようだな。
>>48 ,=
>>50 thx、二眼カメラ用の場合以外でもこれ使わないとダメなのかなぁ…
取り敢えず自分がテストした機種は二眼カメラなんですよね…
しかし、3Dモードを使用しなければ、シングルカメラと変わらないような気がするのですが、うーん
取り敢えず、SHARPのデベロッパー会員に登録して
問い合わせしてみます。
サイズの大きい画像の一部分をBitmapとして読み込む方法はありませんか? 5000x5000画像の左上250x250の範囲がほしいのですが、 画像全体を読み込もうとするとOutOfMemoryで落ちてしまいます。 options.inSampleSizeを小さくすれば読み込めるのですが、画質が落ちてしまいます。
Bitmap.createBitmap とかどうだろう
>>55 createBitmapで左上250x250を切り取ればいいのでは?
ttp://www.saturn.dti.ne.jp/~npaka/android/C2DMEx/index.html ↑ここのサイトを参考にAndroid間でC2DMを利用したメッセージ送信
アプリを作ろうと思ったのですが、サンプルソースがうまく動きません。
下記の3行目で"java.io.IOException: Received authentication challenge is null"が出てしまいます
String path="
https://android.apis.google.com/c2dm/send ";
String body="registration_id="+regID+"&collapse_key=1&data.testdata="+message;
w=http2data(path,body.getBytes());
これはどういった時に出るエラーなのでしょうか?
また、解決方法があれば教えてください。
【補足】
・ビルドターゲットはgoogle APIs 2.2 を使用しています
・アプリケーションはc2dmへ登録しました(たぶんできてるはず)
・一応両方の端末でgoogleアカウント同期済みです。
・サンプルソースの中で書き直す箇所は全部編集しています
AndroidでアニメーションGIFをエンコードする方法って ありますか?Androidではjavax.imageioが無いので最悪 自前で実装するしか無いような気がしてます。 何か良いライブラリがありますでしょうか?
60 :
58 :2011/09/06(火) 13:53:44.76
自己解決しました。
>>56 ,57
BitmapFactory.decodeStream(in)を呼んだ時点でOutOfMemoryErrorになるので、Bitmapのインスタンスを取得できないのですが。。。
まあ、そんなでかい画像使うなってことでひとつ
1920x1080の画像サイズですら撮影→変換の際にout of memoryでるんだし 5000x5000なんて無理じゃね・・・
訂正、出るのもあるし
24bitカラーで70MBぐらいか。 5000x5000の画像なんて、何から出てくるんだろう?
地図とかじゃね
例えばgifで2色の5000x5000の場合は容量的にもたいしたことないと思うけど それでもOutOfMemoryErrorになるのかな? 大きさ分だけメモリ確保するの?
>>68 GIFとして読み込むわけじゃないからな
Bitmap.Configで色数減らせばその分サイズは小さくなりそうだけど
RGB565に設定したBitmapを白く塗る場合、 ピクセルを0xFFFFで埋めるんだと思ってたけど、 0xFFFFFFでないとだめなのね・・・2byteじゃないの?
CursorAdapterとListViewで一覧画面を作ってて、 画面を遷移するタイミングでCursor#closeしてるんだけど 次の行でCursor#isCloseで確認してもcloseされていないみたいです。 この原因が何か分かる方いらっしゃいませんか?
すぐtrue返るけどなぁ SQLiteCursorならソース見る限りcloseするとすぐにisClosedはtrueを返すようになる
73 :
デフォルトの名無しさん :2011/09/07(水) 00:20:01.11
>>60 相互扶助で成り立ってるんだから解決方法も書こうな。
別スレッドから見ちゃってるとか
>>74 お、実はCursorはAsyncTaskのバックグラウンドで作成して
後処理でUIのListViewに貼りつけてるんですが、バックグラウンドで
作成したCursorって閉じれなくなっちゃう…の?わけないよね…。
77 :
デフォルトの名無しさん :2011/09/07(水) 02:52:49.54
>>77 やあ、僕はジェームズ・ゴスリン(James Arthur Gosling)だよ。
おっと、Oracleがさっさとくたばるべきかどうかについてだけど、それをここで語るのは
有害なだけで全くの無益だからやめておくよ。
さて、コードを見せる方法は色々あるだろうけど、なんでまた画像で、しかもよりによって
bmp形式を選択したのか、まったく正気とは思えない君にアドバイス出来る事がひとつあるよ。
オブジェクト指向の前に、まず変数のスコープという概念を学びなさい。
ttp://x.imgup.me/e/iup5494.png
着信音の曲名ってどうすれば取れますかね? 再生させる方法は出てきたけど、曲名が取り出せない
>>78 そういうおまえも画像ってどういうことだよw
波形と曲名のリストを作っておく
public class Sensor06 extends Activity implements SensorEventListener { private SensorManager sensorManager; LinearLayout ll; //追加 OnGlobalLayoutListener listener; //追加 @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //途中省略 /* LinearLayout */ ll = (LinearLayout) findViewById(R.id.image); final HorizontalScrollView hsv = (HorizontalScrollView) findViewById(R.id.ScrollView); /* OnGlobalLayoutListner */ listener = new OnGlobalLayoutListener(){ //以下省略
ダイアログを余白なく画面いっぱいに表示したいのですが、やり方があったら教えてください。 Dialogクラスを継承したカスタムダイアログを作っていろいろ試してますが、余白が残ってしまいます。
HorizontalScrollViewにxmlでscrollxを指定しているのですが、スクロールの初期値が変わりません。 ためしにscrollyを指定した見ましたが変わらず、ソース内でgetScrollXとgetScrollYで確認しても0しか帰ってこない。 もしかして、HorizontalScrollViewでscrollxは使用できないのでしょうか。 その場合は、スクロールの初期値をどうやって変更すればいいのでしょうか。
>>84 xmlからの属性でコンストラクタ内の処理は fillViewport だけ
つうことはソース内で設定しろってことだよね? onCreateでscrollToもscrollByも試した見たけどスクロールせず、 1個下のviewのLinearLayoutにscrollToとscrollByするとスクロールするけど、 スクロールバーが動かないで、見た目だけがずれるんだけどどーすりゃいいんでしょうか。
87 :
デフォルトの名無しさん :2011/09/07(水) 11:40:24.06
ProgressBarのSTYLE_SPINNER で、あのくるくるしているやつの色を 変更したいのですが、どのようにすればできますでしょうか? いろいろ調べたのですが、やり方がわかりませんでした。。 よろしくお願いいたします。
すみません質問させてください Progurdでソースを難読化しようとしているのですが progurd.cfgファイルには変更を加えずにdefault.propertiesにパス通しただけだと コンソールにProgurd returned with error code 1. See console 'C:\Program'は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていません。 '-jar'は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていません。 と表示されてしまいます 調べてみたところ、通常のエラーでは難読化に失敗した部分が表示され、-keepで保護すれば良いとありますが、このエラーとは違うのでどのように対処すればよいのかわかりません どなたかご教授ください
89 :
デフォルトの名無しさん :2011/09/07(水) 12:08:29.68
>>87 の者ですが、ひょっとしてあのくるくるアニメーションって、
画像を数秒毎に変えてるだけの気がしてきました。
認識合ってますでしょうか?
色を変更するには自分で用意した画像をアニメーションさせるしか
ないのでしょうか?
>>83 アクティビティにダイアログ風なスタイル適用して表示
ボタンを押したらキーボードの1やBackspaceを押す という処理をしたいのですが可能でしょうか?
どこのボタンだよ
ボタンを押すのは無理だがボタンを押されたというイベントを起こすことはできると思う。
すいませんwidgetのボタンです。
96 :
91 :2011/09/07(水) 13:05:53.98
dispatchKeyEventを使えば意図した動作しました。 これで大丈夫なのでしょうか? つまらない質問でスレ汚しすいません
>>90 ありがとうございます。その手でいきます。
アクティビティにandroid:theme="@android:style/Theme.Dialogの適用では余白は埋めれませんでした。
大人しくstyle作ります。
>>88 この類似質問よくあるけど、"C:\Program files"のパスがスペースで
分割されてしまうのが原因。
簡単な解決方法は、SDKをパスにスペースが含まれない場所に
インストールする。
>>88 program filesを使いたいんならPROGRA~1に置き換えてみると良い、
根拠はググれ。
100 :
デフォルトの名無しさん :2011/09/07(水) 16:29:07.70
データベースをgetReadableDatabaseメソッドで開くと、読み取り専用で開くと思うのですが、 普通にINSERT文でデータを挿入できてしまいます。 読み取り専用で開いたときは、INSERT、 DELETE、 UPDATEはできないと思っていたのですが、 同じような現象の方はいらっしゃいますか?
>>100 リファレンス見ると、full disk のときなど以外は同じだとあるな
102 :
100 :2011/09/07(水) 16:38:47.74
レスありがとうございます。 ということは、getReadableDatabaseメソッドでも書き込みできてしまうということですね。 明示的に読み取り専用か、読み書き専用かっていうのを区別して呼び出しているだけ なんですかね。。。
それ使い分けるなら SQLiteDatabase#openDatabase 使うんじゃないのかな。
>>102 getReadableDatabase 内で最初に getWritableDatabase を呼んでる
ここで問題がなければ全く同じ
2chブラウザを作成していて、ウェブブラウザで2chのスレッドの URLを踏んだときにアプリが起動するようにしたいと考えて、 とりあえず下記のようにintent-filterを設定しました。 <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="http" /> <data android:host="yuzuru.2ch.net" /> <data android:pathPrefix="/test/read.cgi/" /> </intent-filter> これでyuzuru.2ch.netにあるスレッドのURIをフックすることは出来ましたが、 これを2ch全てのサーバー分書くのは非効率的ですし、鯖移転への対応が難しくなってしまいます。 これを解決する方策があれば教えてもらえませんか? android:hostの正規表現や、外部リソースのサーバー一覧から動的にintent-filterを適用するなどの 漠然としたアイデアは浮かぶのですが、具体的な方法が思いつきません…。
106 :
100 :2011/09/07(水) 16:55:45.86
>>103 >>104 ありがとうございます。
読み取り専用か、読み書き専用でしっかり区別したいときはSQLiteDatabase#openDatabaseを使ったほうが
いいんですね。
getReadableDatabaseメソッドで開いても、ディスク容量などに問題がないとき?は、
getWritableDatabaseで開かれるんですね。
わかりやすく教えていただいてありがとうございました。
>>105 そういうときは既存のアプリがどうしてるか見てみればいい。
android:host="*.2ch.net"
でいいんじゃないの?
それよりもdataってschemeとhostとpathPrefixは3つでセットの条件じゃないの?
2.1のアプリを2.2の端末でもSDカードに退避できるように manifestにandroid:installlocation="auto" を加えてみました。 しかし、1M程度しか退避できず、本体側は 3M > 2M位にしかなりませんでした。 アプリによっては 5M以上のものが1Mを切ったりするなどと、 結構な部分をSDカードへ退避できているものもあるのですが、 どの辺にポイントがあるのでしょうか?
>>109 ボタンの画像には最小サイズがあるし、そこに文字が入ると通常その文字がつぶれるほど小さくは出来ない
サイズの問題ではみ出たんだと予測する
>>112 アラヤダこんな風に使うのですね。重ね重ねありがとうございます!
webviewもしくはアプリ全体でソフトウェアキーボードを無効化できますか? edittextではsetInputType(InputType.TYPE_NULL);とすることで無効化できました webviewではsetInputTypeができないので困っています。
webviewとeditTextの組み合わせには良い思い出がない
116 :
109 :2011/09/08(木) 01:42:38.58
>>111 有難うございます
設定いじってなんとか押し込んでみます
117 :
デフォルトの名無しさん :2011/09/08(木) 02:11:24.63
格闘ゲームを作りたいんだけど、ハードウェアキーがないから出来ない。 画面上にキーを表示して、それが飛び出してきて固まって物理的なハードキーと 同じように使えるようにしたいんだけど、どうしたらいいかわからない。
タッチを認識してくれるシールでも張れば良いんじゃないの?
画面からキャラクターが飛び出して動くゲームを流用すればよい
SurfaceViewが30フレームくらいで更新続けてるとこに、 Buttonのイベントを飛ばして影響与えたいってところか 完全にうろ覚えなんで間違ってても保証できないけど、 Activityの中でHandle作って、 onClickの中で上記のHandleのrunからSurfaceViewにイベント飛ばすんじゃなかったかな
121 :
デフォルトの名無しさん :2011/09/08(木) 11:06:03.42
エミュレーターのターゲットについて質問です。 Eclipse使用してます。 1. プロジェクト作成時にAndroid1.6を指定して作成。 2. Android1.6でAVDを作成してコードを書いて動作確認していた。 3. エミュレーターを3.2にしてみたらエラーになる。 4. パッケージエクスプローラー→Android→Project Build targetでAndroid1.6だったのをAndroid3.2に変更する。 5. まずはAndroid Device Chooserで1.6で実験→問題なし 6. Android Device Chooserで3.2で実験→画面は出たけどボタン押すとアプリ停止 ターゲットを変える場合に必要なことを教えてください。
各バージョンで何が変わっているかと各バージョンで何が非推奨に なって、その代わりに何を使えばよいかという情報。 そして自分がそれを使っていれば対応する事。あとは互換性の問題 (画面の見え方や動きの違いなど)が出たときの対処法を調べる事。 まぁエラーなり例外なりが出るならそれを調べるのがまず先だと思うがな。
EditTextの入力ダイアログをレイアウトに干渉させないようにする(既存レイアウトの上に表示する?)ことは可能でしょうか。 具体的には、 RelativeLayoutを用いて、android:layout_alignParentBottom="true" のように設定した場合に 入力ダイアログの分だけ上に上がってしまう現象や、スクロールビューを用いたときに表示域がかわるような現象を押さえたいのです。
>>121 エラーの内容見れ
>>123 ManifestファイルのActivityのWindowSoftInputModeをadjustPanかどれかにする
画面の縦横が切り替わるときに、くるんっていうアニメーションをつけるにはどうすればよいですか?
初心者です。GPSを使って移動した時間だけを計りたいんですけど、 1:onLocationChangedで最初の呼び出しの時の時間を取っておく 2:次の読み出しが来るまでのアイドルタイムを取って積算しておく 3:現在の時間 3から1と2を引いて導こうと思ったんですけど、2のアイドルタイムが 3-1の結果と同じ値になってしまいで0秒からカウントがすすまない・・・ こういう場合は、別にハンドラなりで時間をカウントした方がいいのでしょうか。
Androidのwebkitは非同期通信時にコンテンツが置かれているサイト以外にもアクセスできる
みたいなんですが、これの技術情報を書いてある場所知りませんか?
これ↓chromeだとエラーですがandroidエミュだとsuccessになりました。
$.ajax({
type: "GET",
url: "
http://www.yahoo.co.jp ",
success: function(msg) {
alert("success yahoo!");
},
error:function(XMLHttpRequest, textStatus, errorThrown){
alert('error!');
}
});
ライフサイクルではまってるので質問です。 アプリ起動後に電源ボタンを押した時のシーケンスなのだけど、サンプルと新規プロジェクトで動作が違いすぎて困ってる。 サンプルのシーケンスが正解ぽいのだけど、なんでこういう風になってるのかわからないので、分かる方教えてください。 ギャラタブで動作確認してます。 サンプル(snake)(android-7)では以下のような流れで、 ・電源ボタン押下 onSaveInstanceState onPause ・電源ボタン再押下→ロック画面解除 とくになし 新規プロジェクト(android-7)では以下のような流れ。 ・電源ボタン押下 onSaveInstanceState onPause onDestroy onCreate onResume onPause ・電源ボタン再押下→ロック画面解除 onResume onSaveInstanceState onPause onDestroy onCreate ↓同じ流れが後2回連続で続く・・・
130 :
129 :2011/09/09(金) 08:08:58.98
あれから、少しだけ原因が分かったので報告 画面向き設定の違いが原因で screenOrientation="portrait" これだと、サンプルの動作 screenOrientation="landscape" これだと、新規プロジェクトの怪しいシーケンス 記入無しでも同じ なぜ、横画面固定で発生するのかは不明。 横画面固定じゃないと困るなぁ・・・。
131 :
129 :2011/09/09(金) 08:16:43.03
解決しました。 android:configChanges="orientation" これを設定して端末回転時の再構築を抑制しないとダメだったのですね。 ていうか、常に回転時の再構築が発生するとは思っても見なかった・・・。 なんか、自己解決で申し訳ございません。
場所はここでいいかな? Android実機上でgcc動かしたいんだけど、方法わかるひといない?
ロック画面は縦向きだから強制的に回るんだろうね
>>128 "Access-Control-Allow-Origin"でググれ
端末は縦になっている状態がDefaultだから、 横になった状態を再現する為に作り出す必要があるのでは? 試してみるつもりは更々無いが、IS01等も同様に2回走ってるのかもね。
>>136 やってみれば?
リンク先は単純にやり方を間違ってるんじゃね?
って思うけど自分はやる必要性を感じないし
アプリを起動して、 ・ホームボタンを押してアプリをサスペンド。 ↓ ・「設定」から文字フォントを切り替え。 ↓ ・アプリをレジューム。 としようとすると、ActivityのonResume()を通る前にアプリが終了してしまいます。 onDestroy()は通っており、エラーのアラートなども表示されていません。 数種類のフォントを試してみましたが、変更前・変更後がいずれであっても同じようにアプリが終了します。 変更前がフォントAだったのをフォントBにして、またAに戻した後でレジュームしてもアプリが終了します。 フォントAの状態から再度フォントAを選択して確定した場合も、アプリが終了します。 「このフォントで設定しますか?」の確認ダイアログでキャンセルを選択してフォントを変更しなければ、 アプリは問題なく再開されます。 原因・理由や解決方法のわかる方はいらっしゃいますか?
仕様じゃないの 細かいことは気にするな
>>138 onPause通ってるんだったら起動し直したときに状態を復元すればいい話じゃないか
UIが更新された時に呼び出されるメソッドってありますか?
stringは言語で勝手に切り替わってくれますが 画像を言語によって切り替える方法はあるのでしょうか?
チュートリアルの Hello Localization に載ってるけど使ったことない
145 :
138 :2011/09/09(金) 14:39:58.98
回答ありがとうございます。
>>140 のご指摘の通りandroid:configChangesにパラメータを設定する方法でやろうとしたのですが、
フォントの変更に対応するのって何になるでしょう?
「fontScale」とやらはフォントサイズの変更で、フォントそのものの変更には対応していないようですし・・・。
それが存在しないようなら、
>>141 の方法を検討したいと思います。
1度目の実行はちゃんと動くけど2回、3回とアイコンで実行すると不思議とエラーが出てしまいます。 配列もイメージも結構使ってるので、どうやらメモリが足らないらしいんですが 終了時に完全にそれらを開放しきる方法ありますか? あと標準のエミュは起動時メモリ何MBの設定になってますか?
147 :
143 :2011/09/09(金) 15:11:36.73
自己解決しますた drawableも国際化できるのですね
150 :
146 :2011/09/09(金) 15:30:03.98
△!エラー (プログラム名)が予期せず停止しました。やり直してください。 と出ます。 やり直しとまた一回目に戻り実行できます。
まさかのエラー内容だ(笑)
152 :
146 :2011/09/09(金) 15:35:24.88
ログの方に出てました OutofMemoryError bitmap size exceeds VM bugget しかし今は配列を小さくすることで一時的に収まってますが。
猫の方のエラーを・・
ひとつひとつヌルポするしかないよ
>>145 アクティビテイが一旦終了されても正しく動作するようにするべき
すみませんお願いします。 CheckedTextViewのチェックマークを実行時にプログラムから消す方法は無いでしょうか? removeViewとかそれらしいAPIを触ってるのですがうまくいきません。 よろしくお願いします。
あと、フォント変更は標準機能じゃなくてメーカーカスタマイズな だから回避出来る方法があるかどうかすら不明
2chMateでSDカードとかにあるフォントファイルを使って閲覧できるけどどうやって実装してるんだろう
>>158 それはTypeFace指定するだけだろ
上で言ってるのは端末全体で使用されるフォントを変える方法
AndroidのSQLiteで正規表現によるLike検索等を行うことは可能でしょうか。 多言語だと拡張機能として使う方法があるようですが、やり方やパフォーマンスがわからず困っております。
>>134 亀ですまん。めっちゃ助かった。
ありがと!
string.xmlに書いたダブルクォーテーションが表示できない。。。 &quot;じゃだめなの?
\"
>>166 無理だし可能になるとも思えん
加圧式、静電容量式に続く第三世代のタッチパネルでも開発するんだな
NexusOneが疑似マルチタッチなだけでは?
>>167 ご回答頂き、ありがとうございます。
これだと、ピンチインピンチアウト
くらいしかできませんよね。残念です・・・
>>167 ,169
機種依存の問題じゃねーかよ
適当なこと書いてんじゃねーよ
>>171 静電容量式のタッチパネルで複数タッチされている場合
どこがタッチされているかを確実に判別するのは物理的に不可能
>>171 ハードウェアの精度やドライバーの出来などで
どこまでうまく判断してくれるかは変わるけど、完全やるのは無理
カメラアプリ作ってて、IS05だとちゃんと動くけど、 IS11CAだと保存がうまくいきません。 カメラプレビューから撮影して保存しようとすると、 画像が乱れて止まってしまいます。 逆引きハンドブックなんかにのってるサンプルでも 同様です。 こんな現象で考えられる修正点は、画面サイズ?や 保存の仕方の問題?でしょうか。機種によって 気をつけるところとかあるんでしょうか・・・。
マルチタッチはAction_DownとACTION_POINTER_DOWNでPointerIDを保存して、そのIDで処理すればとりあえず問題ないと思うんだけども。
>>175 単に二点をタッチするというだけなら
特別な処理をしなくても元々正しく動作します。
>>166 で問題になっているのは
二点がタッチされたままの状態でスライドされると
どちらがスライドされたか判別できないということです。
入門書の通りにコード打ち込んでるはずなんだけどアプリケーションが起動しない。 もしくはある動作を行うとエラーになる。 こんな場合どうすればいいんですか? コードのどこかが間違ってるのは分かってるけどそれがどこかわからない・・・
>>177 eclipseのddmsのlogcatって全く見てないのか?
>>174 自己レス。setPreviewSize がダメだったようで、
指定しなかったらあっさり動いた。機種依存とかも
多そうだし難しい。
>>177 入門書とかのサンプルコードをダウンロードして
動かすと起動することもあるから、それらと
見比べると早いね。
>>176 下の方の forループの中に
int id = ev.getPointerId(i)ってあるじゃない。その下に
int index = event.findPointerIndex(id) を追加して
getX(i)、getY(i)、getPressure(i) の i の代わりに index を入れてみてくれ。
>>178 その名前初めて聞きました。
ヒントありがとうございました。
>>179 やってみます、ありがとうございました。
>>180 アイディアを出して頂き、ありがとうございます。
それをやってみましたが、やはり判別できませんでした。
スライドさせる必要がないアプリを考えようと思います。
2点タッチしている場合、ハードウェア上で (x1,y1)(x2,y2)のペアでタッチ位置を認識しているのではなく x座標はx1とx2、y座標はy1とy2がタッチされてるとしか分からない ここから以前の位置や、圧の差なんかの情報からどれがペアかを求めるんだけど 上のやつみたいにx1=x2の状態になると、どっちとペアだったかが判断できなくなる
>>184 わざわざテストアプリまで作って頂き、
ありがとうございます。
ただ、こちらにAndroidバージョン2.2以上の
実行環境がなく、内容を確認できません。
わざわざ作って頂いたのに、大変申し訳ありません・・・
バージョン2.2以上であれば、マルチタッチでのスライドが
可能(少なくとも可能性あり)だとわかっただけでも、
非常にありがたいです。ありがとうございました。
>>186 度々ありがとうございます。
SO-01B(Xperia)で試しましたが、
やはりスライドさせると座標が狂いました。
そちらの環境で正常に動作するということは
端末の問題なのでしょうね。
記事の最後にも書いてあったけど、GalaxySとかだとうまくいく。無理な奴は無理。
BaseAdapterを継承したAdapterをListViewにセットし、 OnItemClickListenerをセットしたのですが、なぜかランダムに反応しません。 全てのリスト項目が反応しないのならわかるのですが、 完全にランダムで、法則性もないようです。 何か原因解明のヒントはないでしょうか?
ランダムの誤用
ランダムの誤用
御用だ!
他のapkのクラスやオブジェクトを受け取る方法 ってありますか?
195 :
194 :2011/09/11(日) 15:16:01.64
あ、intentのgetSerializableExtra以外の方法でありましたら 教えて下さい。これはプリミティブなクラス以外を持っていると ダメで使い物にならんです。
このスレでまともな回答期待しちゃいかんゼヨフヒョヒョw
クラスローダの話かな?
なんでViewをSurfaceViewに統一しないんですか?
199 :
デフォルトの名無しさん :2011/09/11(日) 16:46:52.94
アンドロイドに搭載されたセンサーからデータをとるとき、 データ取得間隔は、 DELAY_FASTEST, DELAY_GAME, DELAY_UI, DELAY_NOMAL の4種類しか指定できないのですか?
使い方知らない奴に使い物にならないって言われるなんて フレームワーク作る側も大変だな
201 :
194 :2011/09/11(日) 16:59:49.45
>>197 それでいけそうですね!
ありがとうございます
スクラッチパッドはどこにあるのでしょうか? 全然わかりません
implementsすれば無条件で使えると思ってる無能がいるスレはここですか?
ドコモアプリをアンドロイドに移植しようと思っているのですが スキラッチパッドの場所が全然わかりません 教えてください おながいしまつ
209 :
デフォルトの名無しさん :2011/09/11(日) 21:55:54.98
Android XML で values をファイルを分けてもidが同じなら競合します。 たとえばmain画面用のstring、sub画面のstringで分けたい場合、どのようにするのが一般的なのでしょうか。 idをmain_string1, sub_string1 という風にしてひとつの strings.xml に書く? フォルダ分けする?
210 :
194 :2011/09/11(日) 22:01:36.55
>>207 ありがとうございます。
そうだ思い出した。InputStreamを使っててそのページも
見てました。完全に忘れてました。
211 :
デフォルトの名無しさん :2011/09/11(日) 22:16:27.06
select * from sample where title like '%あ%' or title like '%i%'; これ文法なんか間違ってるの?
大きなBitmapを回転させるとき、 matrix = new Matrix(); matrix.postRotate(90.0f); bitmap2 = Bitmap.createBitmap( bitmap1, 0, 0, width, height, matrix, true); の様にすると元のビットマップの容量の二倍のメモリが必要になるので、メモリ不足で落ちてしまいます。 元のビットマップ一枚分のメモリで回転したいのですが、何か方法はないでしょうか?
分割してくっつけるとか
view1からsetContentView(view2)してview2を表示させた後、 再度setContentView(view1)でview1に戻ると、view1のonDraw()が停止してるというか、 再描画されないのですが、なぜでしょうか。
ListViewを逆順に表示したくて、 setStackFromBottom(true)を使ったんですが逆順に表示されないです。 なぜでしょうか?
>>216 よくわからんけど3件くらいで表示してみると納得できる気がする
>>217-218 つまり逆順に表示するためのメソッドじゃないってことですか・・・
探してみます。
逆順ってAdapterでやるもんじゃないの?
ドコモアプリをアンドロイドに移植しようと思っているのですが スカラッチパッドの使い方が全然わかりません 誰かわかるかたいなでせうか? 切実です
そんなのないから適当に保存しろよ
馬鹿には無理
>>199 The value must be one of SENSOR_DELAY_NORMAL, SENSOR_DELAY_UI, SENSOR_DELAY_GAME, or SENSOR_DELAY_FASTEST or, the desired delay between events in microsecond.
ButtonSaviorのように、他のactivityにフォーカスが有るときでも表示できるuiは、どのように実装しているのですか?
すみませんが教えてください。 設定アプリとかで使われている○に>が入ったマークはどうやって使うのでしょうか? Graphical LayoutのパレットのForm WidgetsのCheckBoxと似たようなものかと 思って探したのですが見当たりません。よろしくお願いします。
@android:drawable/expander_ic_maximizedか? 使うときは自分のリソースにコピーしろよ
子ビューでonclickを設定したら、 親ビューのontouchが取れなくなりました 両方取得したいです お願いします
232 :
77 :2011/09/13(火) 02:25:14.74
コードが呼ばれているのに動かないなら そのコードはその動作をしないのではなかろうか
234 :
デフォルトの名無しさん :2011/09/13(火) 04:08:56.93
>>234 bmp 見れないので、txt で上げ直して欲しい。
で、
>>232 のコードは両方ともリスナーの中でリスナーを設定してるけど、リスナーが何なのか分かってる?
236 :
デフォルトの名無しさん :2011/09/13(火) 05:14:58.59
>>231 ありがとうございます
子ビューのontouchで処理できるようにコードを見直してみます
>>236 うーん、根本的に分かってなさそうだな…。
リスナーってのは、ユーザーの操作などのある事象が起きた時に呼ばれるやつで、普通はあらかじめ addなんとかListener() しておくもの。
で、
>>232 では Sensor06 クラスそのものが SensorEventListener (センサーに関する事象のリスナー) を兼ねていて、
方向が変わった時に onSensorChanged() が呼ばれてるんだけど、その中でさらに別のリスナーを add してるから、
その時は何も起こらずに、その後リスナーの対象となる事象が起きた時にスクロールする筈だけど、
GlobalLayoutListener の対象となる事象が起きないからスクロールしないってこと。
あと、これだと onSensorChanged() で毎回 add してるから、いざ対象となる事象が起きたら、リスナーがたくさん呼ばれるような…。
で、そもそも何をやりたいんだっけ?
239 :
デフォルトの名無しさん :2011/09/13(火) 11:59:11.22
>>238 丁寧に解説していただきありがとうございます!
なかなか難しい概念ですね・・・つまりリスナーの中でリスナーを定義するのは良くないということなのでしょうか。
やりたいことは、画面横方向に大きいパノラマ画像(360°風景を見渡せる写真)を表示して、
北を向いたら画像も北を向くようにスライドさせ・・・ということを最終的に目指しています。
今ずっと何に躓いているのかというと、要するにandroidのHorizontalScrollViewクラスのscrollToというメソッドを使用したいだけなのですが、
それが上手くいかず悩んでいます。
win7のeclipseで開発してるんだけど エミュが重すぎてまともに検証できないので 新しいPCでも買おうかと思うんだけど どんなスペックの買えばいいのかな? 実機はn-04cがあるのでそっちで検証してますが dataフォルダが参照不可で実に不便なので…
>>240 自作pcスレとかで「いっちゃん良い奴を頼む」って聞けばおk
>>240 SO-01Bとかの白ROM買ってroot取れば?
dataフォルダの内容をSDに吐き出すような機能を入れておけば?
>>239 >つまりリスナーの中でリスナーを定義するのは良くない
とは限らないけど、この場合(ってか、普通)は良くないことが多いね。
OnGlobalLayoutListener ってのは ScrollView や ImageView などの UI 部品のレイアウト(サイズや位置)が変更されたときに呼ばれるもの。
参考にしたソースの「向き」ってのは、方角のことじゃなくて、デバイスを縦に持つか横に持つかという意味の「向き」。
>>239 で、多分こんな感じかな。200 のところは画像サイズに合わせて変更して。
あと、このメソッドは親クラスのメソッドをオーバーライドしてないから、@Override は不要。
public void onSensorChanged(SensorEvent event) {
if (event.sensor.getType() == Sensor.TYPE_ORIENTATION) {
int x = (int) (event.values[0] * 200 / 360);
HorizontalScrollView hsv = (HorizontalScrollView) findViewById(R.id.ScrollView);
hsv.scrollTo(x, 0);
}
}
246 :
デフォルトの名無しさん :2011/09/13(火) 15:41:51.82
247 :
デフォルトの名無しさん :2011/09/13(火) 16:16:28.52
質問です。
EclipseでAndroidの開発環境を構築中なのですが、上手くいきません。
参考サイト
http://andronavi.com/2010/03/11140 「Hello World」を表示させようとすると下記のエラーがコンソールに出ます。
#
# A fatal error has been detected by the Java Runtime Environment:
#
# Internal Error (classFileParser.cpp:3494), pid=1264, tid=1848
# Error: ShouldNotReachHere()
#
# JRE version: 6.0_27-b07
# Java VM: Java HotSpot(TM) Client VM (20.2-b06 mixed mode windows-x86 )
# An error report file with more information is saved as:
# C:\Documents and Settings\fujimaki\workspace\HelloAndroid\hs_err_pid1264.log
#
# If you would like to submit a bug report, please visit:
#
http://java.sun.com/webapps/bugreport/crash.jsp #
環境
Xp pro32bit
CPU セレロン3,06G
メモリ2G(仮想メモリ3G)
エミュレーターは SDK&AVDマネージャーからは起動します。
どうすればいいでしょうか?
Run Configuration を確認するとか
249 :
デフォルトの名無しさん :2011/09/13(火) 16:39:57.46
どうゆうわけか出来ました。 2日間悩んでたので解決できた理由もわかりません。 ありがとうございましたOTZ
実行まではコンパイルエラーとかないの?
エミュレータでは起動するのに実機だと起動しない ギャラリーアプリでSDは利用してません 実機はacroです
androidクライアントからDBサーバーにアクセスして同期を取るようなアプリを考えてます。 ググったらcodezineにJDBC使ってMySQLにアクセスするサンプルあったけど、最新のJDBCドライバじゃ動かんみたいな記述(古いのだと警告でまくり)がありました。 結局のところweb api自作してhttpでアクセスするのが正解?何かお手軽にアクセスできる方法はないでしょうか?
>>253 JDBC は安定した接続を前提としてると思うけど、Android は主にモバイルデバイス用の OS なので、安定した接続は保証できなくて、JDBC を使うのはお勧めできない、ってことじゃないかと。
>結局のところweb api自作してhttpでアクセスするのが正解?
だと思います。
ねんがんのじっきをてにいれたぞ けどデバッグで一覧に読み込まないんだけどどういうこと?
>>256 日本語がイマイチ分からないけど、USBデバッグ有効になってないとか、ドライバインストールしてないとか?
>>258 意味が分からんつーのは分かってやろう思って読んでないからだよ
相手の気持ちになって読めば分かるはずだ
まあ俺は分からんかったが
アプリでよくあるヘルプとか詳細とか情報とか○○についてボタンを押したときに出るウィンドウってなんですか? splashとはちょっと違うし、ダイアログもちょっと違う気がします。 これは自作してるんですか
一応両方有効にしたはずなんですがね ドライバインストールしてパソコン上ではミクロSD内が開けたからインストールは出来てるはず USBデバッグもスマホ上でドロイド君が出てたから大丈夫なはず もう判らんから寝ます
ハマってしまいました どなたか教えてください アプリリストから呼び出したアプリのActivity内で finish()を呼び出しても 戻った先でまたすぐにアプリリストが呼び出されてしまいます これはどういった場合に起こりえるでしょうか? よろしくお願いします
>>260 AlertDialog に setTitle しただけの多いかも
>>264 説明足らずですみません
暗黙のintentを投げたときに出るアプリのリストです
>>254 なるほど。わかりました。ありがとうございます。
PHPかservletでなんとかしてみます。
GoogleMapでItemizedOverlayで描写していくと地図が表示されない(灰色)状態になるんだけど 乗せる物が多いと地図表示が消えるということはあるんでしょうか?
>>265 onActivityResultがそういう実装になっているんじゃない?
>>261 PCからUSBメモリと認識できてる状態はダメだったような
端末側でUSBの設定を別のに変更
>>268 むしろonResumeでやってるんじゃ…
質問のレベルが低すぎて呆れるわ
>>268 ありがとうございます
intent元が自分のアプリではないのでどうしようもないですねorz
仕様だと割り切って対応します
>>261 機種によっては普通のUSBドライバにデバッグ機能のドライバは
含まれてないよ
機種名+adbドライバでぐぐるんだ
TF101はgoogleのUSBドライバでいけたが、XOOMはモトローラのドライバ落とさなきゃダメだったな
mediaplayerに音楽をぶちこんでボタンを押すとonStartするプログラム組んだのですが、 連打しすぎると音が再生されなくなります 再起動したり画面切り替えればなおるのですが、 リソースの解放みたいな処理しないとだめなんですかね? 使ってる実機はarcです
>>276 どこのメーカが作ったかもわからないような怪しい中華Padだと、ドライバの入手困難とかあるのかな?
ADBドライバなんて全機種共通だよ。 各メーカーから配布されてるのはINFファイルに自メーカー用のVendorID/DeviceIDを追加しているだけ。 中華PADなんて、逆によそのVendorID/DeviceIDを名乗ってgoogleの標準ドライバでインストールできるようにしてたりする。
質問です 大量のViewをループで追加する処理を実装していて それをバックグラウンドで処理したいと考えています。 そこで以下のように実装したのですが 1:画面表示(setContentView) 2:プログレスダイアログを表示(progressDialog.show) 3:バックグラウンドで処理を行う(AsyncTask内でlayout.addview(hogehoge)) 4:プログレスダイアログを閉じる(progressDialog.dismiss) 見た目には 1:真っ暗な画面が表示 2:たぶんバックグラウンドで処理が行われている 3:画面表示 となってしまいます(例外等は出ていませんの) UIを大量に処理する場合はダイアログをうまく表示できないのでしょうか? もし良いやり方があれば教えてください。
>>280 AsyncTask内で2〜4まで処理できますよ。
AsyncTaskには
バックグラウンド処理する直前にする処理、
バックグラウンド処理、
バックグラウンド処理が終わった時にする処理を設定できます。
>>281 回答ありがとうございます、
実際にそのように実装してみましたが3が完了するまで
画面が表示されません。
FrameLayout (ディスプレイ全面) 追加1ListView(ディスプレイ全面) 追加2LinearLayout(ディスプレイ全面) こういうレイアウトにした時に、LinearLayoutでタッチイベントを取得したいのに、ListViewのクリックイベントを取得してしまいます。 階層的にはLinearLayoutの方が手前、前面に来ているので、ListViewのイベントは拾わないと思ったのですが・・・。 何か対策方法はないでしょうか?
>>281 setContentViewの直後ぐらい、少なくともAsyncTaskを実行する前の行に、
LinearLayout l = new LinearLayout(this);
l.setBackgroundColor(Color.paraseColor("#0000ff");
setContentView(l);
としてみて下さい。
setContentView(l, new ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT,ViewGroup.LayoutParams.FILL_PARENT)); でした。失礼しました。
>>283 RelativeLayoutでやったらどう
>>286 追加2のLinearLayoutは透過色なのですが、
FrameLayoutをRelativeLayoutに変えてみたところ、
反応しなくなる代わりに追加1のListViewが見えなくなってしまいます。
>>287 配置を追加1ListViewの下にすれば。
belowでできるよ
289 :
281 :2011/09/14(水) 16:43:42.38
>>284 黒い画面→一瞬ダイアログ表示→青い画面
になりました。
>>289 恐らく一番最初にsetContentView(R.layout....)などしていると思うのですが、
可能であればそれを取り外して、
>>284 、
AsyncTaskの処理、
としてみて下さい。
それでも青い画面が先に表示されないようであれば、AsyncTask内の処理を見直した方がいいかもしれません。
例えばonPreExecuteに書いている処理を、
>>284 の後に書いてみる、つまり
>>284 、
onPreExecuteに書いてあった処理
AsyncTask
としてみたり。
291 :
281 :2011/09/14(水) 17:22:29.94
>>290 申し訳ありません、やはりうまくいきません。
android端末からビームが出るアプリを作りたいんですけど エネルギーは環境に優しい太陽光から持ってきてビームはカメラ部から出る方向で 音声認識対応で「〜ビーム!」という掛け声に反応してビームが出る感じです サンプルコードなど教えてください
>>291 doInBackgroundの中でview追加してるの?イベントループ以外でUI触っちゃだめよ
progress出力メソッドでやってみたら?
アプリの表示優先度をロック画面より上にあげたい場合は、 どういった事をすればよい?
>>294 getResouce().getLockManager().setOrder(LockManager.LastOrder)
ちなみに嘘。もっと大胆なこと(OSコード書き換えレベル)しないと
無理じゃね?・・・LastOrderって発想に我ながらちょっと吹いた。
296 :
294 :2011/09/14(水) 21:12:42.74
298 :
294 :2011/09/14(水) 21:14:51.99
>>295 実際にやってるアプリがあるし、そこまで大胆なことしてるようにも見えないので
何かしらあるんじゃないかと。
301 :
デフォルトの名無しさん :2011/09/14(水) 21:49:40.72
eclipseスレから流されてきました ボタンの中のテキストが全角だと右寄せになるんですがどうしたらなおりますか?
>>298 みんなの突っ込みが身に堪えたので少しググったーよ・・・。
KeyguardManagerとPowerManager使えば行けるんじゃ
ないでしょうか・・・。
って、そういや昔試した記憶あるな、これ・・・。
>>298 大胆なことも何もFLAG_SHOW_WHEN_LOCKED辺りじゃないの?
一時的にロックを解除して表示するって手もあるけどな
Keyguard〜とか、deprecatedになってたのね・・・orz
後はSysytemOverlayとかだね
306 :
デフォルトの名無しさん :2011/09/14(水) 23:03:00.98
レイアウトを横に固定したいのですが Leniar(Scroll(Table))とレイアウトをいれこにしてまして スクロールを挟むことによって画面の向きが固定できなくなってしまいます。 Table単体なら固定できましたがスクロールしたいので・・・。 どなたか知恵をお貸しください。
Linearですね、スペルミス申し訳ないです。
>>307 横固定ってのがよく分からんけど、
HorizontalScrollViewとか?
309 :
294 :2011/09/14(水) 23:43:35.40
>>303 FLAG_SHOW_WHEN_LOCKED これでいけました。
フラグの動作一覧とかあるのかな。
>>304
>>308 説明下手でごめんなさい。
android:screenOrientation="landscape"
で横画面固定にしたいってことです。
ScrollViewはさむと画面の向きが固定できなくなったから、何か解決策はないものかと。
>>310 ScrollView関係ないと思うけど…
画像ファイルはいくら大きくてもかまわないのですか?
313 :
デフォルトの名無しさん :2011/09/15(木) 01:39:54.29
android SDKをDLしたのですが、java se not foundと出てインストールができません JDKは入ってます ぐぐったところjava se not foundの画面から一度backで戻ってnext押すとインストールできると書いてあったのですが、その操作をしてもjava se not foundが出てきて解決しません どうすればインストールできるのでしょうか?
ちょっと前のレスを見れば分かるけど、大きすぎる画像だとメモリ不足で落ちる
>>312 機種によって限界は異なるが
いずれOutOfMemoryの例外が発生するよ
質問です 参考書を元にassetsからDBコピーの工程を打ち込んでいたのですが、 copyDatabaseFromAssetsという部分が未定義ということで引っ掛かってしまいました。 copyDatabaseFromAssets自体を調べてみても検索結果が1件しかヒットせず、情報の少なさに困惑してます。 どなたかご存知でしたら教えて頂けないでしょうか
>>316 参考書は何て本? その本に書いてないの?
最後の s を削って検索してみた?
318 :
316 :2011/09/15(木) 06:17:14.38
Android UIデザイン&データベースプログラミングです >最後の s を削って検索してみた? ヒント有難うございます。調べてみます
TableRowは横幅の自動調整は出来るけど、縦幅の自動調整は効かないのだろうか
>>313 バグだから、一回backしてからnext押せば見つけてくれる
321 :
320 :2011/09/15(木) 08:05:53.56
わりぃ一行目しか読んでなかった
>>318 そのメソッドも自分で作るんじゃないの?
eclipseでLogCatが表示されなくなる問題で、adbを再起動させれば直るのはわかったのですが、 LogCatが表示されなくなる頻度が以前は数時間はかかったのが、今は数分程度で表示されなくなるので logを確認したい場合、そのたびadbを再起動させなければならず、不便で仕方がありません。 そもそもLogCatはが表示されなくなる原因は何があって、何かをクリーンすればLogCatがちゃんと表示されるようになる。 といった対処方法はないでしょうか?
HTTP通信とソケット通信ってどう使い分ければ良いの?趣味?
利用するプロトコルによるんじゃね
>>323 原因はしらんけど自分で言ってるとおりログクリアすれば表示されるようになるよ
クリアするボタンを押してから一旦ログじゃないタブに切り替える必要があるけど
327 :
325 :2011/09/15(木) 11:24:26.78
プロトコルは何でも良い場合はどう選べば良いでしょう? UDPは使わないつもりですがhttpとtcp/ipどっちが良いか? と言われるとどちらにしたら良いのかもわかってません。
サーバーとクライアント両方設計するなら通信データとかによるんじゃね JSON-RPCとかでも
>>328 いやそれhttpだから。
…てググったらソケットでもいけるのか。
何でも知ってる気になって勉強を怠るとダメだなあ…
>>327 httpはtcp/ipを使って構築されてる、ざっくり言えばWEBサーバー用のプロトコル。
httpにはgetやpostなどのリソースアクセスメソッド、ステータスコードによるサーバー状態の通知、リダイレクトなんかの機能が備わってる。
あとパス(URL)とかクエリーパラメータの概念もある。
tcpソケットにはそんなもんなくて、ただホストとポートに対してストリーム開いて単純に読み書きするだけ。
だからhttpの機能が必要ないんならtcpでいいし、必要ならhttpにしろというのが答え。
手取り足取り御苦労様。
どうせ全部socket上だし新しいプロトコル作ればいいんだよ!
ボタンを押すと音が流れるアプリを作ったのですが、 アプリを起動して携帯本体の音量を下げるボタンを押しても着信音量しかさがりません。 ただ音が流れているときにボタンを押すとメディア音量を調節できます。 音が流れてい ないときにメディア音量を下げれるようにするにはどうしたらいいでしょうか
334 :
325 :2011/09/15(木) 12:56:53.72
>>330 なるほど、
ありがとうございます。
おかげで調査方針が決まりました
>>333 setVolumeControlStream
apiDemosを参照しながら通知バーの実行中に項目を追加する機能を作成しました。 (Activityを落としても残り続けるほう) それで通知バーに表示されてる項目をタッチした際に Activityを呼び出したいのですが、どのようにすれば可能でしょうか?
>>336 getLatestEventInfoのcontentIntent
すみません、httpかsocketか迷うような状況って、例えばどういうときでしょうか?
ペンを使いますか漢字を使いますかと聞いてるようなもんだ。
>>338 うまくいきました
PendingIntentでgetServiceと間違って使ってました
ぼくがかんがえたさいきょうのプロトコル
>>335 これです!
ありがとうございます助かりました
ぼくがかんがえたさいきょうのいいわけ(キリ)
インターネットしてますってのは電話線してますと言うようなもの
KDDI研がN2ていうTTS出したがあれどんな感じ? TTSエンジンってマーケットからしかインストールできないからVM上のx86-Androidで開発できんから手が出せんのだが。
そもそもnativeコードどっさりだからマーケットがどうとか以前。
携帯の向きを変えた際の、良い動画状態保持の方法を教えてくださいませ android:configChangesは試したのですが、メディアコントローラーの仕様なのか 向きを変えた時に変える前の表示サイズのコントローラーが表示されてしまうのですよね・・・ 最初以外はしっかり画面サイズに合わせた物が表示されるから良いんですが、やはり向き変更後の最初の1回ががが
WebView で JavaScript から呼び出す function の引数に付いて質問させて下さい。 addJavascriptInterface した際、 JavaScript から可変長の引数を渡す方法は無いのでしょうか? あと、JavaScript から配列を渡してみましたが、 Java 側では、null が渡って来ます。 よって現在は、カンマ区切りの文字列を作って、複数の引数を処理していますが、 何かスマートな方法をご教示頂けませんでしょうか? 宜しくお願いします。
画像の一部分を表示する方法ってありますか?
できればMIDP2.0のg.drawRegionみたいに、
(画像名,画像のx軸始点,画像のy軸始点,画像のx軸終点,画像のy軸終点,
アンドロイド画面におけるx軸,アンドロイド画面におけるy軸);
のような形が望ましいのですが。
>>55 では切り取るための始点と終点、二つを定義することができません。
画像のy軸始点(終点)*i、のような形で大きな画像から、いくつもの小さな画像を取り出したいんです。
宜しくお願いします。
Canvas.drawBitmap (Bitmap bitmap, Rect src, Rect dst, Paint paint)とか 根本的に読み込めてないなら知らない
357 :
355 :2011/09/16(金) 16:44:50.85
>>356 ありがとうございます!
いけそうです!
何度もこの式は見ていたのに、気がつけなかった自分が憎いです。
ちなみに
>>354 の人と自分は別人です。
描きこんだ後、リロードしたら文章の書き方が似すぎていて驚きました。
もしかして生き別れのお兄さんでしょうか?
読み込めないんだから無駄だと思うが
BaseAdapterを継承したオリジナルのAdapterをセットしたListViewが作ったのですが、 リスト内の項目を選択しても背景色が変わりません。 対策方法はないでしょうか?
>>359 そのレイアウトの中にボタン入れてない?
入ってるなら、ボタンのAndroid:
focusable,focusableInTouchMode
をfalseにすればどうにかなる
>>360 レスありがとうございます。
ボタンは入っていないのですが、LinearLayoutやTextViewが入っています。
ググってfocusableは全てfalseにしていたのですが、
focusableInTouchModeはしていませんでした。
追加してみたのですが、やはり選択しても背景色が変わりません。
>>361 BackColorに色をセットするとタッチ時のカーソルが表示されない、とかうちでもあったw
http://labs.techfirm.co.jp/android/cho/751 こちらのサイトの方法でリスト表示したものにコンテキストメニューを表示させ、
コンテキストメニューの選択肢からカスタムダイアログをonCreateDialogの方法で表示しようとしたところ、showDialogした直後にWindowManager$BadTokenException: Unable to add window 〜 is not valid; is your activity running?というエラーがでてしまいます
なにか解決策は無いでしょうか?
>>359 android:clickable=“false“
はどう?
>>364 でてるエラーが少し違います
null〜ではなくis not validで、アクティビティにボタンつけてonClickで直接showDialogするとonCreateDialogの中身は正常に動作します..
ListViewに行追加したとき、ニョキっていうアニメーションつけたいんだけど、参考になりそうなサンプルない?
俺はTwitterアプリみたいにListViewでグイッとやって更新するやつのやり方しりたい
自作アプリに標準ブラウザのインテントから send.putExtra(Browser.EXTRA_SHARE_FAVICON, favicon); send.putExtra(Browser.EXTRA_SHARE_SCREENSHOT, screenshot); を受信したいのですが、どういう感じでやればいいんでしょうか?
>>372 どっかのブログで見た気がする、女子部の人だったかな?
ViewAnimator系使うかTweenアニメだな。標準機能だからAndroidのリファレンスが一番詳しい。
376 :
デフォルトの名無しさん :2011/09/17(土) 01:30:58.69
sqliteを端末内に保存して使いたいと思っています。 データは2万件ほどで、 1. Zipで圧縮(1MBを超えるため)したsqliteファイルを端末内部に解凍&コピーするか 2. ヘルパークラスのonCreate内で2万件のcreateやinsert文を実行するか 上記2つの方法を試してみましたが、速度についてはそんなに変わりはしませんでした。 2. のやり方のほうが、コードが非常にシンプルです。 2万件のデータ、もしくはそれ以上の大量のデータの場合、 どちらのやり方が一般的なのでしょうか?
該当しそうなスレがなかったのでここで質問させてください。 アプリを作り終わって実機で試そうと思ったのですが どうしてもADBドライバのインストールが失敗してしまいます。 機種はN-06CでドライバはNECカシオのサイトから落としたものです。 繋いだ際にADB interfaceや大容量記憶デバイスやら MassStorageなど色々認識してしまうんですが、まずそこからしておかしいのかな。。 USBデバッグにもしていて原因が分かりません。 何かゴミが残ってしまったんでしょうか? 同じような症状になったことがある人いましたらご教示お願いします。
実機のUSBデバッグはONにしたか?
>>378 レスありがとうです。
USBデバッグはONにしてます。
端末側にはドロイドマークと三又のUSBマーク両方出てる状態です。
なぜかADBのドライバだけインストールできませんが出てきちゃう…
>>370 それはXXXActivity.thisじゃなくてadapter.thisとかなんじゃ?
ngCoreはクロスプラットフォームに関係ないだろと思ったらDeNAの宣伝会か。
押されたキーの統計をとりたいのですが、他のアプリに送られたキーイベントやタッチイベントをフックする方法ってありますか?
>>382 面白そうだから俺は申し込んだ。
リクルートエージェント主催なのは謎だw
>>384 面白そうなのは同意だがソーシャル系って宣伝して俺TUEEEEしたいだけだからなぁ。
例えばGREEのパクリ商法自慢とかわざわざ聞きに行かないだろ。
386 :
384 :2011/09/17(土) 12:26:51.06
え、これ商売っけ抜きで純粋な技術的な勉強会じゃね? 知らないけど
adMakerを使用している方に質問です 広告欄のサイズをfilにすると取得出来なかった場合にページを表示できません画面が目一杯表示され、70dpに設定すると端末によって微妙に欠けてしまいます みなさんはどのようなサイズ設定をされているのでしょうか?
>>387 では一行ずつlogを入れてどこで落ちているのか調べなさい
>>389 最後のcreateの部分で落ちてました
GalaxyS2の実機での話なんですが、 Runtime.getRuntime().availableProcessors() これの返す値が1になったり2になったり、プログラム実行中に頻繁に変動します。 どういうことかわかる方いますか? 普通プロセッサ数なんて変わらないと思うんですけど。
>>390 よし、次はBuilderと.createの間を一つずつ外して実行してどの項目がエラーの原因か調べるんだ
>>391 省電力のために、負荷が少ないときは片方のコアを止めてるんだろ
>>393 例外出てるんだからどこでエラーが出てるかは分かってるだろ
原因が分からないだけで
>>391 availableって書いてあるだろ。組み込みじゃ使ってないCPU止めるんだよ。
>>399 だからどう直せば動くか教えてやれって言ってんたよw
みなさんの解答とてもありがたく思います。 原因は不明ですがこのアラートダイアログだけでなくplease wait等を 表示するダイアログも他のアクティビティだとどちらも正常に 表示されますがなぜかこのlistActivityだと表示失敗することがわかりました。
>>381 念のため(Activity).thisと記述しましたが駄目でした...
>>400 いや原因は分かってないだろ
ただ一行毎にログ入れてエラー箇所絞るのは無駄って言ってるの
カメラアプリで、 撮影→保存(view合成)→プレビュー再開、 をすると、再開時にプレビューの画像だけがゆがんでしまいます。 撮影前はサイズバッチリなんですが・・・。 保存したデータはプレビューがゆがんでても正しくセットされています。 保存の前にstartPreview()するといい、みたいな 記事もありましたが効果なく・・・ カメラマスター助けて下さい。
>>403 だったら原因の特定の仕方を教えてやれよwww
>>404 カメラ周りは機種依存もあったり、面倒過ぎる
機種と再現できるコード貼れば誰かが教えてくれるかもね・・・
>>405 何も理解してないやつがあれこれ言って無駄なことやらせるよりは何もしない方がまだマシ
とりあえずフレームワークのソース見て、上記のエラーが出る条件調べるくらいかな
原因がListActivityにあるのか、ContextMenuにあるのかすぐには分からん
テストコード書いてみるか
えっ、このスレってエラーの発生箇所特定するのに、毎行ログしこむようなレベルの人が偉そうにしてるの?
>>408 人にデバッグさせるのに説明が楽だからじゃね?
基本だと思うんだけど違うのか
unix+vi+Cの時はその手使ってたな。core吐いたらgdbとか。
413 :
407 :2011/09/17(土) 21:06:32.28
ListActivity継承したクラスのonCreateで registerForContextMenu(getListView()); でコンテキストメニュー登録して onContextItemSelectedでshowDialogよんで onCreateDialogでダイアログ作って返すようにしたけど、普通に表示される
>>408 ここはandroid.util.Log&LogCat知らない、デバッガ使えない人でいっぱいです
Cでもgdb使うのはログ入れると挙動が変わっちゃう時かどうしてもステップ実行で追いたい時くらいだなぁ 何だかんだ言って伝統の原始的printfデバッグは有効よ。あとユニットテスト
>>415 んで、今回の場合もその方法は有効ですか?
もしかしておまえら、未だにviとかでAndroid開発してんのか?
>>417 正直、例外のスタックトレースで追い切れず、かつ不規則に落ちる時はここまで実行したってログを入れまくるのは結構やるな
デバッガだとしんどい上に挙動が変わるし
それはほんとにごく少数いるかも知れない。 ただ、”未だにvi”って意味なら、viは未だに現役です。
viってなに? 普通はエクリプスじゃないの?
枚行はともかくログ入れは基本だと思う。 この時点でこれの値はこれだったとか一々デバッガで調べるより全然楽。 今回に適してるかどうかは置いといて 早い段階からログデバッグは慣れといた方がいいと思う。
合言葉は〜?
>>424 むしろどこで落ちてるか分からない、スタックトレースから追えない時に、デバッガでポチポチ追う方が狂気だと思う
あたりつけてからでないとログ出力なんて現実的でないわけで・・・
>>427 むしろログをあちこちに仕掛けてあたりを付けてからデバッガじゃね?
あたりも付いてない段階からブレークポイント仕掛けまくるの?
>>427 そっか
おれはむしろ逆でそのあたりを絞るためにログを使う。
デバッガは絞りきったあとでトドメで使う方が多いなー
ん?
ログからあたりをつけるのは動作はおかしいけどエラーなんかは発生しなくってどこでおかしくなったかわからないときくらいで、エラー出てるときはスタックトレースからかな
最初っからメソッド呼び出しでログ吐いとけ!
434 :
383 :2011/09/17(土) 22:54:01.14
>>394 ですよね。統計とるのは諦めておきます。
>>431 例外で分かりやすく死んでくれてる時はスタックトレースだけど、
マルチスレッドのアプリだとスタックトレースには内部でヌルポでしたとしか分からんことも多いからなぁ。
あたりを付ける決め手になるのがログというケースは多い。
UIスレッドで超分かりやすく死んでくれるなら話は簡単なんだけどね。
逆にデバッガの出番は近年さっぱり減った。
436 :
デフォルトの名無しさん :2011/09/17(土) 23:55:46.48
熟練するとJUnitで簡単にテストできるシンプル・機能的なコード しか書かなくなるから、重たいデバッガやロガーの出番は減るのである
あるユーザーのGoogleマップスター付きの場所を取得することは出来ますか?
こんちは ちょっと質問させてください Native Heep の状態を取得するのに、libc_debug.so が必要なことは判ったんだけど これはどこから持ってこれますか? androidのソースをdebugオプションつけてビルドするしかないのでしょうか?
AndroidJavaには、パレットイメージはないんですか?
特定のプロセスを強制終了させる方法を教えてください。 android.os.Process.killProcess(int pid); を使えばできるとおもったのですが、うまくいきませんでした。pidの値が間違っているのかもしれません。 試してみたのは、ActivityManager.getRunningAppProcesses()から取得したpidと ActivityManager.getRunningTasks(100)から取得したidです。両方終了できてないようでした。 よろしくおねがいします。
>>440 普通のアプリからは、自分以外のプロセスをキル出来ません
tabHost内に複数のActivityをインテントから起動して持つアプリを開発する際に、 各Activityにメッセージ等を送り、処理させるにはどうすればよいのでしょうか。 一番の要望はtabHostのonTabChangedに合わせて、各tabで処理を行うことです。
画像ファイルを「アプリケーションの選択」から自作アプリに渡したいのですが、 「アプリケーションの選択」が出た時に自作アプリを選択可能にさせて、 パス・ファイル名を受け取るにはどのような処理にすればよいのでしょうか。
444 :
443 :2011/09/18(日) 16:58:31.29
「共有」の機能でもいいです・・・。
>>443 画像ファイルを受け取れるようなIntentFilterを指定
フィルターとは膜のことである
SHARPの2眼カメラ使ったARアプリ作りたいんですけど ARライブラリは何がいいんでしょうか? QCARじゃカメラの処理がネイティブなんでちょっと…
>>413 みなさんありがとうございます
どちらのダイアログにも一行一行にlogを仕掛けたところcreateの部分で落ちます
もしかしたら前回リンク貼ったサイトの方法でarrayadapterを使用したリストviewに実装しないとこのエラーは発生しないのかもしれません
またリストに表示するデータの取得に別スレッドで処理しているのもいけないのでしょうか?
エラー内容のactivity is running?とかいうのが引っ掛かりますが自分ではどうにも出来なかったです
SurfaceView に MediaPlayerでビデオを再生しています。 このとき、ビデオが左上に寄ってしまいます。 画面中央に表示するにはどうしたら良いでしょうか? よろしくお願いします。(xmlは使わずにすべてプログラムで処理しています)
>>449 カスタムビュー使ったけど問題無かったよ
>>451 09-18 16:54:21.633: ERROR/AndroidRuntime(481): Uncaught handler: thread main exiting due to uncaught exception
09-18 16:54:21.653: ERROR/AndroidRuntime(481): android.view.WindowManager$BadTokenException: Unable to add window -- token android.app.LocalActivityManager$LocalActivityRecord@44cce9d8 is not valid; is your activity running?
こんな感じのエラー吐きます
>>453 できました!!
ありがとうございます 本当に助かりました
455 :
デフォルトの名無しさん :2011/09/19(月) 09:17:57.37
TextView の操作をする時に findViewById(R.id.hogehoge) のように書きますが、 これは hogehoge の部分はプロジェクト中、Activity(layout?)が違ってもユニークに しないといけないということでしょうか?
456 :
デフォルトの名無しさん :2011/09/19(月) 09:50:57.23
mapviewを使ってる時 レイアウトを弄くると apiKeyのエレメントが消えてしまうのは何故?
おすすめの書籍ある?
>>442 各タブのactivityにコールバックメソッドかインスタンスを作っておき、それらをonCreate等のタイミングでTabActivityのメンバー変数か何かに一時的に保持しておいて、必要なときにそれらを呼び出すとか。
sdkのサンプルに入ってるソースコードの変数で たびたびmが頭文字に付いた変数が出てくるんですが mとは一体何のことでしょうか??
462 :
デフォルトの名無しさん :2011/09/19(月) 19:55:57.59
member C++で見られる慣習
member の略。ハンガリアン表記っていう過去の遺物だよ
thx
OnClick(View v)のメソッドですが 引数に参照型があるとイメージできないんですが、Viewはどこから受け取るのでしょうか?
>>463 Androidだと、変数名の付け方はどうやるのが良いでしょうか?
>>466 いわゆるふつうのJavaにあわせてるっぽいよ
nekoとかcatがおすすめ
プログラミング言語Neko
470 :
442 :2011/09/19(月) 22:35:49.78
>>460 broadcastintentのようなものがあるのかなと模索していましたが、
確かにその方法が簡単そうです。ありがとうございます!
Java6 の Javadoc 日本語ってダウンロードできなくなったの? ja のリンクや言語の選択すらできん
NativeActivity glueでFPS制御したいのですがどこを弄ればいいのでしょうか? ソースを見てもsleep等が見当たらずandroid_main内のループが何故60FPS?で回っているのか分かりません
Nativeヒープ上限ギリギリのBitmapを読み込みたいのですが、読み込みサイズの上限を知る方法はないでしょうか?
拡大縮小できるViewをSurfaceViewに変えたら、 wedthが2000超えるあたりで描画されなかったり、 無茶苦茶な描画になったりして挙動がおかしくなるんだが、 SurfaceViewのwidthに上限があるって記述は調べても見つからなかった。 Viewだと動作が遅いながらも普通に描画されるし、 これってメモリの問題で上限サイズは端末依存になるのかな。
>>474 SurfaceViewってのはデバイス依存だから
Full HD以上は使えないと思うのが普通
>>473 自前で常にNativeピープの使用量を計算しておき
上限から差し引けば良い
ActivityManagerService で・・・
479 :
デフォルトの名無しさん :2011/09/20(火) 13:00:23.75
メモリ使い切りギリギリの線狙うアプリなんてロクなもんじゃない 常識で考えろ
ふむ
メニュー操作中やゲーム中でも特定の時間になったら画面上部に丸印を表示(メニュー操作やゲームには影響をおよぼさない) ようなアプリを作ることって可能ですか?
はい
>>482 どう作ればいいかがわかる参考サイトはありませんか?
きっとあるでしょう
だからまずSDKのサンプルにあるApiDemosを入れて一通り動かせっつってるだろうが
簡単にやるんだったら、カスタマイズしたトーストを表示させればいい
>>479 画像ビュワーだったら、画素を間引きせずに、できるだけ高画質で表示したくない?
>>488 端末の解像度以上の画像を読み込んでも仕方ないよね?
ネイティブで処理するんだったら画像の一部を読み込むこともそんなむずかしくないし
>>489 ズームするとき低画質だと粗が目立つよ。マンガビューアだと文字が潰れて読めなくなる
画像の一部を読み出すapiは2.3以上だし、nativeで画像をデコードするのはlibjpegのコンパイルが必要で面倒だよ
491 :
354 :2011/09/20(火) 17:19:48.01
あきらめました
すいません ソフトキーボードが表示されると、 Viewの高さがキーボードの高さ分小さくなってしまいます キーボードをViewの前面に表示する方法は無いでしょうか?
>>481 何やりたいのかよく分からないから、Timerクラス調べとけ
と言っておく
495 :
354 :2011/09/20(火) 18:01:42.31
>>493 ありがとうございます。
実は、JSONも候補にあがったのですが、、、
結局、JSONは文字列なので、
JSONと、カンマ区切りにして文字列を渡す方法とを比較すると、
同じくらいのステップ数(エンコード、デコード...って程でもないですが)が発生する為、
現状は簡単な実装のカンマ区切りを選びました。
やはり、primitive type のみ扱えて、(配列を含む)オブジェクト渡しは、
サポートされていないようですので、あきらめます
ありがとうございました
SQLiteOpenHelperを継承したクラスのonCreateメソッドのexecSQLメソッドの中に "create table product(_id interger primary key autoincrement, productid text not null, name text not null, price integer default 0)" という文字列をを入れろと入門書に書いてありましたが、これの意味がわかりません。 この文字列はどのような意味なのでしょうか? 場合によっては変わるものなのでしょうか?
>>496 SQLを勉強しなさい
そして自分の使いたいテーブルに書き換えよう
>>490 「面倒だよ」じゃねーよww
やれよwww
>>490 ネイティブヒープを使ってるjava層でビットマップを読み込もうとしてるの?
492です マニフェストにandroid:windowSoftInputMode追加でできました 簡単すぎる質問でスルーされてたのね…
日本語リファないの?
editTextを2つ用意して片方に入力したら もう一方に計算結果を表示する。 といったことをやりたいんですが どう実現するのが普通なんでしょうか? TextWatcherでフラグを持つかOnClickListenerでViewを調べるか、とか考えたんですがすっきりいきません。。
SDKバージョン4のmanifestに、installLocationを書いて、 Android2.2以上の場合は、 SDカードにインストール出来るようにするにはどうすればいいでしょうか?
>>475 じゃあでかいレイアウトをスクロールビューの上に乗せるなら、
普通のビューでないとだめなのか。
もしくは仕様を見直せってことね。
ServiceとMediaPlayerで音楽再生のアプリ作ってるんだけど、 1時間ぐらい再生してると音楽再生が途中で止まっちゃう。 実行中のサービスみるとサービスは動いてるみたいで 再生が止まる原因がわからない。誰か何か知ってたら教えてほしい。 ちなみに機種はGalaxyS
>>499 Bitmapクラス自身がビットマップデータをネイティブヒープに持つから知りたくなるんでしょ
試しに展開してoom出たら倍率下げて展開なんてしたら遅くなるから空のビットマップを試しに作ってみるのが楽なのかな
>>507 システムにキルされてるんじゃない?
キルされても少ししたらサービス自体は再起動される
MediaPlayerでogmの曲データを読み込んでおいて、 1・start()で再生 2・曲を止めるときはprepare()だと重いという話を聞いたので今は曲の停止時はpause()してからseekTo(0) とやっています。 でも、 streakで1→2→1と実行(連続実行ではなく、ある程度時間を置いて実行)しても 2回目のstart()時に 一瞬曲の先頭が流れて(0.1〜0.3秒ほど)、それからまた曲の先頭から鳴りなおすんだけど似た症状の人いますか?
引き続き
>>448 よろしくお願いします。
<とりあえず判明している事>
・ライブ壁紙だと「holder.setFixedSize()」はエラーとなり使えない
・MediaPlayerで動画を再生する時はサーフェースタイプを
「holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);」にしないとエラーとなる。
しかし、この設定のサーフェースでは「holder.lockCanvas();」がエラーとなるため
holderクラスに実装されてるリサイズに使えそうなメソッドは全て使用不可能。
・「WallpaperServiceクラス」と「Engineクラス」には画面サイズが変更されたら呼び出されるメソッドはあるものの
画面のサイズを変更したり、描画領域を変更したりするメソッドはなさげ。
・ならばと、ライブ壁紙上にSurfaceViewを重ねて、そっちを操作しようと考えるも
ライブ壁紙は画面を持たないバックグランドServiceでViewが存在してないらしく出来なかった
Video Live Wallpaperはどうやって機能実装してるんだろう・・・。
もしかして、動画をバイナリーレベルで読み込んで画像部分を1枚1枚ビットマップに変換して
パラパラ漫画のように表示する自作のムービープレイヤーみたいな事してるんだろうか・・・・。
そこまではやりたくないっす!
画面サイズくらいメソッド1つで変更させてくれ・・・・
なんかもう・・・ハゲそうっす
何かヒントありましたらよろしくお願いします
512 :
448 :2011/09/21(水) 05:27:17.63
>>510 ネットだとogm推奨してるページ多いけど、俺の場合mp3の方が全然調子よかったよ
一時的にmp3に変更してみて試してみてはどうだろうか?
(これでフォーマットによる不都合の可能性をまず切り離せる)
それでも症状同じようなら以下のどれかやってないか確認してみ。
・何処かで「stop()」もしくは「release()」を実行してしまっている
・サウンドを停止させ、再生する時に「create()」「setdata()」をまた呼び出している。
・MediaPlayerを4個以上メモリーに確保して保持し続けている。
これは再生するサウンドをあらかじめ10個とか配列に確保して保持している場合も同じで
MediaPlayerは3個までにしておかないと色々おかしな動作を起す。
ちなみに「prepare()」は「曲の停止」じゃなくて「setdata()」で曲を読み込んだ時に「曲を再生可能な状態にする」
という、準備用のメソッドだよー
「create()」で曲を読み込んだ場合は必要ないけどね。
以上、何かの参考になれば幸いです。
>>512 早速のアドバイスレスありがとうございます!
なるほどデータフォーマットの可能性も見た方が良さそうですね。
現状を更に詳細に下記ますと、
・エミュでは現象は発生しない(streakでのみ発生)
・曲データ全てがなるわけではなく、容量が多いデータがなるような感じです
・症状が発生する曲は決まっていて、かつ再現性100%で、毎回必ず同様の症状になります
そしてアドバイスのあった項目を今チェックすると、
>・MediaPlayerを4個以上メモリーに確保して保持し続けている。
ズバリこれをやってしまっています。10個ほどの曲データをmediaplayerで全部起動時にcreateして、そのまま保持してしまっています。
これを3個以下にしてみるのが先決ですね。
この場合、同時再生数は3個まで、という事になるのでしょうか。
514 :
448 :2011/09/21(水) 05:45:00.04
>>510 補足
「stop()」でサウンドを停止させた場合は「prepare()」した後に「start()」しないと再生されない。
「pause()」でサウンドを停止させた場合は「prepare()」は必要ない。
各コマンドの関係は下の図を面倒くさがらずにじっくり見ると把握できると思うよ。
http://developer.android.com/intl/ja/images/mediaplayer_state_diagram.gif あとこれは実験結果になるけども
「pause()」も「stop()」も体感速度としては変化ないので(2分くらいのサウンドで)
むしろ下手に使いまわすより、毎回「create()」→「start()」→「relese()」→「create()」→「start()」…と
確保、破棄を行ったほうが理想的に安定して動く
ゲームか何かを作ってて、極力ガベージコレクションを回避したいとかなら使いまわした方がいいっぽいけどね
515 :
448 :2011/09/21(水) 05:52:33.48
>>513 ぬお!起きてたんかい(苦笑)
そうだね〜MediaPlayer使う場合は同時再生数は4つまでが仕様と思ってあきらめるしかないと思う。
(3つじゃなくて4つまでだった(汗)申し訳ない…)
同時に沢山ならしたい場合は「SoundPool」を使うといいそうだけど
こっちは試して事ないのでアドバイスはできないっす・・・。
ただ「SoundPool」も次のような制限あってクセ者
・同時再生が安定しているが1サウンドの最大長さは10秒まで。
尚、仕様上は256個まで同時再生可能みたいだが
音声用に割り当てられるメモリーが1MBに固定されており
メモリーが足りなくなったら古いものから勝手に停止されていく。
・x86エミュ上ではmp3は再生できず、oggかwavにする必要性あり(実機はどうなるか不明)
・再生終了のイベントが存在しないので再生終了を検知できない
つまり投げっぱなしになる
再生終了を検知したい場合はMediaPlayerを使うしか方法がない
・ボリューム調整は可能、ループ可能
>>514-515 詳しくありがとうございます!
prepare()に関する把握を間違えていました。非常に参考になります。
まず基本に立ち戻ってこの図をもう一度頭に叩きこもうと思います。
そして今夜は一度寝てからデータフォーマットと同時確保数のtestをしようと思います。というか朝になってましたね
早朝からありがとうございました!参考になります
MediaPlayerはprepare()すると内部に再生(一時停止)状態の AudioTrackを1個生成して、再生停止までそれを保持する 1個のAudioTrackは再生状態になると、オーディオデバイスが 提供する共有メモリを確保する したがって、オーディオデバイスが提供する共有メモリの限界を超える 数のAudioTrackを再生状態にしようとすると、共有メモリを確保できず エラーになる 問題はこのエラーを例外なり戻り値なりで検知できないこと(!) ちなみにAudioTrackをいくつまで同時に 再生状態にできるかは 機種依存だし、その限界値を知る方法は無い 今のところ最低4個生成できる機種しか存在しないから4個までは 動作するが、デバイスリソースの共有なので5個のアプリが 同時に1個ずつMediaPlayerを使おうとしても同じ現象が起こる 可能性がある 手持ちのXperiaでは32個まで同時生成しても全部期待通りに動作したが 33個目は例外なども起こらず再生もされない未知の状態に陥った 長文スレ汚しですみません
ギャラリーについて質問。 intentで標準ギャラリーを呼び出すことは出来るんですが、 「標準ギャラリーの機能のまま使う」にはどうすればよいでしょうか? いまだと、「標準ギャラリー呼び出し」→onActivityResultで 個別に読み込み処理、みたいな流れになってます。 そうではなく、ギャラリーはギャラリーの機能のままそっくり 使いたいんですが…。
セーブデータをデータベースに保存しています。 アプリの更新でデータベース内の他のテーブルを変更したいのですが、 セーブデータを残したまま更新するにはどうすればよいでしょうか? SQLiteOpenHelperのonUpgradeで処理できるのかと思ったのですが、 すでに更新されているようで上手くいきません。
>>521 他のテーブルって、何に対しての「他」なんだよ。
「テーブルを変更」ってテーブルの定義を変更なのか?
バージョン上げていないとかじゃないのか?
まずはソースを晒せ
>>521 項目増やすくらいならALTER TABLEでできる、減らすのは無理
どちらかというとAndroidの問題じゃなくてSQLの問題
524 :
初心者A :2011/09/21(水) 15:51:54.85
こんにちは もしよろしければお教え下さい。 現在GPSとgoogleMapを使ったアプリを作成しているのですが、そこから座標 住所を取得することが出来るのですが、登録があれば電話番号や店名(その場所の名前) 等を取得したいのですが、可能なのでしょうか? googleMapでは名前で検索すると電話番号があるので出来ると思っていたのですが。 知恵をお貸し下さい。
>>521 コンストラクタでバージョン上げればonUpgrade呼ばれるはずだけど。
どの程度変更したいかにもよるけど、どうしても大きな変更したいなら
データ取り出してTable消して作り直して入れなおすなんて方法すれば何だって出来る
すみません、android-sdk-windowsをダウンロードしたあとtoolsからemulator.exeを 起動しても起動できないのですが、これはどういった原因が考えられますか?
>>526 説明を読まないから。
スタートメニュー>プログラム>Android SDK Tools>SDK Manager
から起動する。設定とかいろいろあるのでググってね
>>527 ありがとうございます。
SDKマネージャーから
starting android emulatorをすると
invalid command-line parameter: and.
Hint: use '@foo' to launch a virtual device named 'foo'.
please use -help for more information
という文字が出てそれ以上進みません。
これはどういった原因が考えられるでしょうか?
どうせイメージ作ってないんだろ
ScrollViewをスクロールさせなくさせ、 普通のViewのようにするメソッドってありますか?
>>531 ありがとうございます。
出直してきます。
>>531 メソッドはなさげ
親のViewGroupでタッチイベントを取っちゃえばいい
アクティビティを持たないクラスから画像リソースをsetImageResourceで取得しようとすると 〜は解決できないかフィールドではありませんと表示されてしまい、 Android標準で用意されているリソースしか取得出来ません どなたか解決方法よろしくお願いします
エスパーというかレスキューを呼んで
android 自体に超初心者で基本的な感覚が分からないので教えてください SL4A(Script language for Android)で python でプログラムを いじってみようと思ったのですが, SL4A のアプリ(?)として python インタプリタを動かすことは できるのですがターミナルエミュレータ上の sh から python って 入力しても permission denied って言われてしまいます android では普通のunix的に shell script のなかで script 言語のプログラムを呼び出したりとか そういうことは出来ないんでしょうか…
>>534 そのクラスのオブジェクト生成時にActivityを
渡してやりゃいいんじゃ?
違うstatic系クラスでもいいけど。
どうも参照する時にショートファイル名を使う必要があるみたいなんですが ロングファイル名からショートファイル名にするにはどうやればよろしいでしょうか?
>>536 rootを取ってpythonコマンドをインストールすれば出来る
linuxにショートファイル名とかロングファイル名とかあんの?
>>537 Resources res = context.getResources();
res.getDrawable(R.drawable~
でしょうか?出来ませんでした…
542 :
デフォルトの名無しさん :2011/09/22(木) 00:06:52.97
あいぽんアプリではmysqlデータベースと連携させる時 中継php使ってやってましたがAndroidでは直接でもいけるようですね Androidアプリではどっちが主流なんでしょうか
web上のmysqlを操作する為にphp使ってるんだろ ローカルのsqliteならどっちも直接できる
>>543 R.drawable.に自前のリソースが表示されません...
LinearLayoutの中のTextViewに setHorizontallyScrolling を設定して横スクロールさせたいのですが、 なぜか横スクロールさせようとしても反応がありません。 setHorizontallyScrolling以外に何か設定が必要なのでしょうか?
>>545 まず PackageExplorerのres/drawableフォルダに画像があるか確認。
PackageExplorerからプロジェクトのルートを選択してF5、しかる後にProject->Clean
>>547 いいえ 他のアクティビティを持つクラスからなら参照出来るのですがアクティビティをもたないクラスにアクティビティ渡してもそこから参照ができないのです
多階層のツリー表示したい時どうしてる?
>>548 矛盾してるだろ
>>545 では表示されないって書いてるのに
あとは使ってるContextが悪いとしか
>>548 R.drawable.*はpublicだから何処からでも参照出来る
何が出来ないのか書き込みの内容からは特定できない
554 :
デフォルトの名無しさん :2011/09/22(木) 10:20:59.12
googleMapのプレイスを使って登録されている電話番号やら住所やらを使いたいのですが。 出来るんですかね?
>>548 どうせandroid.Rをimportしてるんだろ
それか別プロジェクトか
>>542 iPhoneでもAndroidでもできるだろ。
やる奴は多分いないだろうが。
(クライアントアプリからの直接のDB操作許可する
なんてセキュリティ的に良いことないから)
くだらねーと思いつつ、誰もが一度は通る道だろうな
android.Rのインポート クリーンの後ビルド eclipseをクリーンモードで起動させる 覚えておくと役立つよね
age of empireみたいなゲームを作りたいのですが、なにか参考にできそうなソースはございませんか???????????????????????????????
ありますん???????????????
一つ言いたいのは、Androidじゃなかったら作れるの?ってのだな もしそうじゃないんだったらすれ違い
そうね、あなたはいつもすれ違い
566 :
デフォルトの名無しさん :2011/09/23(金) 01:28:54.16
エラー: Application requires API version 13. Device API version is 12 (Android 3.1). というエラーを吐かれたんだけど,これはつまり上位互換性はないよってことで 例えばAndroid 2.2で動くアプリを作りたかったらそれに見合ったので作れってこと?
c/c++しか触ったことないのでNDKつかおうと考えているんですが、 NDKで開発するのって、普通にjavaで開発するのと比べて、どんな点が面倒ですか?
>>567 本屋で見た限りではNDKだけで全ては作れないみたいよ
あとは国内の利用者が圧倒的に少ないのでネット上に
日本語解説付きのサンプル例がほぼ無いと思ったよい。
つまりどんな時も自己解決必須
Javaのみ自動ビルド→そのまま動作確認 NDK 手動ビルド→リフレッシュ→ビルド→動作確認 それ以外にもNDK部分の動作を追いかけるのが大変とか、 JNIの記述が長くてめんどくさいとか 意外と手数が増える。 ちなみにAndroidOSはJavaのクラスを呼び出すので、 Javaも知らなきゃ開発は出来ない。 まぁC++出来るなら難しくは無い話だけどね。
570 :
デフォルトの名無しさん :2011/09/23(金) 04:31:16.67
リソースのIDをリファクタで反映させることはできますか
>>566 2.2で動作出来ますよってマニフェストファイルで指定すれば良い
>>567 c/c++で高速化のために一部の関数の中身をアセンブリに差し替えたりするよね。
NDKはその程度のもの。
どうしてもc/c++だけでゲーム作りたいならミドルウェアかな。
GゲーのとかはVCで作れる。
EditTextやフォーカスについての質問です 1つのActivityにEditTextやspinnerを縦にたくさん並べた場合に どんどんスクロールして下の方の項目を入力した際に 一番上にあるEdiTextまでフォーカスが勝手にスクロールしてしまいます 自動でスクロールしてしまうのを制御する方法はありませんか? よろしくお願いします
AppWidgetProvider の onUpdate で Service に処理を投げています。 Service では、ウィジェットのボタンクリックに PendingIntent をセットし、 クリックで Activity を起動しています。 ここで、Activity の終了をウィジェット側で検知する方法がよくわかりません。 今は強引に Activity から sendBroadcast で終了を通知し、 AppWidgetProvider の onReceive でそれを受ける、ということをしていますが、 反応が遅く、リソースも食いそうなので、普通はどうやるものなのか、参考になる サイトやソースなどありましたら教えていただきたいです。
スペースで自動改行されて困る なんとかならないの?
なりますん
スペースを入れ名kればおk
自動改行されないスペース考えてくれ
listViewの内容を更新ボタン押したら丸々更新する場合って その都度アダプターにデータsetadapterするので正しいのでしょうか? この方法だとアダプターに渡すデータの変更によっては更新されてない場合があるので
>>581 ありがとうございます。それを手がかりに勉強してみます。
簡単には、Preference の拡張版のようなものを実装したく、Activity で色々いじった結果を
ウィジェットに反映させたいだけでして、特別なことではないと思うのですがあまり良いサンプルが見つからず。
現在は、Activity の onBackPressed や onSaveInstanceState に sendBroadcast を仕込んで
あやしく動いている感じです。
>>584 普通にAppWidgetManager経由じゃダメなの?
ActivityManagerでの監視なんて、バッテリー消費多いしBroadcastIntentより遅いぞ
585は元の質問を理解してないと思う。 あと、 ActivityManagerからリスト取るのは上限値を設定できるので別に重くはない。
>>586 一回呼び出せば良いんじゃなくて、状態を監視するために定期的に呼び出す必要があるのを理解してる?
Activity側での変更をどのようにWidgetに反映させたいのか分からないけど、
AppWidgetManagerからRemoteViews経由で変更するのが普通
まあ、こんなクソみたいな設計するやつが多いから、androidはバッテリーが保たないなんて言われるんだろうな
>>581 バックグラウンドに行った=終了した、じゃないから、ずっと監視し続けなければならないし、現実的じゃないな
「ずっと」の頻度にもよるな。 ウィジェットの表示更新が毎秒動くわけじゃなし
元質問からはバックグラウンドか終了なのかも分からんし、 検出してから表示を更新したいだけなのか内部動作を何か変えたいのかも分からん。
>>591 元の質問ではちゃんと「終了」って書いてるけどな
質問があいまいですみませんでした。 >> AppWidgetManagerからRemoteViews経由で変更するのが普通 AppWidgetProvider の onReceive で Broadcast を受けたところでそれをやってるのですが、 そうではなくて Activity の終了処理でやれってことでしょうか。試してみます。 いくつかやり方・考え方があるみたいですが、Android どころか Java 自体ほとんど初めてなので、 なんでも勉強になります。回答いただいた皆様、ありがとうございました。
594 :
デフォルトの名無しさん :2011/09/23(金) 20:18:01.28
>>582 詳しいみたいだからついでに聞いちゃうが
eclipseでどうやって入力するの?
595 :
デフォルトの名無しさん :2011/09/23(金) 20:26:51.21
webサービスに写真をアップロードするアプリを作りたいんですが、参考になるサイトなどないでしょうか? ググったんですが見つからずで困っています(Titanium前提で探したせいかも知れませんが…) どなたか済みませんが教えてください。よろしくお願いします
>>594 こんなの手入力しても見えないし保守性悪いだろ
javaのコードなら \uHHHH XMLなら HHHH; じゃないの?
製作してインスコされた*.apkファイルはファイル操作で取り出して他の端末に移されると 簡単にコピーされてしまうのですか? 防止する手段はありますか?
>>597 rootedな端末ならそうだね。
べつにAndroidに限った話でもない。iOSだってWindowsだってそうだろ?
先ほどの質問が曖昧でした 3種類あるxmlを1ボタンクリックで1つ取得して内容をパースしてlistViewに表示しようと 思ったのですが最初にoncreateで取得した物のみが反映されてボタンクリック時の内容が 反映されません xmlの内容はしっかり取得されてパースもきちんとできているのですが setAdapterしても反映がされていないのです どなたかお助け下さい
601 :
デフォルトの名無しさん :2011/09/23(金) 23:16:09.66
そう!そのとおり!! わたしは このかんどうをあたえてくれた きみたちに おれいがしたい!
605 :
デフォルトの名無しさん :2011/09/24(土) 00:25:33.90
とりあえずエミュだけで開発進めてるんだけど,エミュが重すぎてストレスがマッハ やっぱ実機有ったほうがスムーズにデバッグできるの?
実機にデバッグ環境があれば 実機のほうが動作周波数としては遅いような
エミュより実機の方が絶対早いよ、中古でもいいから買うことをお勧めする
使えない機能も多いしな。 3D関係もおかしい結果になる機能があるし。
>>575 です。
おかげさまで解決できました。皆様ありがとうございました。
次なのですが、RemoteView の setInt で setBackgroundColor すると、XMLで定義していた
corners の radius が消えてしまい、角丸が取れてしまいます。
view 直接であれば、 Drawable に Alpha と Color をセットし直してどうにかできたのですが、
RemoteView でこれを解決することはできないでしょうか。
補足: RemoteView でなければ、setBackgroundDrawable を使用して以下のようにできました。 Drawable d = getResources().getDrawable(R.drawable.widgetshape); // ここに角丸設定がある d.setAlpha(bgcolor_a); d.setColorFilter(bgcolor, PorterDuff.Mode.SCREEN); ((FrameLayout)findViewById(R.id.frameLayout1)).setBackgroundDrawable(d);
実機で困ることは root取れてない端末だと 作ったファイルの確認がめんどくさいことくらいだな
612 :
デフォルトの名無しさん :2011/09/24(土) 09:42:05.97
アプリケーションが裏回った事を知るにはどうすれば良いのでしょうか onPauseで捕まえようとしたらActivityの遷移でも発生するようで・・・
http://labs.techfirm.co.jp/android/cho/751 listViewを使ってtwitterアプリケーションを作成しようと思うのですが
こちらのサイト通りにすると ArrayAdapterクラスのextends ArrayAdapter {の部分とsuper(context, textViewResourceId, items);
の部分で総称型arrayAdapter<T>はパロメータ化される必要がありますという警告が出ています
この警告の対処方法はございませんでしょうか?
<?>
>>600 adaper.notifyDataSetChanged();
それだけでだめなら続けて
listview.invalidateViews();
もやってみる
(i)
>>614 ArrayAdapter<?>を拡張または実装出来ません。スーパータイプはワイルドカードを指定出来ませんと
エラーが発生してしまいます
>>617 ジェネリックス理解するか、警告、エラーの設定変えろ
どっちかと言うことJavaスレ向け
>>403-436 に出ているログって何?log4jみたいなもの?
ってか、coreってどう読むの?
コレ
壁紙プログラム作ってます。 普通のアプリで使うボタンやテキストボックスのようなパーツを 壁紙のプログラムで使うにはどうしたらいいのでしょうか? 不可能な感じですか?
>>615 できませんでした
ラジオボタン3つで3種類のxmlをselectedChangeイベント内で
xml取得パースsetAdapterの順に行っているのですがパースされた内容はlogで出力すると
確かに変化しているのですがsetAdapterで反映されません...
ListVeiwのinvalidViewsをよぶ
625 :
デフォルトの名無しさん :2011/09/24(土) 19:15:55.59
やっぱ先に実機買うかな… Androidってメニューボタンとか戻るボタンがあるよね ってことはAndroidアプリでは画面内にメニューバーとか用意しないのが普通なの?
あんまりメニューバーのあるアプリは記憶にないけど、それが本当にいいのかは微妙 メニューボタンを押す発想に至らないユーザもちらほらいるし
俺も実機ほしいな eclipse + エミュレータでPCの画面のみで作業してると、画面タッチすること 忘れたレイアウトになることあるしw
1万円くらいの中華タブレットPC買って USBでつないでエミュかわりに使えるといえば使える
中華パッドは認証受けてないからOSがほとんど2.xだからね・・ どうせ買うなら3.xが入ってるもの買ったほうが後々良い
今すぐハニカム向けのアプリを作る気がない限り2.*系で十分
はにかむだっしゅ!
ハニカム王子
1.5でいい
ウィジェットでフォトフレーム的なのにデジタル時計つけるにはどうすればいいんじゃろか 美人時計とかああいうたぐいの
SoundPlay で効果音をならしてるのだけど
SoundPlay で効果音をならしてるのだけど オリジナルのボタンに触れたら(押さない)音が鳴る仕組みで 同じ ID のものを連続で再生させまくると音が鳴らなくなってしまうのだけど 原因はなんだろう
637 :
636 :2011/09/25(日) 00:58:08.47
音は2つあって、SoundPoolの最大数を適当に5とかにしてたんだけど
638 :
636 :2011/09/25(日) 01:00:41.34
Skypeの癖で改行するときにCTRL押してしまう・・・。 音は2つあって、SoundPoolの最大数を適当に5とかにしてたんだけど これを1にしたら、現象は見られなくなったかも? いみわからん。
ListView で CHOICE_MODE_MULTIPLEにしてみたものの List 上にチェックが表示されない・・・。 getCheckedItemPositions で見ると、ちゃんと反応してチェックがON/OFFされているっぽいのだが、 ググってもチェックの表示方法が見つからず・・・。原因わかる方いますか?
>>640 自分で何とかする
ListVeiwの各行のViewなんて各自で好きにカスタマイズ出来るんだから、フレームワーク側から勝手にチェック付けられたりはしない
642 :
デフォルトの名無しさん :2011/09/25(日) 09:48:44.53
各行の View が Checkable を実装していれば、勝手にやってくれたと思う View をカスタマイズしてる場合は自分で頑張るべし
Widgetを作成しています。 Widgetにcanvasを使ったViewを配置することはできますか?
/ ___\ iPhoneを手に入れた / | ´・ω・| \ もうお前らに用はない /  ̄ ̄ ̄ | | i KDDI / L二ヽ  ̄ ̄ \ 〉 ,、_/⌒\ノ / / / ̄ ̄ ̄\ ∩ /__/´ ∩ /___ ヽ/ ノ _,,..-―'"⌒"~⌒"~ ゙̄"~ ゙̄"~ ゙̄"~ ゙゙̄"'''ョ \ ヽ|・ω・` | / ゙~,,,....-=-‐√"゙゙T"~ ̄Y"゙=ミ"~ ̄Y"゙=ミ""゙=ミ ヽ  ̄ ̄ ̄ _/ そんな〜 T | l,_,,/\ ,,/l l,_,,/\ ,,/l | 国内メーカー
以下のuriにsdcardに保存したhtmlを渡して表示することは可能でしょうか? Intent(Intent.ACTION_VIEW,uri); startActivity 〜〜〜〜 web上のhtmlなら表示出来るんですが、ローカルファイルのパスを 渡すと Shutting down VM とlogに表示されてアプリがハングしてしまいます。 sdcardのhtmlを標準ブラウザで表示する方法を教えてください。 よろしくお願いします。
>>640 ArrayAdapterにandroid.R.layout.simple_list_item_multiple_choiceを設定してないとか
647 :
デフォルトの名無しさん :2011/09/25(日) 13:59:11.60
>>609 です。
自己解決したのでご報告します。
簡単なことなのでしょうけれど、初心者にはたどり着くのキツかったです・・・。
AppWidget の ルートを透明な FrameLayout とし、imageView を fill_parent で配置
imageView の src に 角丸の XML を指定
RemoteView で色を動的に変更
remoteview.setInt(R.id.imageView, "setColorFilter", bgcolor);
remoteview.setInt(R.id.imageView, "setAlpha", alpha);
>>647 Activityのアニメーションはテーマで設定する、って書いてあるじゃん
特定のテーマ設定したいんだったら親に指定すれば良い
>>641 , 642, 646
レスサンクス。目下の原因は
>>646 のとおりでした。
ありがとうございました。
>>645 ちょっとググったら出てきたが・・・。
file://〜
ただしWebview.loadUrlだとさ。
標準ブラウザじゃなきゃいけない事はないだろし。
VideoViewでmp4を再生させる方法だけど SurfaceViewを継承したクラスをsetContentsViewに登録してる場合 VideoViewのインスタンスはどこから拾えばよいの? 動画再生させるときだけ、xmlのレイアウトを登録したりするのかな
653 :
デフォルトの名無しさん :2011/09/26(月) 02:16:10.11
CursorAdapterにカーソル渡すと SQLiteDatabase created and never closed となるんだけど、何かやり方があるんですか?
654 :
デフォルトの名無しさん :2011/09/26(月) 06:24:51.71
ファイル名が日本語のShift-JISのファイルを開くのはどうやったらいいんでしょう? ファイラやlistFilesの時点では日本語で普通に表示されるのに、アプリ内でいざ開こうとすると日本語の部分が%329・・みたいな感じで開けなかった・・。
ListViewでスクロールの跳ね返りが無い(上段や下段をオーバーしない)ように設定したいのですが、 どうすればいいでしょうか?
>>655 標準だとオーバースクロールしない筈だけど…
列のタップでそのような動作をするようにプログラミングされているのではないでしょうか リンク先見てませんが
透明なボタンがかぶせてあるんじゃないの
ここ最近の端末のメモリサイズはどのぐらいなんでしょうかね?
clickableにすりゃonClick発生するしー
>>652 VideoViewが無いのにVideoViewで再生させたいってこと?VideoView作れよw
作りたくないならMediaPlayer使って自分で再生しろよw
>>655 そういえぱGalaxyだと標準でオーバーするね
Androidの電源情報を取得し画面に表示する事はできたのですが この処理を止めて、でも画面はそのままにするってのが上手くいきません リアルタイムで電源情報を取得させなくするにはどうしたらいいですか? 起動時のみアクセスして、後は画面表示のみにしたいです
そんな抽象的な言葉だけで答えられるのはエスパーだけ
起動時のみ取得すればどうか
667 :
652 :2011/09/26(月) 13:10:10.41
どこかからそのままコピーしてきて 何をやってるのか全くわかってないからだろ
>>663 iPhoneがするからに決まってるじゃん
2.3からスクロールさせるためのメソッドが出来てるはず
そのままコピーなのかどうかしらんけど VideoView videoView = (VideoView)findViewById(R.id.****); ここをどうすればいいか分からないし 調べるためのアプローチの仕方も分からない。 setContentViewで登録してるViewクラスは SurfaceViewを継承しているクラスなので、layoutは使っていない。
とりあえずVideoViewで再生する場合はSurfaceViewはいらないと思うんだけど
672 :
652 :2011/09/26(月) 13:44:21.27
>>671 VideoViewがメインじゃなくてSurfaceViewがメインなのだよ。
SurfaceView使って作ってる中で動画を再生させたい。
じゃあSurfaceViewとVideoView両方配置したxmlを作るなりしろや
674 :
652 :2011/09/26(月) 13:51:29.01
>>673 setContentViewには1個しかオブジェクト登録できないけど
どうやって、SurfaceView継承したクラスと両立させるの?
675 :
デフォルトの名無しさん :2011/09/26(月) 13:58:11.65
>>674 FrameLayoutで重ねろ短小ハゲ
スマホ本体とコンセントを充電ケーブルで、常に、接続した状態にすると バッテリーが少しでも減ったら、即、満充電になり、以降それの繰り返しだと思うのですが たとえば、バッテリー残量残り10%になったら充電が開始されるといった 電源監視アプリみたいのって可能そうでしょうか?
いいえ
SurfaceViewの中でmp4再生すればいいだけじゃないの
Targetに「Google APIs」選択してもHardwareに「GPS support」が表示されないんですが なぜでしょうか?
>>674 それが分からないって事は、何のためにああいうxmlを記述してるかも理解出来てないってことだよな…
>>674 addContentViewってのもある。
リソースIdから直には使えないけどその辺はググれば出てくる。
682 :
デフォルトの名無しさん :2011/09/26(月) 19:43:19.41
最近始めたんだけどAPIバージョンって新しいの使ってればいいの? 新しいので作る→古いのではなんかぼやけてる気がする 古いので作る→新しいのではなんかぼやけてる気がする
ぼやけるってどういう意味?
684 :
デフォルトの名無しさん :2011/09/26(月) 20:33:20.38
アプリ間のインテントってファイルとかを選択→ダイアログが開いてユーザが選択し、インテントの先のアプリが開く ってなりますけど、こういうのではなく、ユーザが意識しないような連携・・つまり別アプリをライブラリ的に使うってことはできるんでしょうか?
林先生の出番かと思ってしまった
>>685 意識しない連携の定義が良く分からないが
そういうのはサービスで実装するんじゃないか?
後、自分のアプリ間なら好きにIntent投げ合って意図する
動きも可能(画面表示しないですぐ終了とか)だろうけど、
使い道がいまいち思い浮かばない(特に呼ばれる側の存在意義がない)。
WebビューにIntent投げるのは意識しない連携?
用途を書けば適切な回答くると思うぞ。
>>688-689 自分が作ってるのはちょっとしたデータを加工(パース?)して、しょぼい画面に表示するだけのアプリなんですが、
データの加工機能だけのAPI公開みたいのは出来るのかな、と。
仮に自分の別アプリとの連携だけだとしてもちょっと作り方もモチベも変わってくるので。
Android ADVのエミュレータが起動しません PANIC: Could not open: て出てくるのですが 調べてもこのような場合の解決策はありませんでした
>>690 そういうのは、普通はjarとしてwebに公開だろうな。
使う側としてはパース結果が欲しい訳だし。
まあ、可能ではあるだろうからご自由に・・・。
aidl経由での連携なら値も返せるけど、呼び出してもらうためにはインターフェース部分だけだけど、ソースの公開も必要だね 表示されないアクティビテイを使うって方法もあるな
694 :
忍法帖【Lv=40,xxxPT】 :2011/09/27(火) 00:05:50.96
超初心者です。すでにあるアプリを修正しないといけません。 エクリプス初めてさわりました。 文字に下線入れたいです。 既にある文字を〈u〉ハロー〈/u〉で囲んだのに反映されません。。
695 :
デフォルトの名無しさん :2011/09/27(火) 00:08:54.67
TabActivityで特定のタブを選択する度に、そのタブのActivityのみを再起動するようにさせることは可能でしょうか
>>692-693 有難うございます
まあインテント起動でいいじゃんって話ではあるんですけどね・・
>>695 IntentにCLEAR_TOPだかのフラグ付ければ出来た筈だけど
選択されてアクティブになる時に onResume が呼ばれるから
そこで処理した方がいいと思うよ
>>694 android textview html でググれよ
Activity.javaにて SoundPoolにサウンド読み込ませて AlarmManagerにて一定時間後に呼び出し。 BroadcastReceiver.javaにて Activityで読み込んだSoundPoolを再生させたいんだけどどうすれば実現できますか?
>>701 Service使え
SoundPoolはあまり使い回さない方がいいと思うが、
どうしても1つのSoundPoolを使い回したいならそれも
Serviceに管理させることを勧める
703 :
デフォルトの名無しさん :2011/09/27(火) 21:33:26.55
TabActivityってどのタブに居ても、戻るボタン1回押しただけで終了しちゃうよね タブ1に戻るのが自然だと思うんだけどなんか方法ないだろうか 戻るボタンのイベント捕まえて自分で書くしか無いのかな
今時TabActivityはねえよ Compatibility Package導入してFragment使え。まさに君が期待する動作をしてくれるはずだ
>>703 タブってのは複数の画面を開いた順番とか意識せず等価なレベルで開くものだろ
開発の前に開発環境の設定で困っています Eclipseインスコ→ADTインスコまでは行ってんですけど その後Eclipseのウインドウ(W)→設定(P)と行っても 左側の一覧?にAndroidノ項目が出ません。 どなたかお知恵をお貸しください。。。
何を持ってインスコ完了と判断した?
ごめんなさい 今Eclipseのログみたらエラーとワーニングが大量に出てました・・・ これらについて調べてみます ありがとうございました
オセロ盤つくろうと思ってXMLレイアウトでImageViewerを画面に敷き詰めて(レイアウトはTable,Flowそのほか) 画面いっぱいの盤をつくろうと思ったのですが、盤が画像の大きさに依存してしまい、 画面からはみ出したり、あるいは小さくなったりでうまくいきません。 「画面サイズに合わせて子要素の画像サイズを変える」ようなことはXMLだけでは出来ないのでしょうか? Java側でWindowサイズの1/8をImageViewに設定するしかない?
すいません、今作ってるアプリでたまにエラー終了が出るのを追っかけてるのですがうまく終えず困ってます。 1 GLSurfaceViewを使ってるアプリから、Webブラウザ呼び出しのインテントを投げる。 2 ブラウザが立ち上がるので終了する。 そうした時、自分のアプリが復帰する際に4,5回に1度の頻度でGLSurfaceView.GLThread.run() で NullPointerException で終了してしまいます。
画面サイズを取得して描画した方が汎用性が上がる。 まぁ特定の機種専用ならxmlだけでも良いかと。
712 :
710 :2011/09/28(水) 09:03:14.03
(続き) 呼び出し階層やスレッドウィンドウを見ても表示できず、SDKのソースでブレークポイントもできずでどうやって潰せばいいのか… 調べ方、エラーの原因に考えられるものとかあればご教授お願いします。(あるいは説明不足な点などでも) なお、NullPointerExceptionが出たとき、アプリのメインActivityはOnRestart→OnStart→OnResume まで来てるのがLogで確認できました。 あとGLSurfaceViewの作成、setRenderはOnCreate で行ってます。
>>710 thread 内で参照しているobject か何かがヌルポなんだろう。
>>709 例えば1個のLinearLayoutの中にImageViewを横方向に並べるなら
各ImageViewのlayout_widthをfill_parentに、layout_weightを1にすると
一応(横方向だけ)等間隔になる
ただ画面の縦横比が機種によってまちまちで調整面倒だし
>>711 の言う通りコードで配置した方が後々楽だと思うよ
等分はlayoutWeightで出来るけど、 縦と横で同じサイズにするに必要もあるからちょっとめんどいな
まあ細かい制御したいならコードで調整した方がいいわな
dipでサイズを指定すればいいじゃん
SurfaceViewを継承したクラスの中でMediaPlayerを使って動画を再生してるのだけど 画面一杯に描画されて困ってる。 動画のサイズを変更するにはどういう方法があるのかな。 やりたいのは、アス比をかえずに端末の画面に合わせたい。 例) 動画サイズ:640x480 端末サイズ:1024x600 再生サイズ:800x600
dip使えばレイアウトの多機種対応はちょろい そんな風に考えていた時期が俺にもありました
-normalとか-largeとかの物理サイズ指定でレイアウト作ればできなくはないけど 要件を考えるとコード側で制御した方が簡単でしょ
ちょっと上にあったがTabActivityは使われてないのか? developerのResourcesにサンプルがあったから利用してたのだが・・・
723 :
デフォルトの名無しさん :2011/09/28(水) 16:10:19.10
タブ内で画面遷移したいのですが、画面を進めることはできるのですが、前の画面に戻ることができません。 どこかにサンプルがないでしょうか。
724 :
デフォルトの名無しさん :2011/09/28(水) 16:34:16.18
タブ内で画面遷移したいのですが、画面を進めることはできるのですが、前の画面に戻ることができません。 どこかにサンプルがないでしょうか。
>>719 SurfaceViewのレイアウトパラメータを800x600にするっていうのではダメ?
特定端末だけopenRawResourceで持ってきたinputstreamがおかしいんですがなんか知りませんか availble()の結果はファイルサイズと一致 最初のread()から-1が返ってくる Galaxy s2は問題なし RegzaPhoneは上記問題発生 読んでるファイルはテキストやら画像やらを連結したバイト列 約2M
read周りのコードを見せてくれ
画面のないアプリってサービスにするしかないの? ちょいと処理したいんだけど…
ウッ!
>>733 どこから起動してもらうの?
ランチャーに表示したいならActivityは必須
>>722 3.X系ではFragmentsを使ってタブっぽいUIを実装できるってだけで
FragmentsはTabActivityを置き換えるものでは無いし
ライフサイクルの動作も変わってくるから自分のアプリの仕様にマッチする方を使えば良い
>>711 >>714-718 >>720-721 有難うございます。
ボタンが勝手に(?)伸び縮みするんだから画像ができないはずない・・と思って悩み続けてました。
たしかにネットや本のサンプルを見るとXML使わずに自力でマス目を作ってるんですよねぇ。
737 :
719 :2011/09/28(水) 22:08:03.46
>>725 それだと、その解像度の端末専用になってしまうのでダメ
タイマー作ろうと思うんだけど 1000分の1秒まで作れる? とういうか精度的に大丈夫なのかな
739 :
デフォルトの名無しさん :2011/09/28(水) 22:36:39.73
listviewの各rowの間の隙間を小さくするにはどこをいじればいいでしょうか?
eclipse.buildId=M20090917-0800 java.version=1.6.0_22 java.vendor=Sun Microsystems Inc. BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=ja_JP Framework arguments: -product org.eclipse.epp.package.jee.product -pluginCustomization techfun.ini Command-line arguments: -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.jee.product -pluginCustomization techfun.ini エラー Tue Sep 27 23:22:25 JST 2011 The installable unit org.polarion.eclipse.team.svn.connector.javahl15.win32.translated_host_properties is missing the filename property. 上記のエラーが発生してADTがインストールできません 解決案を教えて下さい
x86の3.2RC1をVirtualBoxに入れてみたけど、 2.2みたいにeathernet設定がないからホスト機のNIC経由で ネットにアクセス出来んで困った。 でWLI-U2-KG54-AIはあるから、一時的にホスト機をwifiマシンに しようとしたらWin764Bitに対応してなくてまた困った。 A01SHがあるから実機デバッグは出来るけど、 3.0以上向けアプリ開発してる人はみんなあの糞遅いエミュで やってんですかいな?
742 :
デフォルトの名無しさん :2011/09/29(木) 00:19:39.61
KIAI
743 :
710 :2011/09/29(木) 00:25:49.93
>>713 はい、エラー内容からそれは推測できるんですが
いかんせんSDKソース内のGLSurfaceView内で作成してるスレッドな上、
スレッドを走らせてるのも同関数内なのでステップ実行も呼び出し階層も見れずで
いったい該当のオブジェクトはなんなのかどう調べたものやら…と困ってます。
とりあえずOnCreate呼ばれてるときは大丈夫っぽいので
OnCreateでのなにかしらの処理にあたりをつけてはOnResumeに持っていくという総当り的に調べてます…
もうちょっと調べてみます
>>738 制度的には大丈夫でもそのタイミングで画面を描画できるかどうかは別問題
onDrawとか呼ばれたタイミングで取得とかになるんじゃない?
>>739 ListViewの各Rowなんて好きなレイアウト使えるんだからどこをいじればとか言われても無理
>>743 どの行でエラーになってるかはログに出るだろ
ちゃんと設定すればライブラリのコードにステップイン出来るだろ
>>743 他画面から戻ってきたときにリソースのメモリ参照エラーとか。
スレッドを停止してないで動きっぱなしでクラス変数の参照がおかしくなってるとか。bitmap系が怪しい感じがするけど。
復帰時っていうことは復帰時のリソース再取得前にrunが走っちゃってるんじゃないかな。
749 :
710 :2011/09/29(木) 03:13:54.09
普通にメインのアプリにブレークしてステップインして潜る分にはライブラリの中も追えるんですが ライブラリ内で生成・起動したスレッドのrunの中って ライブラリ内にブレークポイント置けないわマイアプリから潜っていけないわでどうしたものやら… と思ってたんですが、自己解決しました… まっこと恥ずかしい限りですが、GLSurfaceView.onPause と GLSurfaceView.onResumeが抜けてました。 ActivityのonPause等から呼んでやれば無事エラーは消えました。 どうもお騒がせしました。 しかし、今度はonPauseでOpenGLでバインドしていたテクスチャが破棄されたのでその復旧を組み込み中。
750 :
710 :2011/09/29(木) 03:16:31.73
>>748 まさにソレに行き着いてよくよく見てみたら…(カァァ
Surfaceがらみ、LiveWallPaperがらみ、MediaPlayerがらみ、カメラ制御がらみ、ARがらみのプログラム作る場合 なんつーか、まだいまいち痒い所に手が届かない感じだよなアンドロイドプログラム 仕様も環境も資料もいまいちすぐる ハードウェアに浸透していくプログラムほど、公式側でブラックボックス化されているのがなんとも・・・ 実験の繰り返しで開拓していかねばらんのがニュートンやコロンブスになった気分にさせてくれるぜまったく・・・
752 :
719 :2011/09/29(木) 05:54:37.66
多分、解決しました。
753 :
デフォルトの名無しさん :2011/09/29(木) 10:13:02.80
プログラム初心者です。testActivityクラスがあったとして。。。 public void test(View view) { TestActivity testactivity = (TestActivity)view.getContext(); } 上記の「TestActivity」の部分を動的にしたいので、引数で渡したいと思っています。 そのときの記述ですが、下記のやり方だとうまくいかずです。 この場合どの型の引数を渡せばよいでしょうか。。。 public void test(View view, Class<?> cls) { cls testactivity = (cls)view.getContext(); }
インストールされて表示されるアプリ名やアイコンを リソースからじゃなくて、外部に置いた設定ファイルを参照したり出来る?
>>753 無理は無理だけど、なんでそういうことをしたいのかのほうが問題
多分何かを勘違いしてる
757 :
デフォルトの名無しさん :2011/09/29(木) 11:36:06.65
>>755 >>756 レスありがとうございます。
やはり無理なんですね。もう少し勉強します。
やろうとしていたことは、ActivityGroup を継承して画面遷移を行いたいと思っています。
A --> C 、および B --> C と画面遷移したいのですが、
前の画面に戻るときに、AやBの「onResume」メソッドを通らないようです。
なので明示的にonResumeを呼び出さないといけないのかと思っていろいろ試していました。
public void test(View view) {
TestActivity testactivity = (TestActivity)view.getContext();
testactivity.onResume(); // <--追加
}
>>753 のコードのあとに、testactivity.onResumeとする予定でした。
ActivityGroupで画面遷移するときに、onResume()を通るようにする方法がありますでしょうか。
Activityとして扱えばよいのではないでしょうか まあ、外から呼ぶ作りってどうなのだろう?とは思いますが。
↑TestActivityにキャストする必要はなくてActivityにキャストすればいいだけって意味
760 :
デフォルトの名無しさん :2011/09/29(木) 14:00:03.01
>>758 >>759 ありがとうございます。
TestActivityをActivityに変えてみました。
これで一つのメソッドにまとめられるかと思ったのですが、
onResumeはActivityクラス内ではProtectedになっているようで、
呼び出すことができなかったです。
やはりメソッドはまとめずに、各クラスに記述するしかないんですかね。。。
じゃあpublicにした中間クラスを作ってそれにキャストすればいいだけじゃん
>>702 返事遅れたけどレスありがとです。
とりあえずサービスで実装する方法を模索中なのですが、
サービスで再生中の時A音はなるけどB音は鳴らない等Activityのボタンで制御してる場合
どうやってサービスで取得できますか?
SoundPoolの初期化について質問です。 SoundPool(int maxStreams, int streamType, int srcQuality) * maxStreams:プールする最大の数 この「プールする最大の数」というのは、loadするリソースの数でしょうか?それとも同時再生数のことでしょうか
Google Mapは画面全体に表示されるけど、小窓表示とか出来ますか?
ボタンを押すとTextViewに値をセットする処理をしています。 しかし、値が表示されるときとされないときがあります。 値が表示されなかったときでもEditTextをタップし、ソフトキーボードが出てくるとそのタイミングでTextViewに値が表示されます。 表示されたときもされなかったときも、TextViewに表示される値は同じため ""をセットしてるとか、値がおかしいんだろという話ではないと思い、 ソフトキーボードが表示されたタイミングで、画面の更新か、TextViewの更新がされ、 TextViewにセットされた値が表示されないんではないかと考えています。 viewもしくは画面全体に意図的に更新をかけるにはどうすればいいのでしょうか。
>>765 ManifestファイルのActivityのWindowSoftInputModeをadjustPan
で解決するかも
ちなみに再描画は
invalidate()
invalidate()?
view.invalidate() でviewのonDrawを実行できる
すみません。教えてください。 Linux自体初心者です。 AndroidのOSをバックアップしたくていろいろ調べているのですが、 ADBを使ってなんとか、というところまでしかわかりませんでした。 Windowsとあまりにも違いすぎて何をしていいのかわからないのですが、 どんな本を読めばLinuxのコマンドやバックアップの方法がわかりますでしょうか? 入門者向けのものがうれしいです。
スレチ
やっちまった。なんかおかしいと思ったら左手系で書いちまったw OpenGL右だよね・・・。
Androidでリトルインディアンビッグインディアンを検索しようとしたら 強制的に訂正されて検索できないんでやんの
773 :
760 :2011/09/29(木) 19:48:04.82
>>761 中間クラスを作ってキャストすることで、やりたいことが実現できました。
ありがとうございました。
>>762 Serviceをbindすればいいんじゃないかな
>>773 本来、フレームワークから呼ばれるメソッドが呼ばれないからって
自分で呼んだところで何の解決にもならないんだけどね
おそらくonResume内にタブ切替時に呼びたい処理があるんだろうけど
本当だったらその処理はonResumeから切り離して
onResumeとタブ切替時、両方から呼ぶようにするべきだと思う
もしかして パソコンでデバッグ中はMouseEventで 実機に移すときにTouchEventに 置き換えるんですかね? それともMouseEventのままですか?
たしかにeventがflashっぽい AIRでつくってるとか
TouchEventだって無いぜ?
780 :
デフォルトの名無しさん :2011/09/29(木) 21:25:31.94
実機デバッグすげーサクサク さっさと買ってよかったわ
>781 googleさんにそう矯正されちゃうってことじゃないかな?
Android関係なくねw "リトルインディアンビッグインディアン" クオーテーションを前後につけるとそのまま検索されるよ
あれ? TouchEventはActionScript3.0なんですが もしかして普通は違う言語使うんですか? いきなりスタートから間違えた?
何言ってるんだ?
あってるあってる
787 :
デフォルトの名無しさん :2011/09/29(木) 23:08:16.88
実機買ってみて気づいたんだが戻る的なボタンを画面内に設置しているアプリって殆ど無いんだな 楽でいいわ
>>787 iOSじゃないからね。
戻るならボタンあるし。
キャンセルボタン押さなくても 検索ボタンでダイアログ閉じれるし
(ListView)findViewById(R.id.list); エラーで「View から ListView へキャストすることはできません」と出るのですが 検索しても出てきません。対処法はあるのでしょうか
xmlのidがlistの要素はどうなってるの?
>>790 View list = findViewById(R.id.list);
デバッグで止めてlistの中身みてみ
794 :
790 :2011/09/30(金) 03:26:17.49
>>791 こういう事でしょうか?
<ListView
android:id="@+id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
>>792 コード打ち込みの時点でのエラーなのでデバッグが・・
>>793 上で書いたとおりです
795 :
aya :2011/09/30(金) 04:46:38.64
ホーム画面に設置したwidgetの縦横のサイズを取得したいがお手上げだ・・・ だれか教えてくれ・・・
確かに、TouchEventは無い。 MotionEventだな。
>>794 コード打ち込みの時点でそのエラーをコンパイルエラーとして吐き出すほどeclipseは優秀になったの?
ま、いいや。
んで、そのエラーとなってるfindViewByIdはどこで呼んでいるの?それをthis.findViewByIdに書き直した時のthisは一体何者?
Eclipseを再起動しろ。 俺はそれで直った。
> View から ListView へキャストすることはできません 実はクラス内クラスでextends ViewじゃないListViewを作っちゃってるとか
>>797 eclipseって昔はコンパイルエラー表示しなかったのか。
今だとうざいぐらい表示してくれるのに。
仕事で作ってるアプリを「Androidタブレットでも動くようにしろ」って言われたんだけど、 だいたいどのくらいの機種で動作確認とったらいいかな? 3.0,3.1,3.2のそれぞれでテストする…くらいしか思いつかないけど、 他にも押さえといたほうがいいポイントとか機種があったら教えてください
>>800 そりゃあコンパイルする設定にしてれば・・・
>>801 AndroidタブレットがOSのバージョン指定してないなら2.xなタブレットが海外製ので結構ある。しかもARM8+RAM512Mだったりする。
一方3.xならだいたいtegra2クラスだから詳しい要求を聞かないと分からない。
ぶっちゃけ「Androidタブレットでも動くようにしろ」って言ってるのがどういう端末が存在するかわかってないと思う。
どれでテストするとかじゃなくてどこまで切り捨てないかの問題。
当然、日本では売ってない端末のほうが多数派。技適ついてないから実機テストすらできんよ。
実際問題として画面解像度の最大・最小・今の主流 くらい抑えればいいだろ あとは無理げ
806 :
801 :2011/09/30(金) 07:50:07.53
まあ国内向けアプリなんで技適ないやつは放置でいいと思うが そもそも主流のタブレットなんてあるのか?、っていうね…
>>800 listviewの参照が正しければ
その時点ではエラーにならないだろ
個別に全部テストしないといけないような際どいコード書くなよ、というのがまず大原則として 2.x系のギャラタブと3.x系の適当に1つか2つテストすれば大体動くんじゃないの それで互換性問題が出るようなら根本的にAPIの使い方が間違っている可能性が高い
問題が出るかどうかはテストしないと分からんからな。 ユーザのフィードバックで済ませられる案件ならともかく。
>>784 確かに普通、っていえばJavaでの開発だと思うけど
flash+AIRも間違いではないよ。
ただここはJava開発者が多いから、flashかAIRアプリスレのが質問しやすいと思う。
ペリアArcにttf食わせると死ぬみたいな「えーっ!」ってことも時々あるけど 基本的にはMultiScreenSupportのドキュメントをちゃんと読んでレイアウトをスケーラブルにしておけば 「全機種テスト」の必要はあまりないしそんなテストを保証するのは現実的じゃないと思う 隠しAPIや未定義動作に依存したコード書いて「ボクのコードは正しいのに動かない。非互換だ」とか騒ぐ馬鹿は知らん
813 :
790 :2011/09/30(金) 09:17:17.76
解決いたしました 「ListView」 list = (ListView)findViewById(R.id.list); ここの「ListView」が、クラス名と重なってた事が原因でした 初歩というか論外なミスでした、お騒がせして申し訳ありません
いいってことよ
setContentView() の前に requestWindowFeature(Window.FEATURE_NO_TITLE) を呼び出すことで タイトルバーを非表示にできますが、この後に非表示から表示に切り替える方法はあるでしょうか?
質問です。Viewに対する相対座標がすごく大きい(といってもintの上限を 気にするほどではない)ところに子Viewを配置している状態を長く 続けると何かいやなことが起きるでしょうか。要するに 子View.layout(+100000, +100000, +100100, +100100); this.scrollTo(+100000, +100000); こういう状態です。 SDKに入っているAdapter派生がなんか再利用しづらかったので、 結局自分に必要な最低限のAdapterView派生を作ったのです。 Adapterも作りました。画面外に出たViewをリサイクルする機構は動いてます。 子Viewが増えたときのスクロールの戦略を上記のようにしたのですが、いいのかなぁと。。
820 :
デフォルトの名無しさん :2011/09/30(金) 16:07:41.04
db.beginTransaction(); try{ for (int i = 0; i < list.size(); i++) { ContentValues values = new ContentValues(); values.put(foo); values.put(foo); ... values.put(foo);//15カラム分 db.insert(TABLE_NAME, null, values); } db.setTransactionSuccessful(); } finally { db.endTransaction(); } こんな感じのコードでデータベースにinsertしてるのですがものすごく遅いです 具体的には15カラム(string)x60行で,エミュ上で20秒ほどかかります どこか改善できるところや間違ってるところはないでしょうか?
>>820 compileStatement
それでも遅いならプログレスバー表示して、バックグラウンド化したほうがいい。
っていうか15カラムって多すぎね?
なんのデータ?
822 :
はじめまして :2011/09/30(金) 17:53:16.88
アプリの背景画像を、端末の液晶サイズにフィットさせるために 縦横をfill_parentしているのですが キーボードが出現したときに背景画像が縦に縮んでしまいます。 これはどうすればよいのでしょうか?
>>822 マニフェストに縮むなって書いたらいいよ
824 :
デフォルトの名無しさん :2011/09/30(金) 18:15:26.92
ありがとうございます。 記述にミスがありました。コードで背景を指定しています。 bmpDrawer.setGravity(Gravity.FILL); view.setBackgroundDrawable( bmpDrawer ); これではキーボードが出てくると縦に縮んでしまいます。 縮まない設定はどうすればよいのでしょうか?
825 :
デフォルトの名無しさん :2011/09/30(金) 18:56:15.18
やっぱり皆さんJavaで開発してますか? Titaniumなんて使わないんでしょうか?
826 :
デフォルトの名無しさん :2011/09/30(金) 19:43:44.08
>>821 サンクス
実はもうバックグラウンドだったりします
本の諸々のデータなんですが,とりあえず入れてるだけのカラムも有るのでそれ減らせばなんとか…
まずはcompileStatementを試してみます
むしろ、java以外でとこまで作れるのか知りたい。 本屋でいろいろあるけど、作り込みは変わらんのかな?
>>826 androidのエミュは非常に重いから、そこでパフォーマンスの話しても始まらないと思うよ。
まぁエミュで快適に動けば、どんな非力な端末でも快適に動くだろうけどな。
タブレットアプリでタブのネストしたいんですが、TabActivityがDeprecatedなんで悩んでいます。 ActionBarをタブにしたとして、もう一つをどうしようかと。 今はButtonを3つ並べてタブに見たてていますが、selectedな画像がないんで残念な形になります。 といってラジオボタンではタブに見えないし、格好いい画像を作るデザイン力もありません。 みなさんはタブのネストはどんな形でされていますか?
TabHost
831 :
デフォルトの名無しさん :2011/09/30(金) 20:40:56.05
度々すいませんcompileStatementを使うために
>>820 を書き換えたのですが
エラーは出ないもののDBへの挿入が失敗するようになりました
db = (new DatabaseOpenHelper(context)).getWritableDatabase();
String[][] datas=(String[][])list.toArray(new String[0][0]);//リストを2次元配列に
db.beginTransaction();
try{
SQLiteStatement stmt = db.compileStatement("insert into テーブル名 values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?);");
for( String[] data: datas){
stmt.bindString(1, data[ 0]);
stmt.bindString(2, data[ 1]);
...
stmt.bindString(15, data[ 14]);
stmt.executeInsert();
}
db.setTransactionSuccessful();
} finally {
db.endTransaction();
}
どこが間違ってるのでしょうか?
>>828 確かに実機で試してみたら1/5くらいに短縮されましたね
832 :
デフォルトの名無しさん :2011/09/30(金) 20:45:49.48
そんなタブが深いアプリとか、最初から設計を間違ってる。 典型的なセンスなしアプリ。 ユーザインターフェース設計を根本から見直せ。
>>819 やっぱり標準の機能では無理ですか。View で似たものを作るようにします。
タブレットなら3.*標準の設定画面みたいに 左にリストビュー、右に通常の画面、みたいにするとか
835 :
829 :2011/09/30(金) 21:28:27.54
>>832 Android版Youtubeとかタブがネストされてる風ですけど。
まぁListViewをそれらしく見せてるだけなのかも知れませんが。
>>834 やはり一般的にはそういった形なんですかね。ありがとうございます。
836 :
デフォルトの名無しさん :2011/09/30(金) 22:07:38.77
Android開発を始めようと思っているのですが、実機は何を買えばいいでしょうか? 電話機にするつもりはないのですが、念のためSIMの入れ替えが効くようにドコモの白ロムを買いたいです。 どなたかアドバイス下さい。
837 :
デフォルトの名無しさん :2011/09/30(金) 22:24:44.97
一番売れてそうなXperiaにしようと思ったけど2.1までだったから 2番目に売れてそうなギャラクシーをオクで買った
Androidタブレットとかのが安いのありそうだけど、 アレじゃダメなの?OS同じだよね?
安いのは中華パッドだろ まともに動かねーよ
HT-03A/カスタムROMでいいのでは? Androidタブレットよりは、数が出ている分、携帯の方が全然安い。
Kindle Fire は感圧式なんかね
日本からは買えないからどうでもいい。
Xperiaの2.1とレグザフォンの2.2とGalaxySの2.3で テストしてる カメラアプリを作る人とかもっと大変なんだろうなー
カメラのシャッター音や光を消せるアプリ? それいいな。何に使いたいかはちょっと離せないけど。
Xperia acro SO-02Cはどうなのでしょう...
ダバデュアダバジャバ
レイアウトのtableLayout1 とか tableRow1 とか ちゃんと名前付けたほうがいいですか
>>848 プログラムから参照されないパーツにはIDは不要。
あとまあ、名前つけるなら内容の想像つくような名前にしろよ
activityStartForResultで起動したのにonActivityresultが呼ばれないのですがsetresultにインテント付けないとこうなるのですか?
なりますん
アプリをSDに移してもサイズが0にならないのはなんで?
デフォルメしたって小さくなるだけで消えたりしない
850です 因みにsetResult(Activity.RESULT_OK, new Intent); finish(); としています。 調べてみると他のサイトではマニュフェストのLunchModeが原因ともありますが、なにも記載せずに動作しませんでした
855 :
デフォルトの名無しさん :2011/10/01(土) 21:29:33.18
「リストを下に引っ張ると更新」ってどうやってるの?
>>849 ありがとうございます。
いちおう名前をつける癖をつけておきます。
本体にもシンボリックリンクみたいなファイルが残るんじゃねーの
韓国は日本をそのまま真似た‘コピー天国’と露骨に非難する映像がインターネットに登場し、韓国ネットユーザーの公憤を買っている。 その間、韓国が日本を模倣しているという批判はあったが、この映像はSNSなどのニューメディアを利用して全世界のネットユーザーに広めようと緻密に制作されているという印象を受ける。 映像には「より多くの人々に韓国と日本の間で今どんなことが起きているかを知らせるために制作した」という内容が入っている。 各国のネットユーザーはこの映像を広め、嫌韓の雰囲気まで形成されつつある。 韓国ネットユーザーは「韓流に冷や水を浴びせる」と不快感を見せている。 この映像は23日現在14万件以上の照会数を記録し、1000件以上のコメントが付くほど注目を集めている。 ネットユーザーは韓国を丸ごと非難する雰囲気だ。 あるネットユーザーは「タイのムエタイまでも韓国にパクられた。‘アンチコリア’グループを結成するべきだ」と書き込んだ。 タイとベトナムのネットユーザーも「韓国に失望した」とコメントしている。 「韓国は自分できちんと作れるものが一つもない」「韓国は同じアジアでも嫌われる」など嫌韓の雰囲気まで出てきている。 「韓流スターを侮辱している」と不快感を表す韓国の世論が日本に伝えられたが、右翼サイト「2ちゃんねる」など日本インターネットコミュニティーには「韓国自体が日本のコピーなのになぜ気分が悪いのか」 「制作したのは韓国人だろう」などのコメントが書き込まれている。
初めてウィジェット作ってみたのですが、 uses-permission使ってないのにDL時に 「保存先」と「電話発信」を許可しますか? って出たのですが仕様ですか?
>>861 野良アプリとして実機にインスコしたんでしょ
マーケットでアップした正式のやつなら出ないみたい
GPSから位置を一回だけ取りたい! requestLocationUpdatesしてonLocationChangedを待つ処理にしているんだけど 携帯を持って実際に移動しないとonLocationChangedが呼ばれないのね・・・ 家のベッドで丸まりながらアプリを使う時とか位置取れないと思うんだけど、みんなどうしてるんですか!? 常に移動しているんですか!?
864 :
デフォルトの名無しさん :2011/10/01(土) 23:23:20.03
標準ボタンがダサいんだけど他に用意されてないの?自分で用意するしか無いのかな
>>864 drawableにxml用意して動的に描くか、画像用意してimagebuttonにするしかないと思われるよ
866 :
デフォルトの名無しさん :2011/10/01(土) 23:27:05.89
Could not create crash message java.lang.NullPointerException ってメッセージが出てfinshで落ちます 助けてください
>>863 LocationManagerの
getLastKnownLocation(LocationManager.GPS_PROVIDER);
じゃだめかい
>>864 xmlでグラデーションかけて角丸、フォントに影つけると少しはまともになる
871 :
デフォルトの名無しさん :2011/10/01(土) 23:40:52.16
>>868 getLastKnownLocationだと前に別のアプリで取得したGPS位置が取れちゃうんだよね
1.requestLocationUpdates
2.(onLocationChangedが呼ばれる)
3.getLastKnownLocationで位置取得
という流れなら問題無いんだけど
1.requestLocationUpdates
2.(onLocationChangedが呼ばれない)
という流れになった場合、GPS取得に時間がかかってるのか?位置移動していないのか?分からないから
getLastKnownLocationすると、昨日google mapで取得した位置とかが取れてしまう可能性が出てしまう
GPS取得は完了したけど、位置移動してないよ〜。ていうリスナーがあればいいんだけどなぁ
874 :
デフォルトの名無しさん :2011/10/02(日) 00:27:25.92
グーグルマップとGPSを使ってアプリ開発をしています。 自分の現在位置を表示できます。 今後、複数のGPSを使って、位置情報を同一画面で共有できるように したいと思っているのですが、どうしたらいいかわかりません。 どなたか教えていただけませんか。 よろしくお願いします。
デベロッパーコンソールにエラーレポートが送られてきたんだけど、 public class MyService extends Service { private static final String ACTION_ALARM = "com.android.myapp.ALARM"; private static boolean flag = false; @Override public void onStart(Intent in, int si) { if(ACTION_ALARM.equals(in.getAction())){ ←ここでNullPointerException flag = true; } 〜〜略〜〜 上記矢印の部分でNullPointerExceptionが発生してるらしい。 手元の携帯では再現しない。 ACTION_ALARMはAlarmManagerのIntentです。 情報少ないけど、どんな事が原因として考えられますか?
10個のボタンをすべて違う画像にしたいんですが 各ボタンのselectorのxmlを用意しないとできませんか?
>>877 onStartの引数のIntentがnullになるって事あるんですか?
>>878 その場所なら
inがnull以外の原因でヌルポにならない
880 :
875 :2011/10/02(日) 01:22:46.17
>>873 getLastKnownLocation で取得した位置情報には精度と時刻があるから、それを見て捨てるかどうか決めればいい。
あと衛星数もちゃんと取得して表示しとけ。rad*koみたいにな。
ネットワーク位置情報を信用できないケースは色々大変ではあるな。
XPERIA SO-01B Ver 2.1.1 で、IPA ゴシック(ttf) が使えなかったけどなんでだろう。 フォントは読み込めてて、内部でもちゃんと保持できてるのは確認したけど フォント情報(FontMetrics)が、全部0で返ってきたり、実際フォントが適応されてなかったりとかで ちょっと、困った。 因みに同じアプリでGalaxyTabでは問題なく使えてる。 OTFのみかちゃんフォントで試したら、どちらも問題なかったので TTFフォントが使えないのかな。
ListViewに関する質問です。 100個ぐらいのTextViewが並んでいて、その色をpositionの値に応じて変えてみたのですが、 なぜかスクロールすると無関係なTextViewの色も変わってしまいます。 何か対策方法はないでしょうか?
>>883 スクロール時にviewを再利用しているからかな
getviewで確認してみたら?
886 :
882 :2011/10/02(日) 08:24:54.79
消さずにgetviewの中でposition見る等で、 色を戻すなり付けるなり
>>888 getviewの中でposition見て色を変えているのですが、
スクロールすると、そのpositionで無いはずのTextViewの色も変わってしまいます・・・。
>>890 TextView内の要素を検索して、それで判断するようにしたら出来るようになりました。
お騒がせしました。
logを出力して、それを自動スクロールさせたいと思っています。 そのため、TextViewをScrollViewで挟んで、TextViewにappendするたびに ScrollViewにfullScroll(ScrollView.FOCUS_DOWN);を実行しました。 でも、2行にわたるような文字列をappendした場合、2行目が隠れる位置まで しかスクロールされません。 appendした後に指で、ぐいっと動かすと2行分ぐらいまだスクロールする余地があります。 これを完全にスクロールするためにはどうしたらよいのでしょうか?
ListViewでImageButton使ってるとsetOnTouchListenerが効かないみたいなのですが、 解決方法わかるかたいますか?
AppWidget で、OSにメモリを勝手に開放されて苦しんでいます。 Activity であれば、onSaveInstanceState にデータを永続化する処理を入れて、 onRestoreInstanceState で復元するなどの手立てがありそうですが、 AppWidget の場合、どうやってOSからのkillをとらえればよいのでしょうか。 または、開放されないような手立てがあれば教えて下さい。
>>893 ImageButtonのtouchlistenerからsetOnTouchListenerを呼ぶんだ
SDKについての質問はここでしてもいいんですか?
>>894 サービスたててないの?
死んで困るような処理はwidgetでやらんもんじゃね
899 :
デフォルトの名無しさん :2011/10/02(日) 17:07:48.57
ImageViewで透過pngを表示させた時って、勝手に後ろ(?)の画像や背景色が透過されるわけじゃないんでしょうか。 透明部分のはずのところが真っ黒に塗られてしまいます。
>>898 サービスは立てています。
でも、サービス自体に定義した static変数なんかは軒並みクリアされてしまいますし、
場合によっては、サービスからセットしたonClick を拾うための PendingIntent なんかも
キャンセルされてるっぽい挙動です。
>>900 stopしていないサービス(を含むプロセス)が殺されるのってよほどメモリがないときだけど
自分でメモリ使いすぎてるとか
長時間常駐するサービスでたまに殺されてもしかたないものなら、onStartCommandでflag見て復元処理
902 :
デフォルトの名無しさん :2011/10/02(日) 18:44:50.04
質問です。 いくら探しても見つからないので出来ないかもなのですが、 アプリ自分自身を再起動させることは可能でしょうか? ホームから戻ってきたときにメモリが開放されていたら再起動したいと思っています。 よろしくお願いします。
プログラム内で、例えばホットワードを日本ならYahoo!から取ってくる、 それ以外ならGoogleから取ってくるといったように処理をわけたいのですが ローカライズ?国?みたいなのを確認するにはどうしたらいいんでしょうか? リソースは国別に用意すればいいというのは知っているのですが…
Locale.getDefault() じゃあかんの?
906 :
デフォルトの名無しさん :2011/10/02(日) 19:18:39.47
>905 アプリ起動->ホームボタン->色々やって戻る とするとメモリが開放されていて落ちてしまいます。 アクティブ数も多くデータもクラス化されているので復帰が難しのでコアデータ以外は全て初期化して タイトルへ戻したいと考えています。 是非ご存知でしたらよろしくおねがいします。
>>906 savedInstanceStateもしくはParcelableだっけかで調べてみ。綴りは気にすんな。
ListViewで、あとから追加した文字列が画面下の方へ行ってしまうのを 画面上の方に表示したいです。 どうしたらいいですか?
909 :
デフォルトの名無しさん :2011/10/02(日) 21:02:11.83
>907 再起動は無理ですか?
質問内容をまとめてみました activityStartForResultで起動したのにonActivityresultが呼ばれない問題 setResult(Activity.RESULT_OK, new Intent); finish(); としています。 マニュフェストのLunchModeが原因ともあるが、なにも記載せずに動作しない 解決方法宜しくお願いします。
>>909 自分インテント投げて、finishでいんじゃね?
913 :
デフォルトの名無しさん :2011/10/02(日) 22:16:05.65
>912 ありがとう試してみます。
>>911 activityStartForResultを使っているのが問題です。
非rooted端末で、他アプリのclasses.dexをコピーする方法をお教えください。 AppMonsterは非rootedでもapkをバックアップできるので、 同様のことを自分でも実装できると思っているのですが…。
Application の Context と Activity の Context は何か違いがあるでしょうか? View のコンストラクタにどちらを与えても結果は同じでしょうか?
場合によって違う Activityのコンテキストはインスタンスに依存してApplicationのコンテキストは静的なアプリケーションに依存する そのViewが求めるコンテキストがインスタンスに依存するものだった場合にアプリケーションに依存するコンテキストを渡すと落ちる
>そのViewが求めるコンテキストがインスタンスに依存するものだった場合にアプリケーションに依存するコンテキストを渡すと落ちる ライブラリの設計が糞すぎるwwww
mediaPlayerのCreateとかにApplicatonContextを渡すと落ちるよね
ActionBarをタブにすると、addTabする度にselectedイベントが走る。 解決策はActionBarのNavigationModeをaddTabより後に設定する。 ってのに、出会った時は参照透過性って大事だなって思ったな。
なんでActionBarをタブにするんだ
ググる先生が、タブ使いたいなら今後はこちらを使うようにと下知賜れたから。
いや、業務では手続き型言語ばかりだ。 趣味というか一般教養レベルでschemeやhaskellもかじったけど。 だがせめてビルダーを用意するなりして、順序を隠蔽してほしかったと思う。
>>914 startactivityforresultのミスでした
まだ呼ばれません。。
>>900 そもそも絶対にkillされないアプリは書けない
2.3以降はホームアプリさえkillされる
それでもkillされたくなければAlarmManager使って1秒に1回
startServiceさせれば滅多にkillされなくなるが
安定性もお行儀もバッテリの持ちも良くないことは覚悟すべし
ListViewで、自動的にスクロールするようにしたいんですが、 そういったメソッドってありますか?
スロットみたいにしたいってこと?
>>929 setSelectionで指定したpositionまで飛ぶのはわかったのですが、
その間のアニメーション、動いてる部分が無いので、それが欲しいのです。
ちなみにAndroid2.2にはそういったメソッドがありましたが、1.6だと無いようなので、
自分で作るしかないですかね?
onDestroy()でfinish()を呼ぶと、実機を縦横変換した時にfinishが呼ばれて変数の受け渡しができなくなってしまいませんか?
なんでfinish呼ぶの?
戻るボタン押したときとかメニューで終了おしたときにfinish()呼ぶ
finishでondestroyが呼ばれるんじゃないのん
戻るボタン押したときにfinish呼ばないとどうなるの?
これはひどい
他アプリから住所情報を持たせナビにインテント渡して 処理させることは可能でしょうか?
SQLiteOpenHelperクラスについて教えてください。 onCreate()、onUpgrade()を実装した一般的なHelperクラスを作成し、 DBを検索するActivityで DB名を指定して、getReadableDatabase()を実行すると、 存在しないDBを指定した場合、DBのうつわだけ作成されます。 存在しない場合、これを作成されないようにする方法はありますか?
2.2で作ってるアプリを3.0以降のデバイスで実行すると、下段のシステムバーに アプリの下橋が隠されてしまいます。 WindowManager.getDefaultDisplay() が返すwidthとheightの値がシステムバーも 含んだ物理モニター領域担っているのが原因のようです。 2.2環境のビルドでは3.0に対応した最適化は出来ないと思うのですが、3.0のシステムバー を除いた領域をアプリが取得できるようなAPIは2.2以前には無いですか? よろしくお願いします
そりゃDisplayのサイズだし。Viewのサイズを取りましょう まあroot領域のサイズくらいonCreate時点で確定してくれよと思わんではないがね
>>938 なぜ存在しないDBを指定する必要があるのか?
直接Androidに関係するわけじゃないんだけど Google Codeのソースって一括でダウロードできないの?
無理
944 :
デフォルトの名無しさん :2011/10/03(月) 20:48:40.47
Project Hostingのこと? subversionやmercurial入れてチェックアウトする
そうか...めんどくさいな...まあ公開してくれるだけありがたいんだよな
>>937 可能。
geo:0,0?q=横浜
投げれば検索される。
948 :
デフォルトの名無しさん :2011/10/03(月) 22:29:58.93
Could not create crash message java.lang.NullPointerException
949 :
デフォルトの名無しさん :2011/10/03(月) 22:59:57.24
ドラッグをonScrollで検出できるのはわかったのですが、ドラッグ開始と終了の座標にあるViewはどうやったら取得できるでしょう? 座標を指定してレイアウトからコンポーネントを取得するようなメソッドがあるのでそうか?
オレログを作ろうと思います オレ専用のログです
はい
952 :
デフォルトの名無しさん :2011/10/04(火) 00:19:10.66
正直、マルチスレッドでどこでヌルポになっているか分からない・・・
953 :
デフォルトの名無しさん :2011/10/04(火) 00:32:27.38
htmlの<form>を埋め込みたいんだけどブラウザを使う以外の方法あるかな?
Intent intent = new Intent(this, (Class<?>)activities[groupPosition][childPosition]); Class<?>の意味がわからないんだけど、わかる人いるかな? ジェネリックスでキャストしてるぽいけど<?>ってことは型は何でもいいってことなのかな?よくわからん
何でもいいし何の意味もない どんなクラスのClass<>も受け取れるように引数がClass<?>型だからそれに合わせてるだけ
>>955 うおさんくすこ
はじめてみるかきかただったからびっくりした
この先何度でもみるさね
>>941 売上データの入ったDBが日付別に(DB0901,DB0902,,,という感じで)いくつもあって、
ユーザーが見たい日付を選択すると、["DB"+日付]でDB名を生成してデータを
取得する仕組みなんですが、毎日データがあるわけではないのでデータの無い日付を
指定するとからっぽのゴミができてしまうんです。
DBをいくつも生成…だと?
>>958 DBの存在を登録するDBも用意して、事前にチェックすれば?
ファイルの存在チェックすれば
962 :
デフォルトの名無しさん :2011/10/04(火) 08:07:22.48
>>958 素朴な疑問なんだけどなんでわざわざDBを何個も使うの?
963 :
デフォルトの名無しさん :2011/10/04(火) 08:42:27.41
>>956 一応気をつけなきゃならないのがClass<?>はClass<Object>じゃなくてClass<? extends Object>だから、
その共変型オブジェクトを直接代入は可能だけど、要素の追加はできないって所
既に完成している汎用的に使える行列演算メソッドを実装したい時なんかは結構使うけど
1からコレクションを構成するのには使えないのに注意
>>958 やっぱりそういう使い方してたのね…。
DBの設計し直した方がいい。
>Class<? extends Object> これ見るたびにソースから|T|指定できるようにしろksgとかClass.cast()やClass.isInstance()なんて コード書いてる最中は存在忘れるだろとか思う。毎回instanceof Tしてから思い出すぜ。
966 :
デフォルトの名無しさん :2011/10/04(火) 11:00:49.71
SurfaceViewをスレッドで回して描画しているのですが、
http://www.hoge256.net/2009/09/462.html を参考に
GestureDetector.OnGestureListenerと
GestureDetector.OnDoubleTapListenerを実装してみたところ、
以下の順で呼び出しがなされました。
onTouchEvent:ACTION_DOWN
onDown
onShowPress
onLongPress
問題点は以下の3つです。
1.MotionEvent.ACTION_MOVEやMotionEvent.ACTION_UPが呼ばれない。
2.軽く触れただけなのに、必ずLongPressが呼ばれてしまう。
3.フリックしても、onFlingが呼ばれない。
ダブルタップしても、onDoubleTapが呼ばれない。
というか上記イベント以外が呼ばれない。
どうすれば解決できるでしょうか?
なんでもないところでClassCastException起きてて解決できずに狼狽。 なんとなくリフレッシュ→リビルドしたら消えた。俺の半日返せちくしょー。
968 :
966 :2011/10/04(火) 11:49:24.34
自己解決しました。 return true; にしてみたら、解決しました。
>>967 まだ青いな。問題が起きたらリフレッシュ→リビルドってのは、
呼吸するのと同じように無意識にやっちゃうようになるもんだ。
>>958 そりゃあ斬新すぎるんじゃなかろうか
日付毎にテーブル作るとか、
データテーブルに日付列を入れるとかじゃダメなの?
放置型RPGを作ってみたいのですが参考になる本やサイトってないですか?
Android NDK6bでAndoroid3.1のAPIレベル12関数群は使用できますか?
一つの AnimationDrawable インスタンスを複数の ImageView インスタンスの BackgroundDrawable として共有しても問題ないでしょうか? 試すと一つの ImageView しかアニメーションしないんですが。
スレチだったら申し訳ない、質問です コマンドプロンプトからadb shellでDBの中身を確認したのですが、日本語が文字化けしています。 あらあかじめUTF-8を指定してadb shellを実行しても文字化けが起こるのですが、対処法はあるのでしょうか
アプリの起動時に画面を縦か横かを選択し、センサは無視したいんですが、 どうすればいいですか。AndroidManifestのandroid:screenOrientationだと 縦か横かどちらかに固定されてしまうので選択できません。
LinearLayoutに色を設定したいのですが、 xmlでandroid:background="#aaaaaa"と書くと色がつきますが、 ソース内で.setBackgroundColor(0xaaaaaa);としても色がつきません。 setBackgroundColorではなく、他のメソッドを使うのでしょうか? それともLinearLayoutに動的に色は設定できないとか制約があるのでしょうか?
自己解決? setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_〜); android:screenOrientation="nosensor"
>>975 コマンドプロンプトはSHIFT-JISだから無理
chcpかnkfを使う
>>977 setRequestedOrientationだっけ?
xmlで指定できる物は、9割方ソースでも指定できる
>>978 0Xaaaaaaだとアルファが0じゃね?
Colorのスタティックメソッド使いねえ
>>949 onScrollが呼ばれてるってことは
ドラッグじゃなくてスクロールしてね?
984 :
975 :2011/10/04(火) 16:56:20.03
>>980 chcpなども試みましたが、文字化けは解消できませんでした。
Eclipse⇒DDMSから.dbファイルを抜き取り、Pupで表示すると文字化けは起してないので問題はないと思うのですが・・
すいませんソース中は「0xffaaaaaa」ですね。 Color.REDやColor.GREENは試してみましたが、変わりませんでした。 ボタンの背景色は0xffaaaaaaでもColor.REDでも変わったので色の指定は間違っていないと思うのですが、 関連付いていないなんて間抜けな事もありませんし、他に何かないでしょうか。
>>975 linuxで開発すれば何の問題も無し。Macでも。
>>985 LinearLayoutの中にあるViewが透明じゃないんじゃないの?
ContentResolverでquery発行するとき 第1引数のURIで以下の2つを同時に指定したいのですが、何か方法はありますか? MediaStore.Audio.Media.EXTERNAL_CONTENT_URI MediaStore.Audio.Media.INTERNAL_CONTENT_URI 片方ずつ(2回)query発行しないとダメでしょうか? (要は外部メモリ、内部メモリ両方の曲を1度に全て取得したいです)
>>991 そのActivityがスタックされているタスクが生きてる限り生存するとかあるかもしれないね。
普通、自アプリのルートアクティビティの上に積んでくActivityに適用するものだと思ってたけど違うのか正しいのかはわかりますん
>>991 そこで言ってるのはタスクが一度背面に回って再度アクティブになった時に、finishOnTaskLaunchなActivityはスタックからクリアされるよ、ということだと思われ。
英語的には次起動するとき1から起動しますよって感じじゃね?
┏━┯ ┃ | ┃ △,,..,,_ ┃ ./ ;' 3 `ヽーっ_ ┻/l :::: ⊃ ⌒_つ /⌒`) / `'ー---‐''''' ◎、_/
プログラムの要素が皆無だな。
┏━┯━━━━━━━━━━━━━━━━━━━━━━━┓ ┏━━┻━┥ _,,.. ┃ ┠────┤ ⊂⊃ /,' 3~~\ ⊂.⊃ ┃ ┗━━┳━┥..............,,,,傘傘傘::::::::傘傘傘............. おてもと ┃ ┗━┷━━━━━━━━━━━━━━━━━━━━━━━┛
く(⌒V⌒)<人_>v< >::.::./.:.::.::.::.::.::.::.:⌒∨|: : :i: :|: : :| : : j∧i:_| `V^\ : ∨:\ーァァ=-、 乙(_ O 人__〈_人__x< `⌒>V.:./.::.::.::.::.::.::}.:.::ヽ:ヘ|: : :i:八 : :i: : //j斗-、 }: : \__∨/ >―yヘ、 ∧ (V厂:∨::::/:::::/:::::∨勹 )゚ ∨.::./::.::.::.::.:| :.::.::';ハ: : l:⌒\|∨ 弋沁 ′_>v'´ ̄: : : : :`丶/⌒}_/ > ///::V/:::/::::/|::::/|:::::i::|∨:\人∧>メ::.::/.:: /|::.::.i::.}:: | : WYr芯 ¨´/: : :〃: : : : : :く⌒\{ /: : :`ヽ/ <::::::::i:::::厶::L 土|-」 |:::::i::|:::::::::〈__ レ仏イ.::.:;'.::.:/=ト/::|.::|:: |\小ゝ)沙 , /: : : : :⌒\ : : : : 〉 入 :`ヽ: : : \ / :: /|::::::|fア示ミ \|人:::/::/:::::V'::}ヾV/厶‐くW ;'::.:|\ヽハ /⌒7 : : : : : : : : : \: :{__/ ∧: : :\: : : 厶イ.八::从弋)ソ =ミ\/::/:::::::ノ-'' r'::リ ル /::.i::| V| : ゝ { /´ /: : : ムヘ: : : : : ヽ: : :ん-{_入: : : : \ . 八{. ` r尓ハ ∨::::// , ヽン厶イ ::.:i::| | : {:.: :{>イ: : ' : {: :{ `\: : : ∧ : 从: :ノ : \: : : : :\ _厶::::ハ ' ヾ)ンノ/:::::乂 、 ∧::.::.::i::| |: ∧: :∨:.|: : i: 八: : 、 ∨/匕∨ ∨⌒ヽノ\_: : : : _∠...∧ f^ 、 厶イ::(丶 ー' .::.::.!\/:/ ∨ 〉∨: :|: 八: : ヽ:ィ\ 弋芯^ }∧: : :ヽ>‐ :::::::::::「 ー イ::.ヽ∧:ゝ > _. <|::.::.i::.|: ∨ {__{: : :Y: :ヽ: : Yf示 `¨´ rヘ ゙̄ヽ: : : : :::::::::::| >r--:::::< │::.::i::.:| ー}:::::::::::/|::.::.i::.| | │: : : {\: \ハゞ'' , /∨ } ̄ ̄ :::::::::::マ ー|::::::::::::::/\|::.:| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄| / ノ | .\::::::::\__/:::::::::: /}/ V| −終− ト _ ⌒ />く__ノ
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。