Androidプログラミング質問スレ Part13
1乙
4 :
デフォルトの名無しさん :2011/10/05(水) 21:17:11.70
>>1 乙です。
さっそくですみません。Bitmapについて、もしくはFileについての質問になると思うのですが、
リソースのPNGファイルをBitmapにセットする時は
Bitmap bitmap = BitmapFactory.decodeResource(getResources() , R.drawable.bitmapfile);
で呼び込めるのですが、SDカードのPNGファイルをbitmapにセットする時の方法がいまいち良く分かりません。
試した事が以下の方法
private filepath;
public void bitmapFile(){
String sdfile = Environment.getExternalStorageState();
if(!sdfile.equals(Environment.MEDIA_MOUNTED)){
filepath = Environment.getDataDirectory();
}
else{
filepath = new File("/sdcard/");
filepath.mkdirs();
}
String BITMAP = filepath.getAbsolutePath() + "/pingfile.PNG";
File image = new File(BITMAP);
try{
FileInputStream file = new FileInputStream(image);
bitmap = BitmapFactory.decodeStream(file);
}
catch(FileNotFoundException e){}
}
これだと何も呼び込まれないです・・。何がおかしいのでしょうか?
pingfile.PNG ↓ pingfile.png
BitmapFactoryにファイル名指定できるメソッドもあるからそっちの方が楽だと思うぞ
windows用に人気のあるアプリが作れないカスが なんでandroid用だったら作れると思ってしまえるのか
8 :
デフォルトの名無しさん :2011/10/05(水) 22:59:30.61
>>5 >>6 すみません、画像は再度試したら読み込めました。なので、
別のメソッドが原因で表示がうまくいっていなかったようです。
>>6 BitmapFactoryでファイル名を指定は
BitmapFactory.decodeFile(path,引数);ですかね?
ただ、読み込んだ画像にpathで線を引いてもまた元の状態に戻るんですよね・・
また、bitmap.copy〜をして別のBitmap bitmap2などに代入しても同じです。
これは最初の質問とはまた別の質問なのですが。
それにしてもAndroidのBitmapクラスやFileの読み書きは奥が深いですね。
Fileを選択したりフォルダの中を全て読み込んだり表示したりする方法がすごくややこしい。
エミュレータがクソ重たいんですが、 開発は実機でやるしかないんですか?
10 :
デフォルトの名無しさん :2011/10/05(水) 23:18:28.76
Canvasをnewし直してなかっただけでした。 なんかスレ汚しばかりしてすまん。
>>9 実機持ってるなら使え。持ってないなら諦めてエミュ。
>>9 中古でいいから実機にすればサクサクになる(1万5千円くらいかな)
電話契約せずWi-Fiアダプタを付ければ家で開発できる(千円)
13 :
デフォルトの名無しさん :2011/10/06(木) 05:56:34.58
方位センサーがいかれたかも・・・ センサの値取得してもどこ指しても230°付近をうろうろしてる 昨日端末を落としちゃったんだけど、センサーってそれで壊れたりするもんなの・・・? スレチだったらごめん。当方DesireHD。
電源切ってバッテリー抜け
>>4 細かいことだけどSDカードのパスは決め打ちしないで
Environment.getExternalStorageDirectory()を
使うべし
実機によって/mnt/sdcard/だったりするから決め打ちは危険
ふと気になったんですが みなさん、最終ビルドの際、 ログ出力(android.util.Log) って削除されます? デバッグ用にある程度残して置きたいけど、セキュリティ上や実行速度的に良くないなら ラッパークラス作ってコメントアウトする/しないを一元管理とかするのがいいのかな?
17 :
デフォルトの名無しさん :2011/10/06(木) 09:51:17.78
>>15 ありがとう。ちなみに
Environment.getExternalStorageDirectory().toString();
と言う風にtoString()でString型に変換する事が出来たので、
このメソッドに+"任意のフォルダ名"とする事も出来ました。
>>17 toString()を使わずに、
Environment.getExternalStorageDirectory().getPath();
としたほうがいいぞ。
物によるかもしれませんが、皆androidでユニットテストしてます?
色々本屋ネットをあさったのですが出てこないので質問です BitmapをgetPixelsでピクセルデータ取得し、 ピクセル単位の座標を指定して色を抜き取ることは出来たのですが Canvasに対して直接座標指定して、ピクセルの色などの情報を抜き出すことって 出来ないんでしょうか? 座標を指定してソコに書き込むツールは豊富なんですが、 書き込んだ後、その座標にナニが存在しているかデータとして取れなくて困ってます
後々の手間の事を考えると、リリース前にしてる。
sqlからcountで件数を取得したい場合はどうすればいいのでしょうか。 普通に検索結果を取得したい場合は SELECT 〜 FROM 〜 WHERE 〜 で、rawQueryしたカーソルを getIntなりgetStringすれば取れるのですが、 SELECT COUNT(*) FROM テーブル名; とするとエラーにはなりませんが、getInt(0)やgetString(0)すると 以下のエラーが出てしまいます。 android.database.CursorIndexOutOfBoundsException: Index -1 requested, with a size of 1 書いてあるとおりgetIntの引数は0ですし、-1なんか要求していないのですが、 c.moveToFirst();を書いてもgetIntの引数を1にしてもやはり同じエラーが出ます。 sql文が正しくなければrawQueryの時点でエラーになるでしょうし、 c.getCount()しても1が返ってくるだけで原因がわかりません。 どうかご教授願います。
>>22 AS ROWSとか別名つけてgetInt(0)すれば?
CurorにgetCountってメソッドあるから c.getCount()でも取れるぞ
あ、c.getCount()だとエラーになるのね よく読んでなかったすまん
getInt(0)で駄目なら別名つけてc.getString(c.getColumnIndex("ROWS"))とか。 なんとなくmoveToFirst忘れてそうな気はするけど
>23 >26 別名ROWSをつけてgetInt(0)もc.getString(c.getColumnIndex("ROWS"))も試してみましたが、 やはり同様のエラーが出てしまいました。 そもそもindexに-1なんて要求してないのにこのエラーが出てくるのがおかしいんですよね。 もう少し探ってみます。 ありがとうございました。
>>22 似たようなことやったときは
countを使うとどうしてもうまくうごかなかったんで
countを除いた検索条件で取得して、
cursor.getCount()でお茶濁して対応した
千件くらいなら動作にあまり影響ないはず
>>27 丁度やりやすいプロジェクト開いてたから試してみた。
やっぱりrawQueryしてmoveToFirstせずにgetIntするとそのエラーでるね。
-1なんて要求してないというか、行(カーソル)を指定してないから初期値の-1になってるだけじゃないか?
すみません教えてください。 GalaxyS2の実機で開発してるんですが、マニフェストで横画面を指定している のに、スリープから復帰する瞬間だけ画面が一瞬縦方向になるようです。 (自アプリだけでなくマーケットの他のアプリも同様の現象が見られます) onWindowFocusChanged呼び出し時でもviewから縦横逆の数字が取れます。 何か対策できないでしょうか?
つ DatabaseUtils#queryNumEntries
>>20 少し遠回りな方法だけど
new Canvas(bitmap)
ここで定義したcanvasはbitmapの中身と全く同じ画像イメージを持つようになる
かんばすに書き込んだイメージでーたはbitmap.getPixcels経由で取れるようになる
て3すと てすと てうsと てうs テスト
34 :
デフォルトの名無しさん :2011/10/06(木) 21:12:30.81
外部URLから読み込む画像付きlistviewが動作カクカクでどうするか迷ってる キャッシュしてみた→でも結局一度目はカクカクだよね 最初に全部読み込んでみた→ヌルヌルになったものの最初の読み込みに時間がかかった DBにblobで保存してみた→ストレージ圧迫しすぎワロタ 行数が割とある画像付きlistviewを使うとき、普通はどうするもんなの?
>>34 画像を読み込んだ時にListView#invalidateViewsする
回数をわざと減らす
もちろんキャッシュはする前提で
>>34 ListViewってことは多分getViewで画像を表示させようとしてると思うけど、
その中で直接ダウンロード→表示とするんじゃなくて、
キャッシュがある場合は表示→無い場合は非同期でダウンロード→ダウンロード終了時にListViewの再描画
とするとある程度回避できる。
>>35 が言ってるみたいに、画面に表示される分全てのダウンロードが終わってから再描画にしても良い
なんでGalaxy系ってSDカード入れて無くても Environment.getExternalStorageState()で?MEDIA_MOUNTEDって返ってくるんですか? どうやってSDカードマウントされてるか調べるんでしょうか? あと、Galaxy系以外でも同じような動作をする機種ってあるんでしょうか?
Activity側で記述することが多く、クラスファイルの肥大化が進み可読性が悪くなってしまいます。 複数のファイルに分割するなどして解決できればいいのですが、普通はどのような方法をとるのでしょうか? もちろん処理毎に分けれる場合はクラスを作ってはいますが、各Viewの処理やActivityのイベントでごちゃごちゃしてしまいます。
>>37 内蔵メモリ内に外部メモリの領域があるから
>>38 既にAndroid関係ないことを理解出来てればおk。
2chMateでも他でもよく見かけるスクルールバーのとこにスクロールするときぴょっと出るのは、なんて言うのですか?自分で実装してるんではなくて、APIにあるんですよね?
>>42 android:fastScrollEnabled="true"
FastScroller
このへんでぐぐれ
>>32 やっぱりソレしかないですか……
ちょうど今その方法で表現してたんですが
あまりにも回りくどいので、直接的な方法を探してたんです
ありがとうございました
ActivityはsetContentsでレイアウトxmlを適用できますが、 View(の派生クラス)にレイアウトxmlを適用ってできますか? 例えばFrameLayoutをルートにしたxmlをFrameLayout派生クラスに適用と。 判らなかったのでaddViewで子として登録してますが、一段階層が深くなったのが気になって…
textviewのテキストにUnderlineSpan()を使用してアンダーラインを加えるのですが、 テキストの色に合わせてアンダーラインの色も変化してしまって困っています。 アンダーラインの色を独立して設定する方法はないでしょうか?
eeePad TransformerでもgetExternal〜で内蔵メモリ返してくるな。 更にGalaxyと違ってパーティションもわかれてないっぽい。 真SDカードのパスを取れる一般的メソッドが欲しいわ。
android-x86-2.2-generic.iso 入れてみたんだけど、どうしたらMarket使えるようになるの? アカウントの初期設定とかないんだけど
それはバカが使うもんじゃないんだよ。
ndkでコンパイルされたプログラムは速度優先で最適化されているんですか?
onCreate時に、FEATURE_NO_TITLE や FLAG_FULLSCREENで 全画面表示アプリにしてるんですが、 画面上段にうっすらとステータスバーかタイトルバーの陰っぽいのが残ってます。(画面外にある バーの陰だけが画面内の入ってる感じと言えばイメージがわくでしょうか?) これの消し方を教えてください。
半年以上ぶりにアプリ更新したら >Samsung SC-01C このアイテムはお使いの端末に対応していません。 て言われたんだが、どうすりゃいいのん? 端末自体は除外してないし、前verは普通にインストールできたし
56 :
51 :2011/10/07(金) 19:02:26.15
>>54 焼き付きじゃないみたいですね。画面の縦横を変えると、それに応じてシャドー?も
変わるので。
57 :
55 :2011/10/07(金) 19:04:19.93
LCD Density変更してると出来ない場合があるのか。誰得 元に戻したらインストールできた
AndroidでPHPのexit(10)やdie(10)などの終了コードを取得する方法を教えて下さい。
>>56 タイトルバーの影は別途消す必要があるはず
Y.A.Mの(ryで見た記憶がある
>>58 Process#waitFor()とか
Process#exitValue()とか
61 :
42 :2011/10/07(金) 20:18:09.96
>>43 ありがとお!
大きくなったら結婚したげる!
前スレで書き込んですぐ落ちてしまったのでこちらに書きます activityStartForResultで起動したのにonActivityresultが呼ばれなくて困っています 記述は setResult(Activity.RESULT_OK, new Intent); finish(); としています。 ググってみるとマニュフェストのLunchModeが原因ともありますが、なにも記載せずにでも動作しないのでとても困っています 解決方法宜しくお願いします。
クラス内でボタンを作成してID付けようとしたら、 「R.idは解決できません〜」というエラーが発生しました。 調べてみたら、xmlファイルの方にボタンの設定を書かけばエラーがなくなるとのこと だったのですが、R.idの未定義エラーはこの方法でしか解決できないのでしょうか? また、Androidアプリはボタンやビュー等のオブジェクトはxmlファイルの方に 記述するのが一般的なのでしょうか?クラス内のコードだけで作成しようとしても R.idの未定義エラーとか出てきちゃうんですかね…
>>62 ActivityGroupやFragments使ってるとなんか違った気がする
>>63 R.*はXMLに記述されたリソースをJavaから参照するために生成されるもの
Javaだけでやりたいんだったら重複しないような好きなIDを振れば良い
>>59 androidからphpプログラムを起動する場合の時ではなく、サーバーに置かれているphpにアクセスする場合なんです。
説明不足ですみません。
>>66 サーバーに置かれているphpをどうやって動かすかによる。HTTP? SSH?
>>66 サーバープロセスのexitコードって事?
独自の終了関数でも作って、終了の前にクライアントに渡すか、
forkしてリターンコード受け取ってクライアント側に吐き出す。
今日、最新のSDKにアップデートしたら javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found. が出るようになってしまいました。 アプデする以前にコンパイルしたものでは問題が出ません。 コードは同じです。 何かご存知の方いますか?
70 :
デフォルトの名無しさん :2011/10/07(金) 23:54:39.38
チェックボックス付きリストヴーで「全てのチェックボックスにチェックを入れる」を実現したいです 一応getChildAtをgetChildCount回ループさせることで「画面内の項目のみ」チェックを入れることが出来ました。 が、全てを取得する方法がわかりません
>>70 チェックをつけた場合に何らかの値を設定してると思う
当然その値によって画面上はチェックが付いてるように見える
それらの値を全て変えた後に、リストビューの再表示を行えばOK
72 :
デフォルトの名無しさん :2011/10/08(土) 00:12:27.81
facebookアプリで投稿のダイアログ出さずに、 edittextに入力したものをbuttonを押したら直で投稿することは可能でしょうか?
画面の一番上にロゴを表示してその下にタブを 入れたいんだがどうしたらいい?
>>72 スレチ、アプリスレへGo
>>73 TabActivity使ってるんだったらタイトルバーカスタマイズかなあ
それか自前でタブっぽいレイアウト作るか
静的に振りたいならそうだけど、動的な場合はどうすんだよ 100個あったら100個分のIDをXMLに書いて配列にでもつっこんどくのかよ
別にIDって必須じゃないぞ
例えば、画面上に△みたいなアイコンを常駐させて、 その△を他のアプリのボタン上に持って行ってタップしたらその「他のアプリ」 のボタンを押すようなものって作れるんですか? マウスポインタのようなのもを作りたいのです
マウスポインタのような野茂を作るよりは、 野茂のようなマウスポインタを作る方が簡単だ。
コードだけで書くのにIDをつける理由って何がある?
他のクラスから参照したい場合、Activityが参照できてれば、View自体を渡さなくてもIDさえ分かれば参照できるとか?
タブブラウザ的なものを作ろうと思い WebViewを複数FrameLayoutに重ねてみたのですが どれかでFlashを再生すると、Flashのビューが全てのWebViewの上にきてしまい、タブ切り換え後にも残ります Dolphin browserなどではタブ切り替えでFlashのビューも切り替わるので、方法はあるのだと思いますが どのように対処するのがベターなのでしょうか?
84 :
デフォルトの名無しさん :2011/10/08(土) 15:13:15.39
微妙にスレチかも知れませんが、3Gなどの遅い回線でのテストをしたい場合の方法とか有るのでしょうか キャリア契約をしてないので3G回線が使えなくて困ってます
85 :
デフォルトの名無しさん :2011/10/08(土) 16:20:37.96
>>84 PCをルータにして、帯域絞れば?
bjdなどのプロキシ+Negiesで好きな速度には出来る。
>>85 リストビューの各行のビューは再利用される、ということを理解しておくべき
URLの例のように、AsyncTaskにImageViewを渡した場合、
表示されるまでにスクロールして別の行が表示されたとき
元々表示されていた行の画像が表示されてしまう場合がある
表示させるViewの設定はgetView内でやらないとだめ
流れとしては
getViewが呼ばれる
→画像のキャッシュが無いため非同期で読み込み開始
→ダウンロードした画像をキャッシュとして保存したらリストビューの再表示(invalidateViews)
→getViewが呼ばれる
→キャッシュがあるので画像が表示される
LEDを点灯させたいんですがなにかいい方法はありますか? Notificationを使って点灯させると点灯時間の上限が決まってしまうのですが、 アプリ起動中は常に点灯させるようにしたいです。
89 :
デフォルトの名無しさん :2011/10/08(土) 18:15:30.69
SDK を OS 2.3、Min SDKをOS 1.6にし、 ImageViewの派生クラスでピンチズームなどを色々拡張したクラスを作ったのですが マルチタッチ対応の2.0以前のOSでこのクラスを生成するとVerifyErrorとなってしまいます。 マルチタッチが使えない状態でいいので、このクラスを利用したいのですが Manifestやソースに何かしらの分岐を組み込むことで対処可能でしょうか?
起動しているOSバージョンを調べたら?
>>91 OSは取れたのですがその後の手がわからずで…
下のような感じで出来るかなと思ったんですが。
MyImageView.onTouch(View v, Event event) {
・・・
if (OSが2.0 以上) {
// マルチタッチによるズーム処理
}
// 移動処理
・・・
}
でも1.6の機種でこのMyImageViewのインスタンスを作った時点で
例外がでて分岐までいかないのです。
と・・・ すいません、自己解決しそうです。 クラス内で分岐できないか?リフレクションとかで上手くできないか? と悩んでましたがよくよく考えたらクラス継承と対処できそうです。 class MyImageView extends ImageView; (1.6以前のOSでも可) class MyImageViewMulti extends MyImageView; (2.0以上のOS用) でインスタンス生成の時点でOSによる分岐をさせる事で対処させようかと。 お騒がせしました。
Viewの中に指定した子ビューが存在するかどうか調べるメソッドってありますか?
>>94 そのviewにandroid:idつけてれば、view.findViewByIdで戻り値null判定すれば?
96 :
デフォルトの名無しさん :2011/10/08(土) 21:45:03.33
メインActivityのListViewからサブのActivityを呼んで、サブで何らかのパラメータを変更し、 戻るボタンを押してメインに戻ってきたらメインのリスト項目に反映させる(設定画面とかでよく有るやつです) ということをしたいのですが メインのListViewのスクロール位置を一番上に戻す事無く、この動作をさせることは可能でしょうか
97 :
デフォルトの名無しさん :2011/10/08(土) 21:47:25.73
超基本的で申し訳ないんですが、SDカードの「読み込み」はマニフェストファイルに何も宣言しなくても可能、であってますよね? エミュ上だとなしでも読み込めるんですがなにか勘違いしてないかと。 ぐぐってみると「SDカードへのアクセスは〜マニフェストに記述が必要」というのは見つかるんですが特に「書き込み」と明記されてなくてよくわからない。
実機ひとつはもっとけよ
今のアンドロイドの平均的なスペック(OSバージョン CPU GPU)はどうなっているのでしょう
100 :
42 :2011/10/08(土) 22:10:32.28
>>97 そのパーミッションを声に出して読んでみれば、正解だとわかるはず。
いろんな機種に造詣が深い方にお聞きしたいです。 GalaxyのSDカードのパスはgetExternalStorageDirectoryで取得できないって話を今知りました。 調べたらSystem.getenv("EXTERNAL_STORAGE")で/mnt/sdcard/external_sd(GalaxyのSDカードのパス)を取得できるということはわかったのですが、 現在国内で主に流通してる機種についても、上記のやり方で問題ないでしょうか? これ以外にも機種依存で注意すべき点があれば教えていただきたいです。
>>99 とりあえずWikipedeiaでAndroidのページでも見てみたらいいんじゃないかな
103 :
>>62 :2011/10/08(土) 23:15:46.86
>>64 有難う御座います
書き忘れましたが上記メソッドはAsyncTask内に書いています
>>102 ありがとうございます^^
2.2と2.3が主流なんですね
>>104 有効ダウンロード数7000程度ですが、こんな感じですよ。
1 Android 2.3.3+ 56.3% (3,958)
2 Android 2.2 29.8% (2,100)
3 Android 2.1 10.0% (707)
4 Android 1.6 2.5% (178)
5 Android 3.1 0.8% (59)
6 Android 2.3 0.3% (24)
7 Android 3.0 0.0% (2)
対応させるのが面倒なので、もう2.1以下は切り捨てたいところなんですが、10%以上だとどうにも切り捨て辛いです。
>>96 先頭までスクロールするってことはsetAdapterし直してるんだろうけど、
そうするとListViewの状態も初期化されてしまう。
AdapterのnotifyDataChangedを呼んで、ListViewのinvalidateViewsを呼ぶと状態はそのままで再表示を行ってくれる
>>101 中華Pad(VC882)もそのフォルダ名だった。
参考になる事は無いだろうが、一情報として。
googleのウィジェットのサンプルを試してみたのですが他機種上では動作するのに、sh13cでは動作しません。普通のアプリはusbデバッグできます。 apkにして入れてみるとインストール失敗と出るのでそれが原因のようですが、対処法が分かりません。
メニューからアラートダイアログを表示させた時、処理が若干重いせいか2度押しされてしまうようです(ダイアログが重なって複数起動されてしまう)。 これを防ぐ一般的な方法は何があるでしょう?原始的な2度押しチェックをするもんでしょうか?
>>110 一般的かわからんけど
俺はDialog.isShowing()がfalseなら表示とかやってる
JNAマダー?
114 :
デフォルトの名無しさん :2011/10/09(日) 12:19:00.09
1.あるアプリが登録しているintent一覧を取得する方法はありますか? 2.あるアプリが持っている機能をactivityを呼び出さずに機能だけ利用する方法はありますか?
自分で実装しろよ。
自分自身をHOMEアプリとしてActivityを起動した後、 任意のアプリをバックグラウンドに回して、 ActivityManager#killBackgroundProcesses()で 強制終了させようとしてるんだけど、何故か終了出来ない。 Android2.2以降のプロセス終了方法について知ってる人居たら、 正しい方法教えて欲しい。
>>114 1. dumpsys package で探してみたら?外部には公開しないように設定されていたら出てこないけど。
2. そのアプリ次第。その「activityを呼び出さずに機能だけ利用する方法」が公開されていないのなら自分で実装すべき。
root端末でapkを抜き出してデコンパイルして機能だけを持ってくるなどのセコい手段を使うべきではない。
118 :
デフォルトの名無しさん :2011/10/09(日) 18:20:26.19
cookpadの画面右下にある押したらmenuが開く△ボタンってただのbuttonなんでしょうか? だとしたらどうやったらあんな感じのボタンを作れるのでしょうか
119 :
116 :2011/10/09(日) 18:56:30.34
終了させてもまだスタックに積まれた状態のようだ。 戻るボタンで戻るとアプリが起動してしまう。 よく分からんな…。
>>118 ListViewの上にRelativeLayoutかFrameLayoutでボタンおく。
そのボタンのonClickの処理でメニューが開くようにする。
>>119 タスクのスタックが残ってたらバックグラウンドじゃないからな
122 :
116 :2011/10/09(日) 19:22:22.88
>>121 リファレンスで言ってるバックグラウンドって何だろう?
あるActivityの裏にkillしたいアプリのActivityを持ってくるだけでは
バックグラウンドではないって事かな?
ていうかスマートフォンって確実にソフトを終了させる方法は提供しないもんだからkillできないからって悩んでも時間浪費するだけだぞ。
124 :
デフォルトの名無しさん :2011/10/09(日) 20:49:28.36
>>120 どもです
でもすいませんレイアウト的な点ではなくてボタン?のデザイン的な点でお願いします
ああいうボタン?はどうやって作ってるんでしょうか
GridViewは左上からしかアイテムを表示出来ないのでしょうか? 例えば右上に変更する事は可能でしょうか?
126 :
124 :2011/10/09(日) 22:15:20.32
まだ試してないけど自己怪傑しましたたぶん android:background="@null"でボタン自体を透過させれるんですね
>>123 ndkのdll内部で確保したメモリをdeleteしなかったら、タスクを終了させるアイコンを押して終わらせてもずっとメモリリークしたままですか?
128 :
デフォルトの名無しさん :2011/10/09(日) 23:55:01.65
標準ブラウザの文字をコピーして自アプリにペーストしたら改行が消えてた。 元サイト(というか2ちゃん掲示板)がSHIFT-JISだから改行がLFでなかったからではないかと初心者なりに考えたのですが、 CR/CRLF/LFのどれだったとしてもを確実に改行を判別する方法ってあるんでしょうか?
サンプルとか見てると1つのactivityに1つviewを作るって方法ばっかなんだけど 1つのactivityで全機能を作る方法ってある?
あります
131 :
124 :2011/10/10(月) 01:24:17.81
アプリケーションアトリビュートで親テーマ設定すると各アクティビティに設定したテーマが無効になるみたいなんだけど 例えば特定アクティビティをダイアログ風にしたい場合どうすればいいんだろうか
>>128 そもそもhtmlの表示は改行コードなくても改行されて表示されるぞ
横幅がたりなくて改行されている場合、改行コード入らないのが普通じゃないか?
>>129 addContentsとかlayoutで、1個のactivityに複数のview設定できるけど
1画面まるまる使うような場合だと、オススメはしない。
表示優先度を決めれないので、何かしらのタイミングで優先順番が入れ替わる。
>>45 そんなあなたに mergeタグ お勧め
亀すぎてスマン
>>127 OS側の実装がどうなってるかはわからんけどOSの管理下にないならそうなる。
だから一般的にはライフサイクルを厳密に定義して遷移するたびにああしろこうしろって細かく決まってるんだよ。
電話アプリとか巻き添い死したりキルられたらまずいでしょ。
Android難しい・・・ アクティビティ作ってると強制終了多発・・・
138 :
デフォルトの名無しさん :2011/10/10(月) 12:38:04.52
CSVファイルがDB www
>>135 ウインドウズみたいにプロセス終了時に勝手にリソース開放されたりしないのか
危険だな
プロセス終了時にはリソース解放されるよ。 タスクの終了とプロセスの終了が対応してないだけ。 root activityをfinish してタスクを閉じても、プロセスは再利用するために残される。
アプリ側の実装でこれを変えたいなら、 アプリを終了させた後のonDestroyなんかに System.exit() と書いておけばよろしい。
>>142 それは推奨されてないから薦めるなよ。
OSが管理できなくなって、リソースの開放に失敗する可能性があるぞ。
ちょっと質問させてくれ、画面の更新がされなくてこまってるんだ・・・ 状況はImageView(拡縮・移動に対応させるためScalableViewとして機能追加してるが) を上から順にView0,view2,view1と重ねてる。 view2.move(0.0f, 100.0f)をしたあと、view2.invalidate()してるんだが、次のタッチイベントまでmoveした後の表示にならないんだ。 なんでかな・・・
ああすまん、moveのなかみ this.matrix.setTranslate(x, y); だった
148 :
デフォルトの名無しさん :2011/10/10(月) 14:22:35.97
>>138 DBじゃなくcsvファイルに書き込みでした。すみません
FragmentでSharedPreferences使えないけど どうやって変数を保存すればいいの?
151 :
149 :2011/10/10(月) 14:52:21.96
SharedPreferences pref =getSharedPreferences("pref",MODE_PRIVATE); ↓ SharedPreferences pref = getActivity().getApplicationContext().getSharedPreferences("pref",0x00); で使えた。スレ汚しすまそ
152 :
デフォルトの名無しさん :2011/10/10(月) 14:52:48.92
>>150 あなたのおかげで解決できました!
本当にありがとうございます!
アプリ登録したけど検索しても出てこない・・・パッケージ名直打ちだとアプリのページが出てくるのに。 と思ったらコンテンツレーティングが ユーザー成熟度 - 高 になってたわらたw しかもこれもしかして反映に時間掛かるのか?・・おわた
あれ、ブラウザの検索だと、並べ替えを「人気度」にすると出てくる・・「関連度」だと全くでてこないんだが・・。 いずれにせよ端末から検索できないんじゃおわた。
・・・言語のプルダウンをEnglishにしたら期待通りの検索結果になって表示されたw だれかこの謎を解いてくれ・・てかもう寝る。
156 :
デフォルトの名無しさん :2011/10/10(月) 16:44:54.45
Activityの中でホームアプリ一覧を取得して、対象のホームアプリに遷移させたいのですが、 下記のエラーメッセージが出てしまい、対象のホームアプリに遷移出来ません。 android.content.ActivityNotFoundException: No Activity found to handle Intent { } 以下はActivity内の処理部分を抜粋したものです。 クラス名などが間違っているのでしょうか? Intent intent = new Intent(); intent.setAction(Intent.ACTION_MAIN); intent.addCategory(Intent.CATEGORY_HOME); PackageManager packageManager = getPackageManager(); List<ResolveInfo> infos = packageManager.queryIntentActivities(intent, 0); for(ResolveInfo info : infos){ if(info.activityInfo.packageName.equals(TARGET_PACKAGE_NAME)){ Intent i = new Intent(); i.setClassName(info.activityInfo.packageName, info.activityInfo.name); startActivity(i); // ここで上記Exceptionが発生 break; } }
試しに取得した(であろう)パッケージ名を全て表示してみては?
158 :
156 :2011/10/10(月) 17:35:23.15
>>157 エミュレータで実行して取得したパッケージ名は以下の通りです。
"com.android.launcher"
またTARGET_PACKAGE_NAMEも"com.android.launcher"に
合わせています。
FLAG_NEW_TASKだっけ?それっぽいの付けろ
160 :
156 :2011/10/10(月) 18:12:49.85
>>137 Android Library Project
Activityクラス2からAsyncTaskクラス呼び出して setResult&finishしたときにActivityクラス1の onActivityResultよぶにはどうしたら良いのか教えて下さい この場合記述が特殊だとかはわかりましたが、どうすれば良いのかがわかりませんでした..
普通に画面遷移して情報渡しちゃ駄目なの?
別スレッドからfinishって内部でエラー出てるんじゃね?
bluetoothChatはアプリを終了すると通信も途切れてしまうので アプリ終了後も通信だけは継続させたい。 あと通信継続したままActivity切り替えたい。 サンプルよこせ。 って某OK的な所に書いたら見事にスルーされたぜ。 俺って輝いてる! …… でどうすればいいの。 そもそも入門書1冊読んだだけの人間には無理すぎる題材だけど気にしない。 手元の本には、常時裏で動作させるようなアプリは「サービス」でなんちゃらって。 この辺つついてれば実現できんの?
>>163 いいえ、カメラアプリを作成していましてPrefActivityではなく通常のActivityクラスで作成した設定画面1とし、
その中のボタンを押す事で設定画面2を表示して、
設定画面2でhttp通信をして、結果が条件に合えば設定画面2を閉じて設定画面1の項目の一部に反映という内容で
設定画面1の項目変更をonActivityResult内に記述しています
また、都合によりAsyncTaskクラス内からfinishを行うのは固定です
>>164 onPostExecuteに記述してあるのでアクティビティが終了はするのですがonActivityResultが呼ばれません..
前も同じようなやついたけど、言語仕様より自分のアプリの都合を優先したがるやつは何なの?
>>165 bluetoothに関係する機能を全部サービスで実装すれば出来ます
>>166 とりあえずAsyncTaskとかHttp通信とか抜きでonActivityResultが呼ばれるように作って
機能追加して行ってどの時点で呼ばれなくなるか確認してみそ
>>170 Activity2にボタンつけてsetResultしてFinishしたらきちんと呼ばれました
AsyncTask内で何も書かずにonPostExecute内でset〜すると呼ばれませんでした
startActivityForResult内のインテントの引数でActivityの渡し方が関係しているのでしょうか?
>>171 Intentの引数でActivity渡すっていみふ
>>172 Intent intent = new Intent(this, hoge.class);
startActivityForResult(intent, hoge);
のthis
>>134 さらに亀レスですが
ありがとうございます。
早速調べて試してみます。
みんなのおかげでなんとか形になったんで 俺もやっとアンドロイドマーケットデビューできそう… と思ったらサイトとか用意しなきゃいけないのか! メンドクサイ…
別にツイッターのユーザページでもいいんだぞ、あれは
テキトーにガリビアンコムへのURLでも貼っとけ
メアドでいいじゃん
com.twitter.example
メアドしか登録してねえよ 本当はメアドも登録したくないけど
SharedPreferencesの初期値って何でしょうか? nullですかね あとnullの場合それを判定させるif文は =="null"でいいのでしょうか?
>>181 特にSharedPreferencesの初期値を設定した事はないなぁ。
onCreate直後に変数や文字列を設定してgetすれば、未保存でも0や""が取得できて特にエラーも無いので、
後は==0(数値の場合)もしくはequals("")(ストリングの場合)で比較すればよかったはず。
183 :
181 :2011/10/11(火) 11:28:03.46
>>182 自己解決しました
デフォルト値を決められるようです
hoge = sharedPreferences.getString("hoge", "デフォルトhoge");
184 :
デフォルトの名無しさん :2011/10/11(火) 11:38:20.00
AccountManager.get(getApplicationContext()); これを呼び出すとアプリが強制終了するんですが何故でしょうか? Android 2.3で、コンパイルエラーはありません。 実機でテストしてます。
185 :
デフォルトの名無しさん :2011/10/11(火) 11:41:28.74
getContext()じゃないの?
186 :
184 :2011/10/11(火) 12:03:13.16
マニフェストの設定が間違ってました
ミンスに聞かせたい言葉だ。
数値の詰まった配列をバイナリデータでリソースに持ちたいんですけど XMLじゃないとできないんですか?
あ、もしかしてrawってやつか
nullってさ、、、、、、えっちな、、、、ひびきだよね、、、、い、、、いひひ、、、、 こんなに、、、、nullnullしちゃって、、、いひひ、ひひひ、、、
ポインタにnullを入れて何回でもdisposeしてやる
listviewに50KBくらいの画像をURLから数十枚〜100枚程度 soft reference使いつつ読み込んでるのだけどどうにも途中で落ちてしまう 原因はなんだろうか そしてこういう場合は普通はどうやって原因を見つけるんでしょうか
Log
OOMだろ
動かしちゃ駄目、体液が出ちゃう
minSDK 8とかにしてても2.2からの機能使ってなければ 2.1,1.6にインスコできる?
できる
198 :
デフォルトの名無しさん :2011/10/11(火) 18:35:23.65
Activityを起動した後にMENUボタンを長押しすると ソフトウェアキーボードが表示されてしまいますが、 これを表示させないようにするにはどうすればいいですか?
今デベロッパーコンソールからAPKアップロードしようとしたら、 進捗が0バイトのまま進みません。 Firefox7.0.1、IE9、Android標準ブラウザのすべてでダメでした。 障害中でしょうか? それとも何か原因があるのでしょうか?
>>196 おれもそれやってたんだけどいざ1.6で動かして落ちた時、どのAPIが原因か判らず泣きそうになった。
俺もアップロードできなくなった…
>>199 確かにアプリがアップ出来ない。メンテ中か?
>>171 ちょっと作ってみたけどちゃんとよばれたぞ
もともと今日アイスサンドの発表予定だったから、サイト側がなんか入れ替えてるんじゃない? こっそりアイスサンド対応化作業中とか。 新しいAPIとかどうなるんだろうな。 他スレでパーミッションが大雑把っていう批判があるけど、改善されるんだろうか?
206 :
デフォルトの名無しさん :2011/10/11(火) 20:41:04.26
appがアップできない
>>201 showDialog(int, Bundle)
最初showDialog(int)でダイアログどんどん作ってたんだけど
途中で汎用的なダイアログにしてパラみて不要なウィジェットON/OFFすればいいやと
showDialog(int, Bundle)に変えたら…
ちなみに
BundleなしがAPI level 1でBundleありがlevel 8ね。
BaseAdapter を継承したオリジナルのAdapterで、高速にソートさせたいんですが、 Collections.sort(list, new Comparatorを実装したソートクラス); だと遅いです。 何か高速にソートさせる方法はないでしょうか?
209 :
デフォルトの名無しさん :2011/10/11(火) 21:29:52.88
radiogroupってもしかして2列にすることは不可能? こんな感じに↓ ・foo1 ・foo2 ・foo3 ・baa1 ・baa2 ・baa3
>>208 SQLiteでorder by.
もち、SimpleCursorAdapterで
マーケット駄目だね。明日にしよう。
>>210 BaseAdapterを使わないといけないので
俺もapkをアップできねー 今新着に居るアプリは勝ち組だな…
>>200 おれは念のためProject Build TargetをminSDKにあわせてコンパイル通るか試してる。
使っちゃってるAPIがあったらeclipse先生が赤xマークで教えてくれるよ。
これで全部拾えてるかはわからないけど、、
もう我慢できないよぅ アップロード…させて
217 :
デフォルトの名無しさん :2011/10/11(火) 22:36:52.69
直ったね
Collections.sortでも1000件くらいなら1秒もかからないと思うんだけど…
Javaが遅いんじゃない、お前のコードが遅いんだ よく言われます。
クアルコムのAR-SDKをつかってARアプリを作りたいのですが まず何を勉強するべきでしょうか?
イーイベントを拾って音量キー押下を無効にする方法は 分かったんだけど、音が鳴ってしまうのは無効に出来ないの? ちなみに使用してる機種はXPERIA arc。
何だよイーイベントって…。キーイベントね。
いいイベント
>イーイベントを拾って音量キー押下を無効にする方法は これが実機依存なだけ。音量キー握りつぶせたらゲーム中に電話かかってきて困るだろ。
>>225 自分のアプリのActivity上のみ音を出せないように
出来ないかなと思ったんだ。何か無理っぽい。
>>173 Activity呼び出すとき、
Intent intent = new Intent();
ってやってたけど
Intent intent = new Intent(this);
ってやった方が良い?っていうかやんないと不味い?
[android.widget.EditText]でテキストエディタを作るとして、一般的なテキストエディタでよくある 『ファイルを開いただけなら閉じるとき何も聞かれないが、少しでも編集していたら保存するか確認する』 というのを実装したいとき、『編集していたら』の判定はどう行えばいいんでしょうか? テキストが変更されたときのイベントハンドラでフラグの変数に代入するのだと、 1文字書き換えるたびに呼ばれることになるので、処理速度が不安なのですが…… もっとよい方法はありませんか?
開いた時と閉じる時にハッシュ値計算して比較
230 :
227 :2011/10/12(水) 06:50:22.66
とおもったらActivity呼び出すときはActivity渡してたわ。 new Intent(); してるのはsetResult で値を返すときでした。
SharedPreferencesに入れるデータ量の制限てあるでしょうか? ユーザの入れたクリップボードの文字列をそのまま入れる実装にしようと思ったのですが、 とんでもない長さの文字列が入る可能性があるわけで・・ まずいようなら最初に文字を切っとくようにおまじないを書いておくのですが。
232 :
デフォルトの名無しさん :2011/10/12(水) 12:44:14.01
ActivityManager#getRecentTasks()で実行履歴リストを取得した後、 個々のアプリが現在実行中か否かを調べるにはどうすればいいでしょうか? 別途実行中リストを取得して、実行履歴リストと1つ1つ 突き合わせないと判断できないでしょうか? 何か効率のよい判断方法があれば教えてください。 よろしくお願いします。
MediaPlayerでのmp4再生についてお伺いします rawフォルダに置いた sample.mp4 をサーフェイスビュー上で動画再生したいのですが、 player = new MediaPlayer(); player.setDataSource( context, Uri.parse( "android.resource://" + context.getPackageName() +"/" + "sample.mp4" ) ); player.setDisplay( surfaceHolder ); とやると実行時に WARN/System.err(2137): java.io.FileNotFoundException: /android.resource:/net.hoge.huga/sample.mp4 (No such file or directory) と出るのですが、Uri の指定が間違っているのでしょうか? rawフォルダ無いに sample.mp4があるのは確認しています。
AとBというアクティビティがありまして、A1→B1→A2→B2→A3という順番に実行した状態で、 AもBもアクティビティが積み重なった状態からB1までリターンキーで戻ったときの処理がおかしいので、 Bにログを出す処理を入れてデバッグモードで動作を調べたところ、次のような動作をしていました。 --ここから-- onCreate B1作成時 onResume B1作成時 onSaveInstance B1からA2移動時 onCreate B2作成時 onResume B2作成時 onSaveInstance B2からA3移動時 onResume A3からB2移動時 onDestroy B2からA2移動時 onResume A2からB1移動時 --ここまで-- B1まで戻ってきたときですので、これで問題はありませんよね。 しかし、実際にデバッグではなく、通常起動をすると次のような動作をします。 --ここから-- onCreate B1作成時 onResume B1作成時 onSaveInstance B1からA2移動時 onCreate B2作成時 onResume B2作成時 onSaveInstance B2からA3移動時 onResume A3からB2移動時 onResume ? onDestroy ? --ここまで-- ご覧のとおり、最後の2行の動作が違っています。Aにログを出す処理は一切いれていませんので、B2のonDestroyがB1のonResumeの後に走っているようなのです。 手順に間違いが無いか何度か確認しましたが同じ動作で、自力で調べたのですがデバッグモードか否かでライフサイクルが変わるといった現象が出てこず、困っています。 何か原因や対処はわからないでしょうか。
235 :
232 :2011/10/12(水) 18:30:04.73
RecentTaskInfo.idの値が-1なら非実行中、-1以外なら実行中で 判別出来ました。
sqlliteのデータをlistviewするとき arrayadapterよくわかんね
一つのクラス(画面)でMENUの処理を実装したのですが、他のクラス(画面)でも同じ処理をしたい場合は 全てのクラスで同じ処理を書かなければならないのでしょうか? JAVAの機能で何かあるのかな?
継承すればいいじゃない
>>234 他のアクティビティと切り替わるときonDestroyがどのタイミングで呼ばれるかなんて保証ないだろ
あるのはonPauseは相手のonResumeより先に呼ばれるってだけ
>>233 URLの代わりに FileDescriptor を渡せば動くって
前にここで教えてもらった
>>231 SharedPreferenceは内部ストレージにテキスト(XML)形式で
保存されるからストレージの空き容量全部使ったらダメかもね
もっとも使いきる前にOOMだろうけどw
242 :
デフォルトの名無しさん :2011/10/12(水) 21:47:27.10
iCloud登録開始マダァ-? (・∀・ )っ/凵⌒☆チンチン
表形式でButtonを並べて、Buttonを押すと登録画面に遷移して登録するように組みたいのですが、 各Buttonを識別する際はxmlのIDを元に行えばいいのでしょうか?
244 :
デフォルトの名無しさん :2011/10/12(水) 21:48:12.17
oh 間違えた。すまない
TextViewにandroid:layout_width="wrap_content"を設定すると、意図しない改行が起こり困っております。 具体的には、 textView.setText(String.format("%d年%d月%d日", 2011,8,2)); のようにすると、日の前に改行がはさまれてしまいます。(8月を10月にすると改行しない) よく、仕様がわからず悩まされている状態です。何か解決策や原因等の情報はありますでしょうか。
getContext()がビルドを通りません。 getBaseContext()に変えろだの言われます。どういうことでしょうか。
どうもこうも無いと思うんだ。
1)指示通りにして、エラーは無くなった? 2) エラーが無くなったとして… 動かした結果は意図した動作だった?
249 :
デフォルトの名無しさん :2011/10/12(水) 22:53:50.74
わっかんねー なんでedittextにスペース含んだら落ちるんだ…
こっちが聞きたいわ
icon finder とかでGPLで配布されてるアイコンを加工してアプリのアイコンにしたいんだけど アプリのソースコードや加工したアイコンを公開しないと違反になりますか?
>>241 有難うございます。
巨大な文字列をクリップボードにコピーするのと同等程度の危険度と想像しておまじないだけ書いておきます。
データベースを複数作成したい場合はどのようにすれば良いでしょうか
adMobにチャンレンジしてるんですが広告がでない・・・ ---- AdRequest request = new AdRequest(); request.addTestDevice("・・・"); // for 実機 if( request.isTestDevice( this)) Log.d( "Ads", "test"); mAdView = new AdView(this, AdSize.BANNER, "・・・"); root_framelayout.addView(mAdView); mAdView.loadAd(new AdRequest()); ログみるとリクエストは成功したけど受信失敗とか… onFailedToReceiveAd(Ad request successful, but no ad returned due to lack of ad inventory.) テストでも受信って失敗しうるんでしょうか? 30回くらいやって1回だけ広告が表示されました。
>>254 コードからテストデバイス登録して、テスト広告が出てるなら
あとはAdMobにまかせるしかない。
アプリが公開されて、ユーザ数が増えるとその「出ない」現象は消えるので
テストデバイス登録も不要になる。
デベコンでアプリケーションリストの読み込みに失敗するんだが…
直った 最近不安定すぎる
>>251 GPLなものを何か1つでも組み込むと全てが汚染されるので
アイコンだけでなくアプリ本体もソース公開がいる
アイコンデータはプログラムには「リンク」されない。 アプリに含まれるリソースである。 もし「含まれる」だけでGPL汚染が発生するのなら、 Android端末にはLinuxカーネルが「含まれる」ので、 Android全てがGPL汚染されるはずだが、実際にはそうなっていない。 従って、GPLライセンスのアイコンリソースを含んだアプリが GPL汚染されるかというと、されないだろう。
GPL汚染を気にするのは、同人の二次創作の違法性を気にするようなもんかね どっちも権利者が申告してこないだけ ただ、「大手がやれば、問題になる」 ソニ〜ICO〜
キャリア決済が失敗してクレーム言ってくるユーザへの模範解答って何よ?
>>259 javaの世界ではGPLな物が静的にパッケージに含まれた時点で「リンク」と
見なされる
従って配布するパッケージにGPLなリソースを含めたらソースコードの配布
(公開でなくても請求した人に渡すだけでもOK)が必要
配布するパッケージにアイコンを含まず、初回起動時にアイコンを他所から
ダウンロードするような場合は分からないが
> もし「含まれる」だけでGPL汚染が発生するのなら、
> Android端末にはLinuxカーネルが「含まれる」ので、
> Android全てがGPL汚染されるはずだが、実際にはそうなっていない。
凄まじい詭弁と論理の飛躍だな
こういう奴が平気でGPL違反をやらかすんだろうな。あ、これはただの妄想な
たまにあるキャリア決済の認証で止まってダウンロードされてこない問題の話? キャリア決済の場合は購入後Googleからキャリアに本当に決済可能かどうかの確認が入って たまにそこでトラブって止まることがあるよって返したことはある ATOKとかの超メジャー国内有料アプリのFAQにあればいいんだけど 前見たときは見つからなかった
>>262 ライセンスの話に「〜の世界では」とか言い出すのがうさんくさい。
>>263 しばらくたってからまたやってみるか、クレカで買ってくれ、しかないのかな。
端末側の設定がダメってことはあるのかなぁ…
キャリア決済のことはキャリアに聞いてね。が本来は最適解なんだろうけど日本人は理解しないだろうな・・・。
>>253 単純にデーターベース名を変えて作成する
269 :
253 :2011/10/13(木) 13:02:54.10
>>268 カラムの異なるDBを作成したいのですが、
DB事に作成用のコードを後ろに追加するということで良いのでしょうか
DBとテーブルの区別がついてないと思われる
テーブル追加するんじゃダメなんか?
>>255 テスト広告指定の時は必ずでるんでしょうか?
記述したコードのようにテストデバイス指定し、かつisTestでもtrue が帰ってきてるんですが受信失敗します。
一度だけでたんですがテスト広告かどうか判らずで…ちゃんと見れば良かった…
DBの個数だけSQLiteOpenHelperクラスを用意する必要があるんじゃなかったか? アプリの新着反映って間隔ある? 前回の更新で新着載った場合、1週間ぐらい以上空けて更新しなければ再び新着に載らないとか どっかで見たような気がするんだけど
>>272 画面やデバッグログ見て分からんのなら、SSうpれば判断してやるよ。
>>274 スクリーンショットとろうにも広告が出ずだったんですが・・・
一晩あけたらガンダム・バトルロワイヤルが普通にでてくるようになりました。
テストでもちゃんと広告でるんですね。
結局なんだったのか判りませんがお騒がせしました。
エミュ再起動しないと出てこなくなることはあったな
277 :
253 :2011/10/13(木) 16:38:07.01
>>271 ユーザDBと情報DB、のように区分けしたいと考えてます。
>>273 なるほど、やってみます
ありがとうございます
Homeアプリ(ウィジェット)でボタンが沢山ある時(例えば10個とか)に、ボタンによって処理分けたい場合にどうしたらいい? ってかどうしてる?
>>278 ボタン毎に、別のアクションをセットしたPendingIntentをそれぞれくっつけてるけど、それって何かまずいの?
リソースとかの面で他に最適な方法があるなら俺も知りたい。
280 :
デフォルトの名無しさん :2011/10/13(木) 18:48:35.24
WallpaperServiceを使用してライブ壁紙を制作中です。 画面を横にスクロールさせたいので、 onOffsetsChanged()で引数として渡されるx座標を元に再描画しています。 ※大まかには↓の様な感じです。 /** オフセット変更時に呼び出される **/ @Override public void onOffsetsChanged( float xOffset, float yOffset, float xStep, float yStep, int xPixels, int yPixels ) { point = xPixels; redraw() ; } /** キャンバスで描画を行う **/ void drawFrame() { // キャンバスをロック canvas = holder.lockCanvas(); if (canvas != null) { //描画 canvas.drawBitmap(XXXX, x座標, y座標); } finally { // Canvas アンロック if ( canvas != null ) holder.unlockCanvasAndPost( canvas ) ; } } でも、これだと指を離した瞬間にスクロールが止まってしまいます。 本当は慣性スクロール(モーメンタムスクロール)を行って、 指を離した後にある程度スクロールを維持して慣性が働いている様な表現をしたいのですが、 方法を知っている方いませんか?
ボタン押し続けてる間textviewに表示するカウンタを500ms間隔で+1していきたいんだけど、 カウントしてる間はモーション割り込めないしもしかしてスレッド必要なのかな? あいであぷりーず
どっちにしろボタン押されたとき制御返さないとANR出るだろ
>>281 - あらかじめメインスレッド用のHandlerを作っておく
- onClickじゃ離した瞬間しか撮れないのでsetOnTouch〜でタッチイベントを自前で処理する
- 押した瞬間にHandlerにRunnableを登録する
- runnable はTextViewのテキストを変更して、再度HandlerにRunnableを登録する。
- ボタンを離したか、タッチ位置が外れたらhandler.removeCallback で登録されているRunnableをメッセージキューから除去する
こんな感じかね。
284 :
281 :2011/10/13(木) 20:46:04.15
ありがとう。10分で返答とはなかなかの熟練者とみた Handlerがいまだ謎なので勉強してきます
>>59 遅レスだけどヒント感謝です。
影を消せました。
286 :
デフォルトの名無しさん :2011/10/13(木) 21:41:36.01
Activityを起動する時に、バックグラウンドで既に存在するActivityを 最前面に持ってくるには、フラグに何を設定すればいいでしょうか? Intent.FLAG_ACTIVITY_LAUNCHED_FROM_HISTORYの説明を読むと、 「This flag is not normally set by application code」と書いてあって、 使っていいものなのかよく分かりません。
質問です。 カメラを使用できないようにするアプリを作製しようとしているのですが、 カメラ機能のハードウェアを制御することは可能なのでしょうか? 今のところ探しても見つからないので、カメラが起動したらすぐに終了させれば カメラが使えないのと同義になるかなと思っているのですが、 onカメラ起動 のようなメソッドをオーバーライドすることはできるのでしょうか? もしくは、カメラのインテントが処理された時に起動するようなメソッドがあるのでしょうか?
289 :
288 :2011/10/13(木) 22:09:19.92
追記。 ・上記は常駐サービス上のメソッドで処理しようと考えています。 ・いまいち on○○ の仕様が良くわかっていません。 辞典にはonClickやonDraw等いろいろなケースの処理が書かれていますが、 辞典に乗っていないon○○もチラホラ見かけます。 こういうのってどこで定義しているのでしょう・・・
辞典ってなんだよ
291 :
288 :2011/10/13(木) 22:17:46.13
ブロードキャストレシーバーを利用すれば良いんですかね・・・一度やってみます。
292 :
288 :2011/10/13(木) 22:19:55.42
>>290 すいませんw逆引きハンドブックのことです。
ここの目次にon○○がいろいろ書いてあるのですが、
ハンドブック内のサンプルには、目次ではサポートされていないon○○メソッドもいくつか書かれているんですよ。
293 :
デフォルトの名無しさん :2011/10/13(木) 22:37:40.15
標準電話帳アプリみたいに右側に「あ〜わA」. リストビューの隙間にそれぞれ「あ〜わA」行. そして右側のやつなぞると対応した位置にジャンプ. ってどうやるんでしょ
295 :
251 :2011/10/13(木) 23:13:56.12
レスくださった方有難うございます やはりややこしそうなのでGPLに触らない方向で頑張ってみます
質問です。 OpenGLを使ったライブ壁紙を作ろうとしているのですがWallpaperServiceにはGLSurfaceが使えないとのこと。 海外のソースなどを見よう見まねで頑張っているのですがEGLの初期化が上手くいきません。 日本語のサイトで詳しく説明しているサイトを教えていただけないでしょうか?
297 :
デフォルトの名無しさん :2011/10/13(木) 23:51:40.29
>>293 についてです
区切り行?の挿入とそこへのジャンプはできそうなのですが
右側の「なぞって選べる縦長ボタン的な何か」をどうやって用意すればいいか見当もつきません…
あれはどうやってるのでしょうか?
多分電話帳ってどの端末もカスタマイズ入ってるぞ 標準で「あ行」「か行」みたいな分け方になるわけ無いし なのでどういう動作なのかさっぱり分からん
>>297 何が難しいのかさっぱりわからん。
テキストビューでもイメージビューでも並べろよ。
Spinnerから東京、大阪など選択してGoogle Mapにアイコンを生成したいのですが、 この時の座標情報はコードに含んでないと実行出来ないでしょうか? コードではなく、テーブルから座標を取得出来たらと思っています。
>>297 setFastScrollEnabledのこと?
質問です MapViewのデフォルトのズームボタンって 2段階ずつしかシフトできないんでしょうか? +/-を押すと、ズームレベルが2レベルずつ変わって困ってます MapViewのリファレンスをよんでも、ズームボタンの設置については書いてありますが、 ズームボタンの設定変更らしきものが見つかりません 自分でズームボタン自作するしかないんですかね
>>301 これにツマミを出す以外の機能があったとは
ありがとうございます
view.layout(l,t,r,b) って、onCreate()でもonFocusChangedでやっても無視されるんだが、どうしたらよいですか?
requestLayout()
一回のLog.d()で出力できる行数の上限はありますか? 2000行以上あると思われるstringを出力したのですが270行までしかログに出なかったので、 Log.d()の仕様なのか、どこかミスってるのか判断できません。お願いします。
>>309 とりあえず、無限の長さのログを表示できるという保証はどこにもない。
1週間で20回近く更新するとかどんだけ俺のアプリは品質悪いんだ…。
>>309 なんでそんなものをログに出す必要があるの
困っています助けて下さい。 文字列"01234567"というのがあり、これを0、1、2...というようにint型にキャストしたいです。 文字列はline[]に格納されています。 int[] number = new int[8]; for(int a=0;a<8;a++){ number[a] = Integer.parseInt(line[a]); } でキャストされると思ったのですが、なぜかfor文の周回の最後で落ちます。 0,1,2,3,4,5,6,まで成功するのですが最後の要素の7のキャストで落ちるのです。 最後の一要素以外成功しているので、どうしていいか困っています。 line[7]にはちゃんと文字列"7"が入っています。
どこに文字列"01234567"があるん?省略すな
ああ、付け足したほうがいいな。 文字列"01234567"はどうやって配列に入れたかも定かじゃないからもう全部晒すべ
それ以前にAndroid関係ない
__, ノ} _, ヾミ、 ,イl| ,ィツ ヾミ、 ノリlj'; ,ィ彡イ 〉ミミヽ_Y杉ハ_ノ'杉彡" '^".:.:.:.:.::.:.:.:.:.:.:.:.:.:.:.:...:`丶{ /:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.::.:.:.:.:.:.:.:.::.:.:.ヾミ三ニ≡=-ッ- / :.:.:.:.:.:.:.:.:.::.:..:.:.:.::.:.:.:.'.彡''"´ ̄ .l__ _ : : : : : : : : : │ r´ lェi__r´)==`- : : : : : : : : : :│ ヽ_l_/ ヽ_ノ ̄ ̄ ̄ 彡ミ ヽ: : : :│ 乗るしかない このビッグウェーブに! (( __)、 リ 6 ノノ: : : :│ |/ ̄ ヽ ー´ : : : : / .|イミFゝ_,, : : : / (~^~√` │ .|  ̄ ::;;; /~ヽ .ヽ、、__,,,,,ー"" / 人\ `入 / \
不足ですみません。 txtファイルを読み込んで"0,1,2,3,4,5,6,7"という部分を抽出して、 String string = sb.toString(); String[] line = string.split(","); としました。 これ以上に全部となるとあまりに長いのでこの辺りですみません... ただキャスト前のline[]は0〜7まで格納されているのを確認してはいます。
キャスト? どこでキャストしてると言うのだ
エラーで落ちるんならエラーの内容見ろとしか…
改行記号でも引っ付いてんじゃね
>>322 たぶんそれです!ありがとうございます!!
>>319 こう書けばいいだろ?
String str = sb.toString();
String[] line = str.split(",");
int[] ary = new int[line.length];
for ( int i = 0; i < line.length; i++ ) {
ary[i] = Integer.parseInt(ary[i].trim());
}
ただ途中に数字でないものが1つでもあるとエラー。
例えば次のようなシーケンス。
1,2,,4
カンマが2連続で現れると、String配列の内容は{"1", "2", "", "4"}
となって、空文字列はintにパースできずNumberFormatException。
ArrayList<Integer>とかで済ませられるなら、そっちが簡単だけど。
っていうかコレandroidじゃなくてJava言語の問題。
もう一つ突っ込むと、文字列をintに変換するのはキャストとは言わない。
なんでstr.lenで回してcharAtしなかったんだ?
326 :
デフォルトの名無しさん :2011/10/15(土) 01:26:33.87
バグの出そうなソースの書き方だね
buttonが押された時の処理を繰り返したいんですが、どうすればいいでしょうか? 例えば一回押せばtextに1を表示 もう一回押せば2を表示 もう一回押せば1に戻るような感じです。
DatePickerDialogのような動作で全然他の任意のリストデータを選ぶようなのを作りたいのですが、 自力実装しかないでしょうか?
AlertDialogを表示させたのですが、dialog.setTitle(str)で 指定したstrの文字列が長いです。 そのため、AlertDialogのタイトルのTextViewをsinglelineに設定すれば 改行が禁止されて省略されるので、そうやって解決したいと思っているのですが AlertDialogのタイトルのtextViewの受け取り方がわかりません。 どうかアドバイスよろしくお願いします。
>>328 >全然他の任意のリストデータを選ぶ
???
質問です。
下記のようにマニフェストファイルを記述したのですが、
システム起動と飛行機のモードを変更した場合はSampleServiceクラスがonReceiveしたのですが、
カメラボタン押下のときはonReceiveしてくれません。
どこか足りない記述があれば教えていただけないでしょうか。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="
http://schemas.android.com/apk/res/android "
package="com.example.service05"
android:versionCode="1"
android:versionName="1.0">
<uses-permission android:name="android.permission.CAMERA"></uses-permission>
<application android:icon="@drawable/icon" android:label="@string/app_name">
<!-- receiverタグを実装し、レシーバのクラス名を記述 -->
<receiver android:name=".SampleReceiver">
<!-- インテントフィルタのリストを登録 -->
<intent-filter>
<action android:name="android.intent.action.AIRPLANE_MODE" />
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.CAMERA_BUTTON" />
</intent-filter>
</receiver>
<!-- サービスクラスの登録 -->
<service android:name=".SampleService" />
</application>
</manifest>
334 :
333 :2011/10/15(土) 07:21:36.70
一応レシーブのファイルも記載します。 package com.example.service; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.util.Log; public class SampleReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { Log.d( "SampleReceiver", "onReceive" ); } }
>>333 SampleReceiverとSampleServiceの関係が全く説明されてないんだけど、ドコからツっこめばいいの
336 :
333 :2011/10/15(土) 07:25:32.64
度々すいません。パッケージは package com.example.service05; です。
337 :
333 :2011/10/15(土) 07:30:10.01
>>335 ごめんなさい。説明が間違いだらけですね・・・
SampleReceiverにonReceiveさせたいです。
SampleServiceの記述は無視してください。
本来はそちらのSampleServiceを起動していたのですが、質問のためにコメントアウトしました。
上記ファイルでの動作は確認済です。
The "abortBroadcast()" function is called to prevent other applications from responding to the broadcast. What if your application is the last one to receive the message? To prevent this some priority has to be set to make sure that your app receives it prior to any other program. To set priority add this line. Current priority is 10000 which is very high, you can change it according to your requirements. <intent-filter android:priority="10000">
340 :
333 :2011/10/15(土) 08:01:49.13
ありがとうございます。priorityをかなり上げてみましたが結果は得られず。 最大いくつまで設定できるのでしょう? ただ、メーカーによって違うんじゃ、システムログをとるのは現実的では無いのですね。。。
>>330 受け取り方が分からないってどういう事?
海外にアプリ出すと、ネットワーク接続しててもLVLが失敗するというクレームが来るけど、 あれって嘘なのかな…子供に買ってあげたのに遊べないんです!とか言うけどさ…
jniを速度で最適化するにはどうすればいいですか
String文字列で指定した字数目から最後までの文字列を削除ってどうすればいいですか?
forでループ回すにはどうすればいいですか? ifで真偽値判定するにはどうすればいいですか? 彼女を作るにはどうすればいいですか?
>>344 JavaのStringは固定文字列だから変更できない
逆に必要な部分だけを切り出して新しい文字列を作ればOK
347 :
デフォルトの名無しさん :2011/10/15(土) 13:16:56.63
なんでタブやら色々青くなるんだと思ったらGalaxyの固有機能だったでござる エミュみたいに普通の色にできないかねー
Galaxyに限らず多くの機種は固有の色もってるよ・ メニューとかも。 同じメーカーでも世代違いで色変わる。
1プロジェクトで色々なバージョン、 例えばテスト・本番用とか有料・無料用とかを簡単に切りかえる手法ってあるんでしょうか? C/C++でいう定数によるコンパイルスイッチみたいな。 どこかにグローバル定数をもたせて if 文とかで分岐させるっていうシンプルな方法しかないんでしょうか?
ndk-gdb について相談させてください。 gdb上でソースリストの表示や変数の値を確認することは出来るのですが、 ブレークポイントを設定しても止まってくれません。 シンボルに対するアドレスは解決しているので、デバッグ対象のプログラムを 覗けているのは確実なのですが。 break系のコマンドで確認すると、確かに設定されているように表示されますが、 絶対に通過する部分に置いても止まらないのです。 他に何か忘れている設定かコマンドの指定でもあるのでしょうか? よろしくお願いします。
352 :
デフォルトの名無しさん :2011/10/15(土) 15:02:41.71
どなたかエスパーお願いします TabActivity使用で タブ1からタブ2へ移動するとタブ2の内容が表示される 次にタブ2からタブ1へ移動するとタブ1の内容が表示される ここまではOKなのですが もう一度タブ1からタブ2へ移動するとタブ2には何も表示されない これの原因がわかりません
353 :
デフォルトの名無しさん :2011/10/15(土) 15:26:07.24
>>352 すいません解決しました
自分で変更したところすっかりわすれてました
分からんなあ
355 :
デフォルトの名無しさん :2011/10/15(土) 16:02:04.09
java未経験でPHPのオブジェクト指向開発の経験があるだけなんですが、 httpクライアントを作ってtwitterやFBにポストするアプリを作りたいと思っています そういうのは簡単ですか?
PHPのオブジェクト指向開発()
httpクライアント作るって言ってる内容によるかな
358 :
デフォルトの名無しさん :2011/10/15(土) 16:31:41.56
SQLのデータをバックアップしておいて復元できるようにしたいんだけど 普通どうやってバックアップするの?
SDにでもファイルコピーすれば?
>>355 使えるプログラム言語の数が今1種類なら、2種類目は通常苦戦するみたいだな。
3つ4つ使えるようになると本だけで立ち上がれたりする。
ちなみにJavaでHTTPのリクエストを送信するなら、
java.net.URL
java.net.URLConnection
で出来るが、POSTのボディ部分の組み立て処理はググるかHTTPプロトコルをある程度理解する必要がある。
Webアプリしか経験ないんだったら大変だろう。
>>355 フレームワーク自体は充実してるから大丈夫。
PHP扱ってるならWebAPIも詳しいだろうし、
鬼門はJavaの構文だけだと思うよ。
364 :
デフォルトの名無しさん :2011/10/15(土) 17:11:44.44
うちのギャラクシー this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); してもキーボード出しやがるんだけどどうにかならないだろうか エミュはちゃんと出さなくなった
Notificationでステータスバーにアイコンを表示させているのですが タスクキラー等で強制終了された場合にアイコンを消すにはどうすればいいでしょうか? 正常終了時にはonDestoryでアイコンを消していますがタスクキルされた時にアイコンが残ってしまうので 起動しなおして正常終了させないとアイコンが消えないです。
>>343 NDKの話なら、arm モードでbuildすればいい。
eclipseでxmlエディタがアクティブな時に実行ボタン押して ヽ(`Д´)ノ ウワァァァンってなるのどうしたらいい?
kill -all
タスクキラーなんてクソゴミアプリで強制終了される局面なんてノーサポートで良い というのが模範的解答だと思うが
>>367 IntelliJおすすめ。レイアウトは全部手で打つ人なら特に。補完がEclipseより賢い。
キーボード消せました
また出てきました
あ、消えました。
知らんがな。
>>370 IntelliJ IDEA 11のレイアウト見ながらxmlいじれる機能いいなと思って
インストールしてその機能を20分ぐらい探してたのに
その機能付きのバージョンはまだリリース前だったw
リリースされたらeclipse離れる
377 :
デフォルトの名無しさん :2011/10/15(土) 21:41:20.70
USB繋いでデバックするときアプリが起動したまま再インストールしようとすると 勝手にアプリを削除してインストールしてくれるよね これやると不具合起きる時があるんだけどなんでだろ 自分でアプリ消してインストールすると正常に動くんだけど
削除じゃなくて更新では?イベント違うし。
>>350 なるほ…ど…?
つまりAndroidというかJAVA的にはそういうのはないってことなのかな
どもです
eclipseであるプロジェクトのある画面レイアウト開くと必ず完全にフリーズしてしまうようになってしまった。 インディゴの最新@mac。 どうすりゃいいかな。 このプロジェクト捨てて、もっかいsvnからチェックアウトするべきか……
Winでもincludeがあると、微妙に不安定だ。
レイアウトの一部をコピペしたりすると、ハングしやすい。
>>381 プロジェクト破棄する前にエクスプローラとエディタで
そのレイアウトファイル動かすなり中身削るなりする方が
386 :
デフォルトの名無しさん :2011/10/15(土) 23:54:08.24
android sdkでmakeファイルを作って、 プログラムを実行する方法ってありますか?
全然スレチなんだけどさぁ、専門でC++とBasic、アセンブリ習ってから まあ夢みながらバイトしつつ家コツコツプログラムうってるわけね。 偶然ナムコ現役プログラマーのブログ見つけてさ、そこ見たらXNAっていう WindowsとX-BOX360両方のゲーム作れる開発ツールの演習みたいのやってるわけよ。 仕事しつつも、合間合間に←(昼休みとかに) それでその人、XNAのサンプルプログラム公開してるんだけどー たった7日で昔アーケードで出てたギャラクシアン3完成させてるんよ・・・。 大手の現役のプロって作業スピードハンパねえな! 3Dゲームをたった7日でつくってしまうのだから(時間で考えると3日くらいか?) 自信なくすぞこっちはwwww
XNAとか久しぶりに聞いたわ
分かる分からない以前に、知ってる知らないの差が大きいからなあ
>>387 一週間で昔のACゲーみたいなものって期間内に完成させる癖つけてたらちょうど完成するくらいの期間だぞ。
むかしはゲ製の土日スレにわんさかいたよ。勇者30も元はそこから出てきたくらいだから一週間でも遊べるもの作れるぞ。
391 :
デフォルトの名無しさん :2011/10/16(日) 03:28:24.59
インストールしてみたら起動した瞬間落ちた 何事かと思いもう一度同じようにインストールして起動してみたら普通に起動した な… 何を言っているのか わからねーと思うが. おれも 何をされたのか わからなかった… 頭がどうにか云々 どちらもクリーンインストールです 何が起きたのか教えてエロイ人
>>391 logの見方やデバッグの仕方から調べるといいよ
>>381 「eclipse clean」でぐぐれ
オリジナルの拡張子とMIMEタイプって作っていいもんかな?
> 3Dゲームをたった7日でつくってしまうのだから 個人アプリクリエイターの俺から見ると、全然遅い。Unity使えば2日で作って当たり前。 しばらく前にGR○Eに行って話したけど、大手CPは動きが遅くて困るって嘆いていたよ。
サービスのonStartでサブスレッド(Thread)を生成しているのですが、 30分から〜1時間ほどでサブスレッドが強制終了して困っています。 対処方法をご教示いただけないでしょうか。 ThreadのrunでExceptionをcatchしても例外は出た形跡無く、 無限ループが途中で終わっています。2時間以内に必ず止まります。 Service#onXxxx系にログを仕込んでみましたが、サブスレッドだけ止まって Serviceは何も変化ありません。 Service#onStartは最初に正常終了しているので、Androidはサービスを実行中のままと認識しています。
エミュレータってターゲットSDKバージョン未満では起動できないの? 2.2向けに作ったアプリだけど、minSdkVersion を 2.1 にしてあるから エミュで 2.1 での動作を確認したいのに、2.2未満のエミュが一覧に出てこない。
そりゃゴミ箱にゴミを投げ入れるだけのゲームならすぐできるだろうよ
400 :
デフォルトの名無しさん :2011/10/16(日) 11:30:05.76
できるかもしれんが絵心が致命的にない
知人にテストしてもらおうと初めてAndroid ツールから署名付きapk作成しようとしてるんですが署名について質問があります。 1.Keystore と key alias ってのはどちらもアプリ1つにつき1つ作るものなんですか? それともkeysotreは作成元1つで、key aliasをアプリ毎に追加していくものなんでしょうか? 2.アップデートの時などで同じものを使いまわすんでしょうか? 3.keystore、およびkey生成で入力したパスワードはこのapk作成のときでしか使わないんでしょうか? よろしくお願いします。
>>397 なんとかかんとかhas died とかログにないかい。
startForegroundCompat
>>398 アプリとエミュは関係ないだろ。
ddmsでアプリ関係なしでエミュだけ起動できるんだから。
>>380 ShakeDroidの作者が有料・無料アプリの切り替えの一つの方法をブログに書いてあったと思う。
たしか同じソースからシンボリックリンクを使って・・・みたいな方法。
試したことはない。
Bの画像を Layout.addView(~~~);で貼りつけし、 既にLayout上に表示してあるAの画像を image_a.layout(~~~);で場所移動すると、 Aの画像の場所移動が無視されてしまいます。 それぞれ単独だと動作するのですが...
どうやらBの画像を貼り付けしたときに、 LayoutがAの画像を動かす前の状態に戻っているみたいです。 時間差で実行したらわかりました。
409 :
デフォルトの名無しさん :2011/10/16(日) 16:28:37.35
すみません。 SQLiteについてなのですが、外部で作成したSQLiteのDBファイルを Androidで読み込んで使用するという事は可能でしょうか? レコードは1000件程度なのですが、アプリを起動するたびにonCreateで作るのは非常に無駄だと思うので・・
1.可能 2.onCreateは初回のみ
411 :
デフォルトの名無しさん :2011/10/16(日) 17:31:23.87
listviewの項目クリックで削除するだけのものを作っています リストの表示は行えているのですがなぜかタップした瞬間落ちます ↓のコードでどこかおかしいとことが有るのでしょうか @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); ListView list = (ListView)findViewById(R.id.listView); ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.rawdata); adapter.add("Item1"); adapter.add("Item2"); list.setAdapter(adapter); list.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { ListView list = (ListView)parent; String item = (String)list.getItemAtPosition(position); ArrayAdapter<String> adapter = (ArrayAdapter<String>)list.getAdapter(); adapter.remove(item); } }); }
エラーのログを見せなさい
413 :
397 :2011/10/16(日) 18:31:27.78
>>402 startForegroundでキッチリ直りました。ありがとうございました
>>411 裏で持ってるArrayListのremoveで落ちてるとか?あとBitmap使ってない?それぞれのアイテムに
415 :
デフォルトの名無しさん :2011/10/16(日) 19:09:01.63
>>410 なるほど、一度作ったDBはdataフォルダに保存されてるみたいですね。
ありがとうございます。
416 :
411 :2011/10/16(日) 19:25:15.13
すいません色々いじってたらいつの間にか直ってました ありがとうございます
417 :
デフォルトの名無しさん :2011/10/16(日) 20:20:47.85
アンドロイドのプッシュ通知ってどうするのが一般的なのかな? Apple Push Notification Serviceみたいなのないんだろか
PCのAndroidのランキングって何時ごろ更新されるのかな? 昨日は19:30頃更新されてた気がするんだが
AndroidMarketだった
>>417 C2DMってのがある、iPhoneのやつとの違いは知らない
>>403 好きにどうぞ、ということは別のアプリに同じキーを適用しても
特に問題はないってことでしょうか?
それならキーのエイリアスにアプリが分かるような名前つけずに共通なモノにしようと思います。
422 :
デフォルトの名無しさん :2011/10/16(日) 21:25:06.59
ImageViewの上下関係というか、indexみたいなものはありますか?
ボタンでイベントが発生するタイミングを、 指を離したときではなく指が触れた瞬間にしたいのですが、 どうしたらいいのでしょうか
指が触れた瞬間に発生するイベントはないの
クリックイベントじゃなくてタッチイベント拾え
427 :
デフォルトの名無しさん :2011/10/17(月) 04:56:46.39
AlertDialogなどにArrayAdapterをセットした時に表示される素朴な(?) フォントサイズなどのレイアウトのスタイルはなにが設定されているのでしょうか。 ArrayAdapterを拡張したダイアログを作成したら見た目がどうやっても デフォルトと似ても似つかないので困っています(まあ全部を独自レイアウトにしてしまうのは一案なんですが・・)。
com.android.internal.R.style.Theme_Dialog_Alert
TextViewで文字が画面端までいかずに折り返しされることがあります。 画面端で折り返しするにはどうしたらいいでしょうか
layout_widthがmatch_parentでlayout_weightを1にするとか
android:layout_width="fill_parent" android:layout_height="wrap_content"
432 :
429 :2011/10/17(月) 18:05:38.52
>>430 ,431
試してみたけどだめでした
ギャップを感じたので質問を書き直します
切りのいいところ(スペースとか)で折り返しをしようとする処理を無視して
画面の端まで文字を表示して折り返しするにはどうしたらいいでしょうか
日本語だとwordwrapがおかしい
layoutは上から順に描画されて終わると下に黒い空間ができますが センターに描画させることはできますか? レイアウトに android:gravity="center"を入れても無視されます
>>434 ありがとうございます!
手元の本とか見てたりもしてたんですが
キーストアとエイリアスとアプリの対応については見つからなかったので…
アップしたら変更は出来ないってことでなおさら不安だったので助かりました。
>>435 layoutじゃなくてLinearLayoutだよね?
centerは縦方向のLinearLayoutなら横方向に、
横方向のLinearLayoutなら縦方向にしか効かないよ
他のレイアウト使うか、FrameLayoutでLinearLayoutをくるむとか
>>432 英語とかだったらそんなことをしようという発想が根本的におかしい。けど、どうしてもって言うならzero-width spaceかな。
質問です。 livewallpaperの背景を透明にすることはできますか? 可能なら方法を教えて欲しいのですが・・・
>>437 そうです。LinearLayoutでした
くくってみます
質問です。 ハードウェアの明るさを変更しようとして以下のコードを組みましたが、上手くいきません。(Android 2.2) Object svc = null; Method setBacklights = null; try { Class sm = Class.forName("android.os.ServiceManager"); Object hwBinder = sm.getMethod("getService", String.class).invoke(null, "hardware"); Class hwsstub = Class.forName("android.os.IHardwareService$Stub"); Method asInterface = hwsstub.getMethod("asInterface", android.os.IBinder.class); svc = asInterface.invoke(null, (IBinder) hwBinder); Class proxy = svc.getClass(); setBacklights = proxy.getMethod("setBacklights", boolean.class); } catch (Exception e) { Log.d("test",e.toString()); } try{ setBacklights.invoke(svc ,brightness); } catch(Exception e){ Log.e("test",e.toString()); } setBacklights = proxy.getMethod("setBacklights", boolean.class);のステートメントで java.lang.NoSuchMethodException: setBacklightsが発生しているようなのですが、 メソッド名が間違っているのか、そもそも根本的に間違っているのか判別がつきません。 対処方法をご教示いただけないでしょうか。
メソッド全部取って名前をログにだせや
有名なアプリ、「tsk killer」のように、起動中のアプリを終了させようと思っているのですが、 restartPackage ではアクティブのアプリは終了してくれませんでした。 ほかにどのようなメソッドがあるのでしょうか?
>>444 Android 2.2以降ならまともに終了させられないから
諦めた方がいいと思うけど。
このスレ組み込み経験ないやつ多いいよな。 タスクがタスクをキルするとかましてやアクティブなタスクをキルするとかそんなことOSがやらせてくれるわけがない。 ネイティブな環境だとシステムコール経由してたからできただけ。 タスクをキルしたところでプロセスやリソースは残ったままだからOSが勝手に片付けるのには違いがない。 タスクをキルしたことによってライフサイクルを破壊してOSを不安定にするだけ。 非アクティブになったなら出来る限りリソースを開放してタスク自身は限りなく何もしない。終了処理なんてAPIに存在しない。
Androidの開発経験はないようで
446は正しいよ
>>448 2.1まではアプリから使えるAPIがあった
2.2以降もAPIはあるがパーミッションの制限で通常のアプリからは使用できない
存在しないんじゃなくて、通常のアプリからは使用できないってだけ
標準アプリの設定→アプリケーションの管理からなら終了させることができる
当たり前だろ。OS標準のタスクマネージャから終了できないでどうする。 そもそも特権で動いてるならそれは使えないのと同じ事だろ。
前はアプリ内から自分のpid指定してキル発行できたと聞いたが。
組み込み何それおいしいの?っていう人も多いと思う 3行で説明してくれ
ネットからファイルをダウンロードしてSDカードに保存したいのですが、 http error 416になってしまい失敗します。 ごくまれに正常にダウンロードできるのですが何が悪いのでしょうか? コード: DownloadManager dlmgr = (DownloadManager)getSystemService(DOWNLOAD_SERVICE); //URI作成 Uri.Builder uriBuilder = new Uri.Builder(); uriBuilder.scheme("http"); uriBuilder.authority("***.co.jp"); uriBuilder.path("hogehoge.zip"); //Requestインスタンス作成 Request request = new Request(uriBuilder.build()); request.setDestinationUri(Uri.fromFile(new File(SD_PATH))); //ダウンロードキューに追加 dlmgr.enqueue(request); DDMSのログ: 10-15 08:47:21.415: INFO/DownloadManager(254): Initiating request for download 79 10-15 08:47:25.195: DEBUG/dalvikvm(254): GC_CONCURRENT freed 369K, 52% free 3082K/6407K, external 1625K/2137K, paused 5ms+7ms 10-15 08:47:26.946: INFO/DownloadManager(254): Initiating request for download 79 10-15 08:47:27.015: WARN/DownloadManager(254): Aborting request for download 79: http error 416 実行環境: Android2.3エミュ・SDカード1GB
416を調べろって教えられてるのに調べてないのかよ
調べた結果が理解できないってことなら、HTTPを勉強すればたぶんおっけー
Y.A.Mのサンプルでも試せば?
>>453 416とは珍しいな。自前でリクエスト送ってないからか。
DatePickerで0年とか3000年とかを選べるようにするにはどうすればいいのでしょうか
461 :
デフォルトの名無しさん :2011/10/18(火) 16:10:37.56
Activity クラスの getString メソッドとかが使いたいがためだけに継承しても、 お作法的にも動作的にも問題ないでしょうか?
>>461 ActivityじゃなくてContextだろ
まあ、やってみればいいんじゃね?
463 :
デフォルトの名無しさん :2011/10/18(火) 16:21:32.73
>>462 Contextだとメソッドの実装がががが
デメリットとかあります?
Context以外に何を使おうというのだろうか。
それ以前になぜ継承が必要なのかね?
やっぱJavaプログラマって馬鹿ばっかなんだな
いやいやw
やっぱプログラマってゴミばっかなんだな
あらゆるものの9割はクズである
組み込みおじさんはちょっとボケが始まってるから・・・
何のためにgetStringがpublicになってると思うんだ
>>473 Contextをnewして使えってことですか?
ネタでもまじめでも書き込み事態が少ないって
やっぱこのスレの人口が減ってるのかなー
>>723 とか評論家ぶって叩くやつが出てきてもおかしくないのに
超誤爆
hogeLayout.removeView(hoge);で、 定義はされているがLayout上にないViewを対象にしたら落ちますか? 無視されますか?
SharedPreferencesにnullを突っ込んだら落ちたんですが これはもしかして元データソースがxmlだからどうにもならないというやつでしょうか。 やろうとしたことは検索条件をSharedPreferencesに保存しようとして、 ・入力がない場合->指定なし(検索に使わない) ・ブランク->検索対象が空文字("") をしようとしたら見事に落ちました。
>>479 値無しってのは項目無しってことだしなあ
481 :
442 :2011/10/18(火) 23:05:20.07
>>443 メソッド一覧にもなかったので、違うサービスだったようです。
確かフラッシュライト系と同じだと思ってたんですが。
もう少し探してみます
482 :
デフォルトの名無しさん :2011/10/18(火) 23:47:57.41
tabactivityとedittextの組み合わせでよく分からないことが起きます ※全タブにedittextを配置している 1.タブ移動しているとたまにタブ以外何も表示されなくなる 2.なぜか、どれか1タブにだけedittextボックスが表示されてる(他のタブのedittextは見えなくなる 3.なぜか、そのedittextをタップすると他の表示が復活する これはどこを調べるべきなんでしょうか…
時間割のプログラムを作成したいのですが、質問させて下さい。 曜日・時限ごとにマス目をTableLayoutで作り、各所にButtonを設置しました。 ButtonからIntentで登録画面に遷移。登録画面で科目名・教室などを登録した際、 選択した曜日・時限のButtonに登録した科目名を表示させたいのですが、 この場合、登録する際にButtonのリソースIDを一緒にテーブルに保存し、 それを元に読み込む、という考え方であってますでしょうか。 どなたか教えて下さい、宜しくお願いします。
button[i][j]でIntentでiとj渡せばよくね
好きに作ればいいさね
(i)
Android1.6で、リストビューを自動的に、滑らかにスクロールさせる方法ってありますか?
テーブルに保存てなんだよ?xmlに記述のことか?
489 :
483 :2011/10/19(水) 01:20:07.70
>>488 DBのTBLです
登録した後にButtonからそれぞれ登録内容を表示したいのですが、
その際にButtonのIDと登録内容を紐付けしないと見れない⇒登録内容のTBLにIDも突っ込む
という考え方をしてたのですが・・・駄目な点があればどうか教えて下さい
R.xxxxの中身ってビルドごとに変わるんじゃないか。
もし俺がDB経由でやるなら、DBには曜日・時限と科目名を保存する 曜日・時限からボタンのIDは親画面で解決させる そうしないと、他の画面でDBのデータ使うときに、 いちいち親画面のID気にしないとダメになるぞ
ようやく意味が分かった テーブル作るときに |row_id|曜日|時限|科目| 1 1 1 null ←月曜の1限目 2 1 2 null ... 35 5 7 null ←金曜の7限目 が初期で入るわけだから 例えば月曜1限のボタンならid=11、月曜2限ならid=12、火曜1限ならid=21とか割り振って インテントで送ったidを10で割って、商と余りが曜日と時限に一致するレコード更新して カーソル回すときに button[cr.getInt(1)-1][cr.getInt(2)-1].setText(cr.getString(3)); すればいいんじゃない?
まじで!?
>>479 「nullの時はputじゃなくてremoveを呼ぶ」ように書けばいい。
495 :
デフォルトの名無しさん :2011/10/19(水) 09:43:23.55
TTEditFontで自作したfontと、 Androidのデフォルトのfontのサイズを合わせたいんですが、 デフォルトのfontの仮想ボディサイズ、アセント、ディセント、ベアリング幅等はどうやったら分かりますか?
Nexusみたいな解像度だとdensityはいくつになるのかな?2.5とか? XPeriaやGalaxyは1.5、SHARPは2.0が多いけど。
flash builderのスレがないのですが、ここで良いのでしょうか?
flash系のスレじゃね?
プログラムに直接関係ない質問で申し訳ないんですが 作ったアプリの実機での動作確認てしてますよね? スマホ端末を白ロムで買ってロック解除してwifi環境で確認という方法で良いんでしょうか?
不正終了ってデバッグとか、Log で追ってくしかない?
>>500 wifiならロッククリアいらないンジャナイカ
いまEditTextをsql検索に使っているんだけど これを検索物理ボタン押したら出ねくるやつに置き換えることはできるかな?
>>501 おれ中古で買ったauのIS03をそのまま使ってるよ。
OS起動時にSIMカードがありませんって怒られるが、その後は普通に使える。
WiFiにつないでちゃんとマーケットからアプリも落とせてる。
ヤフオクで7000円くらいだった。
505 :
:504 :2011/10/19(水) 19:21:14.53
>>500 ,502
SIMロックのかかった端末は、解約済みのSIMでいいから刺しておけばwifiは使えると思う。まあ機種にもよるけど。
>>503 やりたいことがイマイチ判ってないかもだけど
QuickSearchBoxで調べるといいかも
OS4ってどうなの?俺らは何かしなくてもいいの?
どうもこうも公開されたばかりやん。
510 :
500 :2011/10/19(水) 21:01:05.53
>>502 ,504,506
情報ありがとうございました、助かりました
ここの猛者たちは、eclipseでデバッグした時の、実行時エラーのログを読み取って自力解決するわけですか・・・?
>>511 何を言いたいのかさっぱりわからん
まずはログ見ないと何もわからんだろうに
513 :
デフォルトの名無しさん :2011/10/19(水) 21:19:44.12
うわああああああ 原因見つけるのに2日悩んだ不具合の元凶は一週間前の俺だった
すいませんWindows用にJavaでゲーム作ったとしてほとんど修正せずにAndroidで動かせるものなんですかね
515 :
デフォルトの名無しさん :2011/10/19(水) 21:52:20.71
はい無理ですね
WindowsでJavaなんて誰もプレイしてくれないから気にしなくていいよ
>>511 エラーログも見ずに、自力以外で解決されることがあるんだろうか?
SDK自体にバグがあって解決を待つとか?
write onece run anywhere じゃなかったのか
AndroidはJavaプラットフォームではありませんから 言語がJavaなだけ
ランタイム環境もデバイスも違うし。
アプレット?WinでJavaゲーム作る奴がそんな質問するかね JavaScriptの間違いではw
swingでgraphicsクラス使ってやろうとしてるんだが駄目なん
ギャラリーをIntentで呼び、結果パスを受けてビットマップを生成しています。 挙動事態は問題なくうごいてるんですが、デバッグ実行した際ギャラリーに行った時にアプリが一度終了され、 戻って再度されたときにはデバッグ実行が外れてしまいます。 Webブラウザ等を呼んだ場合は問題ないんですが… 実行後にデバッガをアタッチって出来ないんでしょうか?
ちょっと教えて Drawable型で取得したアイコンの画像をショートカットのアイコン画像用に使いたいんだけど ショートカットのアイコン画像を設定する時に↓のようにParcelable型にしないとだめなんだよね? Parcelable iconResource = Intent.ShortcutIconResource.fromContext(this, R.drawable.icon); intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, iconResource); どうやって型変換するんだろうか? 今日1日これに悩んでたけど解決せず。。Androidムズカシス
>>522 swingもawtも無い。それにMouseEventListenerとかも無い。
GUI系はandroid独自のネイティブAPIの上にandroid専用のライブラリが載る。
でもそれ以外のjavaパッケージは、例えば非同期ソケットとか、ArrayBlockingQueue<T>とか何でもアリ。
WiFiネットワークにつないだ時にDHCPからもらったIPアドレスを調べて、同一
セグメントに向けてUDPブロードキャスト発信とかできる。
あと音楽を再生するクラスにはイコライザークラスとかまでついてくる。
でもCanvasのdrawメソッド周りはあまり変わらないから ある程度簡単に移植出来るぞ
WindowsもターゲットにするならC++とOpenGLで作ればいいのに
528 :
デフォルトの名無しさん :2011/10/20(木) 00:44:59.92
sqlデータベースとかに保存させたデータ類ってどこに保存されるの? DOMからdata>data>・・・って行けば見つかるんだけど端末上で探そうとすると見つからない そもそも普通のユーザーが気楽にイジレルような場所に保存されるのでしょか?
>>524 無理
Intent#ShortcutIconResourceのソース見れば分かるけど、
パッケージ名とリソース名を保持してるだけ
実際に利用する際に↑を利用して読み込む仕組み
動的に生成した画像は利用できない
動的に生成した画像を使いたいならAppWidgetでがんばれ
>>528 rootとってない端末だとアプリのデータ領域はそのアプリからしか見えないと思って良い
531 :
デフォルトの名無しさん :2011/10/20(木) 00:56:44.98
>>527 androidってC++とOpenGLで動くんすか
NDKで
最も簡単にメソッドの遅延実行をさせる方法を教えて下さい...
Androidを始めて一ヶ月の初心者です。 調べても分からなかったので質問させてください。 100ページ程の電子コミックを作ろうと考えています。が、さすがに100個のlayout.xmlを作るわけではないですよね? おそらくリストアレイで画像を連番読み込み→で一個のviewflipperを設定したlayout.xml内で常に前ページと次ページを同時読み込みしていく流れかと思うんですが… これってあってます?
仕様次第
>>535 スライドショーのソースコードならネットに大量に転がってるから
まずはそれらの仕様を参考にするといいと思う
SharedPreferenceでパスワードを平文で 書きこんでるんだけど、root権限無い限りは この値を参照出来ないという認識で正しい?
>>538 getSharedPreferencesメソッドの第二引数による
一つの画面上の領域を分けて、pdfとボタンを表示できるアプリを作りたいのですが、 このような実装は可能ですか?
pdf上にボタン表示ってのでもなければ、普通にできる。 つか一瞬で試せるとおもうが、何か特殊な背景でもあるのか?
なぜ出来ないと思うのかがさっぱり分からんよなw
pdfは別アプリってことじゃないの?
てーか自前アプリにPDFを表示って、どうやんの?
TextViewに"PDF"と。
WebViewでpdf表示いけないってのが残念だった。
spinlockのコードをインラインアセンブラで組み込みたいんだけど selected processor does not support `ldrex r2,[r1]' って怒られます。 gccに与えるCPU用のフラグオプションとか足りないのかな? NDKにインラインアセンブラのサンプルコードって入ってないみたいだし・・・
あー、gas(?)のデフォの記法だと、ldrex %2,[%1]とかだったりした気がする 見当違いだったらごめんね
550 :
デフォルトの名無しさん :2011/10/20(木) 13:46:59.53
android-sdkをR14にアップデートしたら、 アプリ実行時に aapt.exe がクラッシュしちゃって起動もデバッグもできない・・・ Eclipseの再インストール、SDKの再インストールもしても、直らない 同じ症状の方居ますか?また、解決方法なんかあたりつきますかね?
アップデートする前のバージョンのaapt.exeは試した?
552 :
デフォルトの名無しさん :2011/10/20(木) 13:59:48.08
>>551 それがアンインストーラーが削除しちゃったんです・・・
Andoroidプログラム初心者です。これから作りたいアプリがあり、いろいろ調べています。 Flashで作成たコンテンツをアプリ側でラッピングして使うことはできるでしょうか?
>>552 大丈夫か??
もう一回ダウンロードすればいいだけだろう
555 :
デフォルトの名無しさん :2011/10/20(木) 14:19:51.56
>>554 どこからダウンロードできますか?
探しても見つからなくて・・・
androidのログってファイルに追記され続けているんでしょうか? 3秒毎にWifi強度等がログ出力される端末使ってるんですが、 これがNANDメモリに書き込まれていると寿命が縮まると思うので気になりました。
558 :
デフォルトの名無しさん :2011/10/20(木) 14:53:09.86
>>554 別のPCから古いの持ってきたんですが、
やっぱりダメでした。
ファイルサイズが7倍くらい違うし・・・
みんなは普通に使えているの?
何でスキル無いのに飛びつくの?
大金が手に入れられると聞きました。
これにはアンディ・ルービンさんも苦笑い。
ウィジェットで表示を変えるイベントを起こして 一定時間経過したら元に戻る仕組みを作りたいんですが タイマーって使えないんでしょうか。 反応なくて困ってます
>>563 説明不足ですみません
表示を変える→表示を戻す の間にディレイを発生させようとしているので
現状はクリックイベント内にそのままタイマーを入れています
>>560 個々の作品はほとんどフリーウェアばかりで大金なんか手にはいらん
それなりに売り上げ出せるのは、他が簡単に真似のできない技術をもっているか
会社規模のプロジェクトか同人サークルみたいなセミプロ集団の作品だけ
個人で活動する場合「他が簡単に真似のできない技術をもっているか」これが超!超!大事
つまり2chに質問して回答もらえるような内容物は、誰もが使える技術であって大金とはほどとおい
>>557 内蔵ストレージのNANDフラッシュメモリに書かれるのかどうかです。
SDなら差し替えできるので気にしないです。
567 :
デフォルトの名無しさん :2011/10/20(木) 17:13:21.79
ソフトキーボードの制御に関してお伺いさせてください。 やりたい事としては、Javaのコード内で以下のような事をやりたいというものです。 ・ソフトキーボードの全角や半角の切替 ・入力モードを数字やアルファベットに変更 EditTextの中のinputModeに値を設定する事でできることはわかっているのですが、 動的にソフトキーボードのプロパティを変更するような事をやりたいです。 例えば、 softKeyboardService.inputMode = "ALPHABET"; でソフトキーボードの入力モードが変わるような機能はありませんでしょうか?
ゲーム作ってて、拡張子がpngやjpgなんだけど、中身をスクランブルかけたファイルが 大量にある(ファイルはSDに保存) それを端末のスキャン何とかがサムネールにしようとして?延々とエラーを吐き続け LogCatがそれで埋め尽くされてまともに機能しないんだけど、こういうケースにあった 人いない?
拡張子変えろや
1. 内容の形式が違うなら拡張子変えるもんだろjk 2. .nomedia置けよ
>>568 何そのスクランブル……
拡張子分かってるんだったら先頭4
バイトが復号出来るようにすればいい訳で、力技で一瞬になっちゃうぞ。
せめて拡張子変える、あわよくば暗号化してアーカイブするとかしないと。
>>553 AIR androidでぐぐれば何ができて何が出来ないかいっぱいでてくるよ
あと多分ここはjavaやNDKの人が多いんでFLASH板のが詳しいかもね
>>572 モバゲーかどっかのゲームがスクランブルかけた画像ファイルを
SDに大量にダウンロードしてきてギャラリーが開かなくなったことならある
admobが仮想デバイスでも実機でも表示されません
>>254 さんのもみましたがダメです
AdView adView = new AdView(this, AdSize.BANNER, "ここにIDを入力");
LinearLayout layout = (LinearLayout)findViewById(R.id.adview);
layout.addView(adView);
adView.loadAd(new AdRequest());
をonCreate上に記載してます。
AndroidManifest.xmlには
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<activity android:name="com.google.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation"/>
を追加してます
layoutのadviewは
<LinearLayout xmlns:android="
http://schemas.android.com/apk/res/android "
android:id="@+id/adview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
としています
admobのページでステータスはアクティブ: 現在、サイトが AdMob に広告リクエストを送信しています。
となっているのですが・・・
お願いします。
>>575 とりあえずadViewのイベントリスナーを登録してみたら?
577 :
デフォルトの名無しさん :2011/10/20(木) 23:15:29.23
画像をDLしてlistviewに表示してるんだけどスクロール動作が重い どれくらい重いかというと公式マーケットアプリくらい重い 画像DLを無くすと軽くなるから原因はこれなんだろうけど… 一応画像DLと表示はasync使ってるんだけどなぁ どうにかならんだろうか
サムネにはできないのか
Bitmap型の画像データを文字列型に変えることはできないでしょうか? Bitmap→StringとString→Bitmapの双方向変換がしたいです。 Bitmapをバイト配列に変換し、new Stringで文字列化 getBytesでバイト配列化し、Bitmapに変換 では画像を表示することが出来なくなりました。 何か方法がありますでしょうか?
>>579 バイト配列から文字列にするとき、コードが存在しなかった場合に欠落してるんだろ
何をしたいのか分からんからこれ以上は答えられない
メールの添付ファイルはbase64で文字列に変換されてるぞ ソースならどっかに落ちてる
>>575 その設定だと他のViewの右にAdViewが配置されるんだけどそれで良いの?
つまりLinearLayoutにandroid:orientation属性が足りないんじゃね?ってこと
>>582 ありがとうございます。
<LinearLayout xmlns:android="
http://schemas.android.com/apk/res/android "
android:id="@+id/adview"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"を追加したら表示されました。
見えないところに表示されていたのですね・・・
ありがとうございました。
resに入ってる画像を別のアプリから呼び出して使いたいんですけど どういう手段をとればしょうできるでしょうか?
>>584 createPackageContext(). getResources()
>>584 例えばインテントを指定してインストール済みアプリから該当リストを取得して、
リストから対象アプリのアイコンのBitmapを取得するとか。
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
List<ResolveInfo> resolveInfos = getPackageManager().queryIntentActivities(intent, 0);
BitmapDrawable bitmapDrawable = null;
for(ResolveInfo info : resolveInfos){
ActivityInfo activityInfo = info.activityInfo;
if(activityInfo != null){
if(activityInfo.packageName.equals(欲しいアプリのパッケージ名)){
bitmapDrawable = (BitmapDrawable)activityInfo.loadIcon(getPackageManager());
break;
}
}
}
あ、すまない。誰もアプリのアイコンなんて言ってなかった…。
R.drawable.enemy ※enemyはString型で敵の名前が入ってる こんな感じで敵によって表示する画像を変えたいのです どうすれヴぁ・・・
589 :
デフォルトの名無しさん :2011/10/21(金) 20:08:06.53
Twitterの拡張子なしアイコン画像のフォーマットの種類を取得したいんだが、 どうやれば良いですか? AndroidにはImageIOクラスがないみたいですが・・・
>>588 getIdentifier(String name, String defType, String defPackage)
>>589 そもそもなんで種類が知りたいの?デコードだけなら種類を知らなくてもできるでしょ。
>>590 あざす!!!!
後で試してみます!!!愛してます!!!
593 :
デフォルトの名無しさん :2011/10/21(金) 20:28:30.80
>>591 ガベージコレクションでフィールドの画像が消えるから
ファイルに保存たい
594 :
デフォルトの名無しさん :2011/10/21(金) 20:31:47.26
拡張子なしでも画像の保存、読み込みできるのかな? やってみるか・・・
公開してるアプリの有効インストール数が2130くらいあったのが、17日に一気に1450まで落ちていたのですが、 これって有効インストールとして扱う条件が変わったということですか?
有効は増えてるけど合計変化なし
>>595 うん、計算が変わった。英語の記事があったけどurlわすれた
有効なインストール数(端末): 8 (´;ω;`)ブワッ
涙ふ(´;ω;`)ブワッ
600 :
デフォルトの名無しさん :2011/10/21(金) 21:42:35.98
(´;ω;`)ブワッ
>>597 ありがとうございます。
有効なインストール数って結局なんなんだろう
最初は単純に現在インストールされてる数だと思ったけど、それならこんなに変わらないはずだしなあ
数日以内にアプリを起動した端末の数とかなのかな
いえいえ
英語全く読めない(´Д`)
>>595 俺なんか2000→1000なんだぜ。。。
605 :
デフォルトの名無しさん :2011/10/22(土) 00:15:18.51
だせえ
>>593 どうしても元のフォーマットじゃないといやなの?
単にイメージをキャッシュしときたいだけなら読み込んだ時点でbitmap型になってるんだから
それをPNGかJPG好きな方で保存するってので駄目?
涙ふ(´;ω;`)ブワッ
MediaPlayerのerror(1,-17)ってなんでしょうか... warning(1,26)も出ています。 教えて下さいお願いします..
最初からどうも腑に落ちなかったんだよな。 合計インストールはあくまで端末の数しかカウントしてないのに、 アクティブインストールの方はアップデートの数もカウントしちゃってるんなら、アクティブ率なんて(というかこの2つを比べること自体)何の指標にもならないだろうに。何のために表示してんの?ってさ。 あの仕様考えたの一体誰だよ。有り得ないレベルだろ。
というかアップデートの数カウントしてるんなら、例えば三回アップデートしたあとアンインストールしてその後またクリーンインストールしたらアクティブ数はどう変化すんの?って話。 アップデート分は消えて新規インストールで+1か、アンインストールしたあともアップデート数は覚えてて+4なのか… そもそもアンインストールした後またインストールしたらそれはアップデートとしてカウントされるのか?とか… いずれにせよアクティブ数というものが全く何の意味もなしていないとしか思えなかった。 これ考えたやつホントに技術者かって感じ。
>>608 error(1,-17)は、見たことあるような…
.prepare()の位置が悪いとかそんなだったような気が…
間違ってるかもしれんが試してみて
>>611 すみません、mp3を使っていたのでoggに変換したら正常に動作しました。
ありがとうございます
なぜmp3でエラー出たのか
プログラミングじゃないけど、Eclipsの実行でエミュレーター呼び出す時 1回目はエミュレーターが起動するのに2回目移行は委譲中で止まったまま 1回目で起動したエミュレーターを殺して2回目を実行しても同じ… 誰か助けて
俺もやってみたいなと思って始めてみたけどSDKのToolsとかにパス通らんwww (ノд・。) グスン
パス変わったから古い記事のままやっていくとダメだぞ …\android-sdk\tools ↓ …\android-sdk\platform-tools
ディスクが足りなくなったからAndroidのSDKを別のドライブに入れ直して EclipsでAndroidSDKのパスを変えようとしたら設定画面が開かない… プラグイン一回アンインストールしても前のパスを見に行ってる なんだこれ プログラミングよりも環境面で苦労する アホか
>>617 設定ってどこ開いてる?
sdk managerはsdkに含まれてるツールだからパス変えたら動かないのは当然。
sdkパスの設定はWindow -> preferences -> androidだよ。
>>618 そのpreferencesの画面でルート以外を選択するとエラーがでて何もできない状態
とりあえず前AndroidSDKのパスをコピーして再現したらなんとか変更はできたけど
今度は始めて選択する時に
エラーが発生しました。詳細については、エラー・ログを参照してください。
com.android.sdkuilib.internal.widgets.SdkTargetSelector.access$000(Lcom/android/sdkuilib/internal/widgets/SdkTargetSelector;)Z
と出るようになった
なんなんだいったい…
eclipse -cleanで起動しても同じか?
>>619 もしインストール先のフォルダがソフトリンクとかでリダイレクトされてるなら別の場所がいいよ
>>619 もしインストール先のフォルダがソフトリンクとかでリダイレクトされてるなら別の場所がいいよ
なぜ2度も言うし
大事なことですしおすし
時すでに
おすし
628 :
デフォルトの名無しさん :2011/10/22(土) 13:09:29.36
>>606 解決しました、拡張子なくても読み込みオkでした。
拡張子に何かしらの意味があると思ってるならそれは違うぜ
ワレ思う タッチパネルが出た当時から 絶対「くぱぁ☆」アプリが出てくると思っていたが はや12年 今だ見たこと無し な・ぜ
死ねよキモヲタが
インテント使ってアクティビティからアクティビティへ遷移する時に プログレスダイアログを表示したいんだが方法がわかんね。 ハンドラ作ってそこでいちいち一個ずつやらないといけないの? まとめて実装する方法ってないの?
633 :
デフォルトの名無しさん :2011/10/22(土) 15:28:46.65
C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Android\android-sdk\tools;C:\Program Files\Android\android-sdk\platforms-tools フォルダ名は合ってるとしてpath通らないだがなぜかわかる?(T△T)
スペースが入ってるフォルダ名は""でくくる
635 :
デフォルトの名無しさん :2011/10/22(土) 15:58:39.97
>>634 それでもだめだ通ってないわ〜
コマンドプロンプトでadb -helpってうっても認識されてないって出る
>>635 adb.exeが存在するのは確認したのか?
まずManagerでplatform-tools コンポーネントを落として来ないと空だぞ
とりあえずコマンドラインでそこへいって adb って打て
>>633 platforms-toolsってパス間違ってるぞ。
>>632 重い初期化をonCreateでやるのがNG.
onCreateでプログレス出してからAsyncTackでも起動すれ
>>636 AVDとSDKのどっちのmanegerで落とせばいいのかな?
どっちにもそんなかんじのでてこないけど(・・;)
>>632 アクティビティ→ダイアログ→アクティビティか
アクティビティ→アクティビティ→ダイアログが
Androidで意外と悩むのがlistだ。 Arraylistとかsimplelistとかアタマ痛いよ。 色んな方法があるからどの方法でも目的の振る舞いは達成できそうだけど。 TwitterのタイムラインでString型だけじゃなくて プロフィール画像も取得して表示させたいんだけとやり方が思い付かない。
>>642 BaseAdapterが一番シンプルで、他のAdapterはみんなその上に機能をかぶせただけ
BaseAdapterさえ理解してれば後は割とどうにでもなる
マーケットのDL数が更新されんな…
>>642 Twitterの内容をリストで表示なんて
本でもネットでもそこかしこにサンプルあるじゃないか
>>642 達成できそうというその方法どれでもいいからやってみるといいよ。
大元は変わらないから後で変えたくなっても苦労なく差し替えできるから。
どれがベストか?なんてのは慣れてから考えるもんだ。
まずはなんでもいいから実装してみ。
647 :
デフォルトの名無しさん :2011/10/22(土) 19:36:58.28
背景画像を設定してるとpreferencesをスクロールした時背景が元の黒いのに戻ってしまいます listviewでも同様の症状が出たけど listview.setScrollingCacheEnabled(false); することで解決できました preferencesの場合はどこをいじればいいのでしょうか
>>642 タイムラインをどうやって取得してるか知らないけど
Twitter4J使ってるならStatusの中にUserってのがあってその中にプロフィール画像のURLがある
649 :
デフォルトの名無しさん :2011/10/22(土) 20:36:37.61
>>645 ファイルに保存するのを見たことがない
ところで、本体のキャッシュフォルダーの中身ってガベージされる?
650 :
デフォルトの名無しさん :2011/10/22(土) 20:37:10.11
AsyncTaskの同時実行数を制限する方法とかあったりしませんか?
>>631 童貞キモオタが何いってるの?w
彼女いれば普通にくぱぁするし、それの何処がオタクなのかと小一時間といつめてみたいw
653 :
デフォルトの名無しさん :2011/10/22(土) 21:52:20.32
虫以下のケンカすんじゃないよ
くぱぁアプリなんか作って公開したらgoogleに速攻消される AndriodMarketは無法地帯言われてるがエロはバンバン削除されてる エロゲマーケットにでも持っていったら出せるかも知らんけどね
例えば、くぱぁアプリを作ってオークションとかで売るのは違反になるのか? もちろん野良アプリでアップしてあるURLとパスを教えるっていう方法で
signedのapkをexportしようとしているのですが、 key storeを新規作成するときのpassword と key を作成するときのpassword は誰の為に必要なのでしょうか? 証明書ってpassword必要ないですよね? あと keystore と key はどの単位で作成するものなんでしょう? keystoreは個人で1つで、keyは公開毎に作成?
>>657 複数のアプリで同じキーを使っても問題ない。
キーが違うとパッケージが同じでもアップデートできないので、あまり頻繁に変えて紛失したりすると怖い。
くぱぁアプリとかネーミングがウケるな・・・
現在オーディオプレイヤーを作っているのですが スリープ時やアクティビティがバックグラウンドにある状態でも Bluetoothのキー入力を取得する方法を探しています。 よろしくお願いします。
>>657 その証明書を他人に使われないためのパスワード
662 :
デフォルトの名無しさん :2011/10/23(日) 01:41:04.29
タブA→タブB→タブA と タブA→インテントで別アクティビティ→閉じる→タブA の、最後にタブAを表示する挙動が違うんだけどなんでだろう どっちもonResumeが呼ばれてるだけぽいんだけど
663 :
デフォルトの名無しさん :2011/10/23(日) 02:06:32.70
ぬおおおおタブ用の画像の場所が見つからねえ どこにあるんだ…
>>658 ありがとうございます。
アプリ1つに1キーにしておきます。
このあたり、当たり前すぎる事なのか、わりと流して説明しているところばかりで・・・
そのわりに失敗してやりなおせばいいってわけでもないので困る
>>661 なるほど。自分のPCの管理に自信があれば、強度低いパスワードでも良いんですね
わざわざパスワード生成してまで管理すべきかどうか悩んでました
マウスつなげたとき、マウスカーソルの座標を取りたいのだが、 どうすればいいですか?
>>664 たしかにキーのとこは最初は躊躇する。
つい一週間ほど前にもこのスレでまったく同じ質問がでてるし。
スクショのアップ時に 「応答を解析できません。 JSON 応答を変更するブラウザ拡張機能やアドオンがインストールされている場合は、 それらを無効にしてからこのページを更新してください。」 と出てアップできません...。 ググったのですが解決方法がわかりませんでした。 apkはアップできています。 どなたか教えてください。
どこにどんなコードで上げようとしているのですか
コンパイルエラーは出ないのにエミュにアイコンが表示されないのはなんで?
もう質問の意味すら分からない。
クリップボードの内容をインテントで別アプリのエディタに飛ばすようなことってできないでしょうか? ・自アプリのパーミッションは最小限にしたい ・でも内容を保存したいという要望ががが
674 :
デフォルトの名無しさん :2011/10/23(日) 13:10:05.39
test
675 :
デフォルトの名無しさん :2011/10/23(日) 13:24:03.06
すいません。質問があります。ver2.3.3を使用しています。
下記を使用し、androidの勉強をしております。
http://magpad.jugem.jp/?eid=94 layoutInflaterを使用し、xmlファイルを、baseadapter経由でlistviewに表示させる内容です。
listviewには、setOnItemClickListenerを設定しております。
Focusable="false"設定をinflater.xmlとlistview共に設定しております(LinerLayoutも含め)。
エミュを立ち上げ、任意のlistview項目をクリックしてみたところ、OnItemClickListenerが反応せず、
listviewの背景色も変化せず困っています。
何が対応策がありましたらお知恵を拝借させていただけないでしょうか。
以上よろしくお願いします。
>>675 OnItemClickListener#onItemClickの内容はどうなってるの?
677 :
デフォルトの名無しさん :2011/10/23(日) 17:15:37.64
ListViewにセパレータ(電話帳の頭文字だけ表示する色違いの行みたいなやつ) を割りこませるためにgetViewに二種類のviewを読み込んで内容によって振り分けてるんだけど そのためにviewの使い回しができなくなってパフォーマンスが落ちてしまった どうすりゃいいだろうか?もしくはセパレータを割りこませるもっといい方法は無いだろうか
>>677 getViewTypeCount() と getItemViewType() をちゃんと実装すれ
679 :
デフォルトの名無しさん :2011/10/23(日) 17:41:54.49
>>678 これで何とかできそうです
ありがとうございます
すみません
>>667 ですが
MacのFirefox,safari、
Win7のFirefox,safari,chrome,IE,opera
で試したのですが、ダメでした。
ブラウザが原因ではないと思います...。
どなたか助けてくださいお願いします(TT)
>>680 何がしたくて
どんなことをしたら
どうだめになったのか
おまえの質問は2つめが完全に欠けてる
マーケットにアプリを登録するときの話です.. ここはスレ違いでしたか?
あっちのスレの方がいいかも
686 :
デフォルトの名無しさん :2011/10/23(日) 19:10:35.09
asynctaskしてる間操作させないようにする方法って有る? progressdialog出せばいいんだろうけど見た目が嫌いで…
>>686 実行中はイベント発生しても処理しないようにしたらいいやん
688 :
デフォルトの名無しさん :2011/10/23(日) 19:16:13.68
>>676 lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Log.d("MyApp", "1-7 = ");
}
});
の様に書いておりますが、LogCatには何も出力されません。
#MyAppでフィルタを掛けています
689 :
デフォルトの名無しさん :2011/10/23(日) 19:31:28.68
690 :
デフォルトの名無しさん :2011/10/23(日) 19:44:02.03
691 :
デフォルトの名無しさん :2011/10/23(日) 19:48:04.69
>>688 違いました。
タグでフィルタであっています
/etc/timezoneファイルと /etc/localtimeファイルは どちらもタイムゾーンを選択するとあるんですが何が違うんでしょうか
書き込み先を間違えました スレ汚し申し訳ないこのブタ共が
>>688 lvって何?ListActivityを継承してるなら、
onListItemClickをoverrideして使うんじゃないの?
695 :
デフォルトの名無しさん :2011/10/23(日) 20:17:10.26
>>694 すいません。その通りですね。
今やり直しています。
696 :
デフォルトの名無しさん :2011/10/23(日) 20:19:20.13
>>693 >このブタ共が
いちいち何か一言付け加えないと気がすまないのか
697 :
デフォルトの名無しさん :2011/10/23(日) 20:37:10.17
>>694 やり直しましたが、onListItemClickが反応しません。
layoutInflaterがlistviewの上に覆いかぶさっている為、
listviewまで変化が行かずlistenerが反応しないと考えているのですが。
listviewを反応させたいと考えています。
>>697 ListViewを拡張する方法が使いたいのか、
それともListViewを使いたいかどっち?
699 :
デフォルトの名無しさん :2011/10/23(日) 20:58:12.20
>>698 ListViewを使いたいです。
且つ、getview内でレイアウトを記述するのは避けたいです
(layoutInflaterで作成した物をListviewに表示させていきたいです)。
701 :
デフォルトの名無しさん :2011/10/23(日) 21:12:30.30
>>700 http://www.adakoda.com/android/000077.html は、下記のメッセージが出て見ることができませんでした。
”Your page is blocked due to a security policy that prohibits access to category
Adult/Sexually Explicit”
>ListActivityじゃなくてActivityを継承してListView使えばいいんじゃないの
行ってみたのですが、今までと同様に”setOnItemClickListener”が反応いたしませんでした。
702 :
デフォルトの名無しさん :2011/10/23(日) 21:45:23.93
googleカレンダーと連携して予定を登録する方法を教えてくれませんか豚ども
703 :
デフォルトの名無しさん :2011/10/23(日) 21:47:02.67
フォーカスできないアイテムはクリックできないんじゃないの?
705 :
デフォルトの名無しさん :2011/10/23(日) 21:56:39.84
>704 そう思い、 Focusable="false"設定をinflater.xml、 Focusable="true"設定をlistviewに設定しております(LinerLayoutも含め)。 重なり合ったview部分の、下層viewをフォーカスするには効果がない?
javaは嫌いで金もありませんがandroidアプリが作りたいです
707 :
デフォルトの名無しさん :2011/10/23(日) 22:10:53.85
>706 うむ 作るのが目的?
>>705 結局何がしたいんだっけ?
普通に作ればいいんじゃないの?
710 :
デフォルトの名無しさん :2011/10/23(日) 22:29:12.05
>>708 目的。
layoutInflaterで作成した物をListviewに表示させていきたいです。
任意のlistview欄をタッチすると、背景色が変わるようにしたいです。
問題点。
現状、listviewにタッチしても背景色が変わりません。
listviewにlistenerを設定しても、listenerに反応が無いためlistviewに
タッチできていないと判断しております。
知りたいこと。
listviewにタッチする方法。
(layoutInflaterでlistviewに貼り付けたviewの下部にある)
以上です。
>>710 Focusableなんて設定しなくてもこちらではちゃんと動いているんだけど?
余計なことをやめてみたら?
>>701 エラーに釣られてクリックしたのは俺だけじゃないよな、豚ども。
713 :
デフォルトの名無しさん :2011/10/23(日) 22:49:25.29
>>711 >余計なことをやめてみたら?
確かに色々思考錯誤しております。
真に申し訳ありませんが、差し支えなければソースを見せていただけないでしょうか。
単なるlistviewだけのサンプル造ってみれば判るだろ。
>>713 今スマホだから無理
君が問題が発生する最小限のソースを上げたほうがいいのでは?
そうだそうだ!
>>710 xml layoutのfocusableをfalseにしてるっていうけどそれってルートだけ?
もしそうならルートに指定しても意味ないから、ボタンとか入力を受け取りそうなものに直接focusableを指定してみたら?
718 :
デフォルトの名無しさん :2011/10/23(日) 23:01:29.05
>715 そうですね。 少々時間が掛かります。
719 :
デフォルトの名無しさん :2011/10/23(日) 23:26:18.27
今までメンドクセと思って英語サイトあまり見てなかったが googleの本拠地だけあってあいつらすげーな
例えば何が?
721 :
デフォルトの名無しさん :2011/10/23(日) 23:49:35.46
>>720 こっちのサイト見て分かんなかった、というか情報すら殆ど見つからなかった
ことを聞いてみたらすぐに解決してくれた
722 :
デフォルトの名無しさん :2011/10/23(日) 23:56:23.95
718です。遅くなり申し訳ありません。 本文が長く書き込めないため分割して書き込みます ・・・・・・・・・・・・・・・・・・・・・・ 以下ソース 分割1 public class TestActivity extends ListActivity { InflaterListAdapter adapter; ListView lv; LayoutInflater inflater; ArrayList<Row> coll; Row list; Row rw; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //Rowクラスの配列宣言。 coll = new ArrayList<Row>(); list = new Row(); //Rowクラスのフィールドへ値を代入する。 //配列数2のRowクラス配列を作成する。 list.setTextLeft("Left1"); coll.add(list); list.setTextLeft("Left2"); coll.add(list); //main.xmlのlistview lv = (ListView)findViewById(android.R.id.list); //getviewからrow.xmlを取り出す。 adapter = new InflaterListAdapter(this, coll); setListAdapter(adapter); }
723 :
デフォルトの名無しさん :2011/10/23(日) 23:58:03.61
718です。遅くなり申し訳ありません。 本文が長く書き込めないため分割して書き込みます ・・・・・・・・・・・・・・・・・・・・・・ 以下ソース 分割2 class Row { public String textLeft = null; public String getTextLeft() { return textLeft; } public void setTextLeft(String textLeft) { this.textLeft = textLeft; } } public class InflaterListAdapter extends BaseAdapter { private Context ctx; //コンストラクタ public InflaterListAdapter(Context context, ArrayList<Row> list) { { ctx = context; coll = list; } } public int getCount() { return coll.size(); } public Object getItem(int position) { return coll.get(position); } public long getItemId(int position) { return position; }
724 :
デフォルトの名無しさん :2011/10/23(日) 23:58:53.39
718です。遅くなり申し訳ありません。 本文が長く書き込めないため分割して書き込みます ・・・・・・・・・・・・・・・・・・・・・・ 以下ソース 分割3 public View getView(int position, View convertView, ViewGroup parent) { LinearLayout layout = new LinearLayout(ctx); rw = (Row)coll.get(position); LayoutInflater inflater = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE); layout = (LinearLayout)inflater.inflate(R.layout.row, null); //row.xmlに対しlistenerを設定する。 layout.setOnClickListener(new View.OnClickListener() { public void onClick(View v ) { Log.d("MyApp", "layout onClick = "); } }); return layout; }//getview }//public class InflaterListAdapter extends BaseAdapter @Override protected void onListItemClick(ListView l, View v, int position, long id) { Log.d("MyApp", "onListItemClick= "); }
725 :
デフォルトの名無しさん :2011/10/23(日) 23:59:32.59
718です。遅くなり申し訳ありません。 本文が長く書き込めないため分割して書き込みます ・・・・・・・・・・・・・・・・・・・・・・ 以下ソース 分割3 }
726 :
デフォルトの名無しさん :2011/10/24(月) 00:01:30.13
718です。遅くなり申し訳ありません。
・・・・・・・・・・・・・・・・・・・・・・
以下 main.xml
<?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" android:weightSum="1">
<ListView android:id="@+id/android:list" android:layout_width="match_parent" android:layout_height="272dp" android:focusable="true"></ListView>
<TextView android:id="@android:id/empty"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Empty set"/>
<Button android:text="Button" android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
</LinearLayout>
727 :
デフォルトの名無しさん :2011/10/24(月) 00:08:46.50
718です。遅くなり申し訳ありません。
本文が長く書き込めないため分割して書き込みます
・・・・・・・・・・・・・・・・・・・・・・
以下 row.xml 分割1
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="
http://schemas.android.com/apk/res/android "
android:layout_width="fill_parent"
android:layout_height="fill_parent" android:orientation="vertical" android:weightSum="1" android:focusable="false">
<LinearLayout android:layout_width="match_parent" android:id="@+id/LinearLayout02" android:orientation="horizontal" android:layout_height="40dp" android:weightSum="1">
<TextView android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceLarge" android:id="@+id/textView3" android:layout_width="52dp" android:text="1" android:gravity="right"></TextView>
<TextView android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceMedium" android:id="@+id/textView2" android:text="番" android:layout_width="wrap_content"></TextView>
<CheckBox android:layout_height="wrap_content" android:id="@+id/checkBox3" android:layout_width="wrap_content"></CheckBox>
<TextView android:id="@+id/textView4" android:text=" " android:layout_width="20dp" android:layout_height="wrap_content" android:layout_weight="0.31"></TextView>
<EditText android:layout_height="wrap_content" android:id="@+id/person_name" android:inputType="numberDecimal" android:layout_width="61dp"></EditText>
<EditText android:layout_height="wrap_content" android:id="@+id/editText2" android:inputType="numberDecimal" android:text="9999" android:layout_width="61dp"></EditText>
</LinearLayout>
728 :
デフォルトの名無しさん :2011/10/24(月) 00:10:05.54
718です。遅くなり申し訳ありません。 本文が長く書き込めないため分割して書き込みます ・・・・・・・・・・・・・・・・・・・・・・ 以下 row.xml 分割2 <LinearLayout android:layout_height="wrap_content" android:id="@+id/linearLayout2" android:layout_width="match_parent" android:focusable="false"> <ToggleButton android:text="ToggleButton" android:id="@+id/toggleButton1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:focusable="false"></ToggleButton> <TextView android:textAppearance="?android:attr/textAppearanceLarge" android:layout_height="wrap_content" android:id="@+id/textView6" android:layout_width="wrap_content" android:focusable="false" android:text="あ"></TextView> </LinearLayout> </LinearLayout>
もう日本アンドロイドの会できけよ
誰が読むんだよw
731 :
デフォルトの名無しさん :2011/10/24(月) 00:41:40.72
がんばったのに
荒すな雑魚
アプロダはなにもエロをあげるためだけに存在してんじゃねえんだぜ
734 :
デフォルトの名無しさん :2011/10/24(月) 00:53:46.85
でも見てくれるんでしょ
>>722 ・ListActivityをActivityにする。
・lv.setOnItemClickListenerを追加する。
・lv.setAdapterを追加する。
pastebin使え、アホめ。 普通に書けば出来ることがうまく出来てないんなら、何か間違った余計なことをしてしまってるんだよ。
面倒くさい奴。
AppWidgetをタップした時にそのアプリを立ち上げたいんだけど、そのあたりの処理ってOnClickをオーバーライドしてstartActivityしたらいいのかと思ったのだが AppWidgetってOnClickとかないよね?
SDKのエミュレータで4.1を起動した後ロゴ表示から永遠進まないんだけど どうしたらいいですか?
4.0でした。。
まだ永遠に待ってないだろ!嘘つき!!
永遠はあるよ…ここにあるよ
まじめな返答キボンヌ
永遠なんていらないから
とりあえず何分待ったんだ? まあ、4の不具合なんて知らないけど!
10分ほどです。 3.でも同じでした
メモリは128MBです
PCのでしょうか? メモリ2GB Windows XP SP3 Celeron E3200 のハイスペック仕様です!
起動するやつの設定弄ったら少し軽くなったようなそれ程変わらないような
調べると低スペックだと時間かかるみたいですね 1時間程待ってみます!
PC買い換えたほうが速い
遅いのはARMをエミュレートしてるからね 普段俺は特段の事情がなければx86版Androidで開発してる
>>752 おおおvirtualBoxでやってみるthx
754 :
デフォルトの名無しさん :2011/10/24(月) 07:02:16.01
>>735 ご返答ありがとうございます。
実行してみました。
しかしながら、エミュ時に、任意のlistview部分をマウスでクリックしても
listenerは反応せず、背景色も変化いたしませんでした。
>>754 本当にその背景色を変更する処理入れてんの?
入れたけどchangedしてないとかってオチか?
ListenerにToastなりブレークポイントなり入れまくってからまた来い
757 :
デフォルトの名無しさん :2011/10/24(月) 07:32:07.06
>>755 背景色はlistviewのデフォルトのものです。
listview欄をマウスでクリックすると、背景色がクリックした瞬間オレンジ色になりますが、
現状なりません。
>>756 Log.d("MyApp", "onListItemClick= ");
を入れています。しかし、listenerが反応しないのです。
正直
>>735 で出来ない理由が知りたいよ。
もしかして俺が間違えてるのか?
759 :
デフォルトの名無しさん :2011/10/24(月) 07:40:39.89
>>756 知りたい事は、row.xmlに対してはlistenerは反応しますが
main.xmlにあるlistviewに対してはlistenerがなぜ反応しないかです。
listviewにタッチする方法が知りたいのです。
(layoutInflaterでlistviewに貼り付けたviewの下部にある)
761 :
デフォルトの名無しさん :2011/10/24(月) 07:47:01.28
>>758 ソースに矛盾がなるか無いかの話しではなく、
実際listviewに設定してあるlistenerが反応しないのです。
>>761 じゃあこれだとどうなる?
lv = (ListView)findViewById(R.id.android:list);
763 :
デフォルトの名無しさん :2011/10/24(月) 08:26:50.29
>>すいません main.xmlの"android:id="にはどう書けばよろしいのですか
"@+id/test"とかでいいだろう。
>>738 AppWidgetは別プロセス上で動作してるからクリックイベントは取れない
PendingIntentを設定しておいてクリック時にIntentを投げてもらうようにしておく必要がある
766 :
デフォルトの名無しさん :2011/10/24(月) 08:35:45.06
>>764 "@+id/listてことですか?
”R.id.android”を解決できないというエラーがでるのですが
767 :
デフォルトの名無しさん :2011/10/24(月) 08:37:27.55
>>766 "@+id/****"
findViewById(R.id.****);
"@+id/list"にするならR.id.listじゃないすかね。
769 :
デフォルトの名無しさん :2011/10/24(月) 08:46:51.86
>>767 "@+id/android:list"
にしましたが、”R.id.android”を解決できないというエラーがでます。
770 :
デフォルトの名無しさん :2011/10/24(月) 08:49:14.13
>>767 それなら、通常の”extends Activity”使用時と変わらないのですが。
771 :
デフォルトの名無しさん :2011/10/24(月) 08:50:15.72
コード貼れ
>>762 > lv = (ListView)findViewById(R.id.android:list);
何言語だよこれ…
773 :
デフォルトの名無しさん :2011/10/24(月) 09:03:27.27
>>769 何故名称を一致させようとしないんですか
>>770 通常の”extends Activity”使用時ってどういう意味ですか?
777 :
デフォルトの名無しさん :2011/10/24(月) 09:16:33.43
>>774 名称一致をしようとしても、findViewById(R.id.android:list);
という書き方を初めて見たのでどう名称一致させたら良いか分かりませんでした。
>"@+id/****"
>findViewById(R.id.****);
”extends Activity”時では、main.xmlにおいて、android:id="@+id/****"と書き、
”extends ListActivity"時では、android:id="@android:id/list"と書く指定があるからです。
778 :
デフォルトの名無しさん :2011/10/24(月) 09:18:11.80
>>776 すいません。下記のメッセージがでて見れないのですが。
Your page is blocked due to a security policy that prohibits access to category
Adult/Sexually Explicit.
もう我慢の限界
>>778 そのメッセージをママに読んでもらってね
782 :
デフォルトの名無しさん :2011/10/24(月) 09:46:55.98
結局誰も773の問題を解決できないってことかいな
WEB API てのがいまいちワカラんお プリファレンスみたいに簡単に使えないのか
785 :
デフォルトの名無しさん :2011/10/24(月) 10:19:56.80
>>781 結果は同じでした。
>>784 なにやらlistviewはlistenerを受け取れないみたいですね。
詳細を見ようとした所、アクセス拒否でみれません。
見れる事ができる場所を探してみてみます。
フィルタリングワロタ
787 :
デフォルトの名無しさん :2011/10/24(月) 10:56:55.56
>>768 785です。
Game関係は軒並みアクセス拒否です。
2chのまとめサイトも拒否。
エロとか刺激の強いものも拒否。その他結構見れないもの多数。
有線時は何も無かったのですが、無線にしたら拒否のオンパレードです。
プロバイダに聞いても原因不明。困ってます。
真性なのか…
プリファレンスは俺には難しすぎたからsqlで設定作った
このスレにウィルスコード絶対貼るなよw
LoveLetter.vbs
>>787 おまいそれ、自分の家にちゃんと繋がってるか?
>>785 CheckBoxのfocusableがfalseになってねぇんじゃないか
学校行け
795 :
デフォルトの名無しさん :2011/10/24(月) 13:35:04.13
>>787 無線LANではなく、USBにくっつけるデータ通信(softbank)です。
>>793 row.xmlの上から3段列目、ドルグとtext部分をfalseにしています。
ここをマウスでクリックするようにして、focusableのfalse設定の効果を確認いたしました。
796 :
デフォルトの名無しさん :2011/10/24(月) 13:41:34.23
>>794 私は学生ではありません。
家に帰宅できなくなった4ヶ月目の人です。
持ち物は、服と貴重品、旅行カバン、ノートパソコン。
いつになったら、帰宅できることか。
797 :
デフォルトの名無しさん :2011/10/24(月) 13:42:56.25
>>796 ここは情報交換の場であって、お前のサポートをする場ではない。
>>735 それでできる
できないやつが馬鹿なだけ
>>795 何か「そんなことはすでにやった、聞きたいのはそういうことではない」みたいな態度がムカつくから、
これで最後にする。
・OnClickListener消せ
・レイアウトの内容減らして、どこでタッチ効かなくなったか試せ
その後、
・触って反応あるwiget全部に、面倒がらずにfocusable=false付けろ
これでも「出来ません」ってなら知らん。
Androidの経験が無いってだけじゃなく 解決方法を模索する能力が無いってのが辛いな
盛り上がってるとこすみません listviewでviewを使いまわさない状態から使い回すように変更したところ、 •一度スクロールさせると止まるまで何も反応しなくなる •クリックリスナーも反応しなくなる という問題が発生しました これはどこらへんが怪しいでしょうか?
あなたがやったことすべて。
805 :
デフォルトの名無しさん :2011/10/24(月) 18:56:10.18
ですよねー
keyEventでどのボタン押しても動作させるってのをやってるんですが homeとpowerは無理なんですかね?
ライブ壁紙をLiveWallpaperで作ろうとしているのですが、 MPEG4、H.264、MP3、AAC、AMR、JPG、PNG、GIF 以外で使用できるファイル形式はありますでしょうか? あと、ファイルサイズの上限などあれば教えてください。
>>806 Powerは知らんがHomeはonOptionItemSelectedだかで普通に取れたぞ
HomeとかPowerとかをフックできたらえらいことになるとは思わんかね
810 :
デフォルトの名無しさん :2011/10/24(月) 21:44:46.45
タブを使うのを止めたくなったんだけど代替としていいのないかな? fragmentなんか良さげだけどハニカムからだし 標準メニュー?はかっこ悪いし
fragmentもどきで
>>810 support-v4テラオススメ
今から新規で作るのにこれ使わないのは有り得ないレベル
813 :
デフォルトの名無しさん :2011/10/24(月) 22:12:38.78
Compatibility packageですな さんくす
質問です Button のIDを複数(20個以上)取得したいのですが、 findViewByIdのコードをボタンの数だけ書くしか方法はないのでしょうか。 取得をfor文で出来たら便利なのですが…
>>814 childatやtag使うとかどうじゃろう?
定義して無いIDは取れない newして作ってるんだったらsetIDとかもある
817 :
デフォルトの名無しさん :2011/10/24(月) 22:28:49.98
Androidのsqliteにパソコンからネット経由でデータを 送りたいのですが、可能でしょうか。
>>817 可能です
Androidに不可能はありません
819 :
814 :2011/10/24(月) 22:37:03.60
>>815 すみません、こちらの知識不足で使い方がよくわかりません;
>>816 xml側で定義したButtonの取得です。
xmlで定義したButton取得のサンプルはどれも逐一findしていたので、連番IDなら取得出来ないかと考えました
820 :
573 :2011/10/24(月) 22:37:52.38
インターネット経由で3G回線上の特定端末狙って直接アクセスできたら怖すぎるな サバ立ててPCからそこにアップしてC2DMで通知してとりいったら?
821 :
デフォルトの名無しさん :2011/10/24(月) 22:41:37.58
>>817 ありがとうございます。
>>820 やはり、サーバに蓄え、androidからサーバにアクセスし、
取得という流れですかね?
822 :
251 :2011/10/24(月) 23:22:17.70
>>819 getResources().getIdentifier("image_" + i, "id", getPackageName())
うわぁ、名前欄消し忘れた
824 :
806 :2011/10/25(火) 00:02:00.20
>>808 switch (event.getAction()) {
case KeyEvent.ACTION_DOWN:
〜
であらゆるハードキー押下を取得しているんですがHomeとPowerはダメみたいです
ちょっとHomeは調べてみます。ありがとうございます
>>809 ですよね(;´∀`)
Homeは取れそうなので、Powerは素直に諦めます
825 :
573 :2011/10/25(火) 01:05:25.60
>>821 うん
アップされたことをC2DMなりでプッシュ通知すれば目的は達成できるんじゃない?
826 :
738 :2011/10/25(火) 01:38:15.69
>>765 サンクス!恩に着るぜー
ちなみにショートカットのウィジェットを作ろうとしてるんだけど、別アプリ(たとえばmo○age)とかを起動させたい時ってやっぱりそのアプリのパッケージ名とアクティビティ名が必ず必要ってことでFA?
パッケージ名とアクティビティ名を確認するツールとかないよね?
あとbitmapをAppWidgetに貼り付ける方法がよくわからない。。
ImageViewを定義しておいて貼り付ければいいのかね?
あともう1個ごめん
とあるServiceらAppWidgetを作成する時ってどうすればいいの?
Serviceの中でAppWidgetProviderクラスのインスタンスを作ってEnableを呼べばOK?
いろいろ質問してゴメソ
オナホ使ったら気持ちよくなってきました どうしたらいいですか?
>>826 パッケージ名とクラス名があればstartActivityで起動できる。
RecentTaskInfoとかRunningTaskInfoから取得可能。
パッケージ名:RecentTaskInfo.baseIntent.activityInfo.packageName
クラス名:RecentTaskInfo.baseIntent.activityInfo.name
BitmapはDrawableから取得可能。
RecentTaskInfo.baseIntent.activityInfo.loadIcon(getPackageName())
AppWidgetからServiceで永続化はここら辺見てくれ。
単なるショートカットならServiceいらんと思うけど。
ttp://sites.google.com/site/tuyano/java/android/11
あと関係ないけどさ、自分の気に入らないポストがあると 茶化したり意味不明なレスする奴いるよね。827みたいな奴。
パッケージ名+クラス名が必要というわけではない パッケージ名+アクション+カテゴリとか アクションとカテゴリのみとか色々なパターンが可能 対象のアクティビティが一つに絞れない場合、選択ダイアログが表示される
質問です。 下記ソースにて、if文が原因でエラーが出るのですがコードに不備はあるのでしょうか TextView b1 = (TextView)findViewById(R.id.Main_Text1); Cursor cursor = db_u_l.query("User", new String[] {"sub"}, "_id = 1", null, null, null, null); //ここから if (cursor.moveToFirst()){ b1.setText(cursor.getString(1)); }
833 :
831 :2011/10/25(火) 09:58:52.15
>>832 失礼しました
以下の通りです
ERROR/CursorWindow(626): Bad request for field slot 0,1. numRows = 1, numColumns = 1
コードに間違いがあるのは一目瞭然だし、エラーもその通りなんだけど if文に原因と言われると難しいねコレ
まあ結論言っちゃうとgetStringの引数が悪いんだけどな
雲がなくなるとけっこう暑いな
誤爆すまん
AChartEngineで円グラフを書こうと思ったのですが 開始位置が3時の方向からで、12時から始まりません チャート描画時の引数 CategorySeries DefaultRenderer のリファレンスを見ても、開始位置らしき情報はありません 何とか12時(真上)から始めることはできないモンでしょうか?
ありがとう そして、泣いた
拡縮やスライド移動が簡単に実装できそうなので、 WebView を継承した画像プレビューが出来ないかなと思ってるんですが ローカルに保存してある画像って表示できないんでしょうか?
任意のActivityの描画完了を検知する方法はありますか? 描画が完全に終了したら次の処理を行いたいです。
843 :
831 :2011/10/25(火) 13:14:33.16
解決しました getColumnIndexで取得後、String型をsetTextに入れました。 これがスマートなのか分かりませんが、出来ました。有難うございます。
MediaPlayerでmidiをsetLooping(true)で鳴らしてるけど、 ループの間が少し空くのは仕方ないのかな?
メイン画面のボタンAを押すとA画面に遷移してAの選択結果をメインのtextview1に表示。 てのはできたんですけど 次に同じようにメインのボタンBを押してBに遷移してBの選択結果をメインのtextview2に表示。 としたら先ほどのAの結果が消えてしまいます。 初歩的な質問ですけどこれどうやったらAの選択結果を保持できますか?
ちゃんとstartActivityForResultでAにもBにも遷移してるか?
アプリの設定データを保存する方法として、 PreferenceActivityを継承したクラスでXMLファイルに保存 ローカルファイルシステムへファイルとして保存 どちらの方が良いと思います?
>>847 君はプログラミングに向いてないからやめた方が良い。
Button内いっぱいにTextは表示出来ないのでしょうか?
>>848 わかりました辞めます。
残りの人生お前を呪うことだけに費やします。
本当に下らない書きこみ多いな。 こういうのは会社から真顔で書きこんでるのかね。
アホな質問は無視、 質問に答えられないならレスしない。 なんでそんな簡単なことも出来ないんだ無能カスどもは。
句点の子の自演がうざい
馬鹿には無理
androidってIDE使いこなせないと無理なんですかね? Eclipseワケワカメっすわ。
無くても全然オッケーだけど、コード書いて瞬時にエラーチェックしてくれるIDEは 一度使うと離れられない。
ID導入すれば馬鹿が連続で書きこまないのに。
IDぐらい馬鹿でも変えられるから無意味w
>>861 javaを記述したテキストファイルとUIのレイアウト?を指定するXMLファイルと画像ファイル、
基本これだけなんですかねandroidアプリを作るのに必要なのって。
>>862 あとビルドファイル(最低限build.xml)。
android antでググればいろいろ出てくる。
>>862 あと、マニフェストファイルも。
ってか、ぐぐれば分かることをいちいち聞くな。
最低限 ・マニフェスト ・メインアクティビティのJAVAソース ・build.xml の3本だな。
>>844 大抵のMIDIファイルは先頭に音源の設定情報が入るから
しばらくの間無音になる
Eclipse+ADT、便利なんだけどビルドステップを管理できないのがなー。 プリプロセッサとか挟みたいよ でもまあ、コード中にデータを多めにいれたプロジェクトのビルドが重いのはr14で大分マシになった。
>>867 一応プロジェクトの設定→BuildersのところからAntのタスクとか追加できるけど使い方が良く分からん
>>869 そこで設定すると、各builderのシーケンスの順番で実行される。
もしくは自分でantのbuild.xml作ってその中からeclipseのビルダーを呼ぶことも出来る。
とか、コマンドラインからantを実行してヘッドレスモードでeclipseのビルダーを実行とかもできる。
eclipse.orgの連中もeclipse使ってeclipseを作ってるからそのへんの自動化は結構柔軟にできるようなってる。
集中的にエクリプスをつかって作業してると ふいにVSにもどってC触ると、ちょっと不安になる。
検索窓にsuggestionsつけて検索結果の履歴を保存する際に <provider android:syncable="false" android:name="SuggestionProvider" android:authorities="SuggestionProvider"></provider> をAndroidManifest.xmlに追加するとエラーで起動しなくなります。 applicationの中に記述するとありますがわかりません
>>870 その辺くわしく勉強したいんですけど、antまわりとか
いいサイトか本ありますか?
874 :
デフォルトの名無しさん :2011/10/25(火) 21:18:00.68
うわあああバージョンアップに失敗してAndroid SDKがぶっ壊れた
875 :
デフォルトの名無しさん :2011/10/25(火) 23:12:57.20
もう…2.1切っても…いいよね…?
876 :
デフォルトの名無しさん :2011/10/25(火) 23:19:26.19
2.1はまだまだゴールするには早いだろ 1.6はさすがにもういいだろうけど
CじゃIDEは使わないなあ
今から始めるんだけどeclipseとIntelliJだとどっちが軽いですか?
Cはマクロがあったりと、IDEの恩恵あんまり受けれないイメージ。 コメントがバカだから#ifdefでくくったりするから余計に。 そんな見通しの悪いコードを保守せなならんのが一番の問題なんだが。 未だに1980年代のソース残ってて、今のVCだとこねまわさないとコンパイル出来ないw 面倒でnmakeのままだわ。 ってか若い子に頼んだら、分離形式で固まってた。
なんだか日本語の下手なやつだなぁ。 若い子は何言ってるかわかんないじゃないのか?
飲んでるとよく言われる。今も飲んでる。 反省するわ。すまんかった。
素直w憎めないおっさんだな
>>882 80年代のワークステーションとかならイマドキのスマホの方が処理が速い。
Androidスマホへのアップグレードをオススメするよ。
いやまじめに言うと80年代のCより今のWindows+Javaでswingとかの方が動作が速い。
マシンが早くぶっ壊れるとリプレース案件が取れるんだけどな。
代替えCPUありません!
Sunもうアリません!
PA-RISC売りません!
IBMはインチキボロマシンの略称です!
くらい言ってやりたい。
>コメントがバカだから#ifdefでくくったりするから余計に。 これどういう事?
888 :
738 :2011/10/26(水) 01:49:18.21
連日の書き込みスマソ
>>828 dクス やっぱり起動したことないmo○ageとかのアクティビティ名を取得してウィジェットのstartActivityに設定とか無理そうだね
ちなみにアプリからAppWidgetを起動ってできる?
AppWidgetは単体で作れたんだけどそれをアプリから呼び出したくて。。
AWidget aWidget = new AWidget()してインスタンス作ればサービスも開始されて
ウィジェットが作成されるのかと思ってたんだけどそうではないっぽいね
ネットで調べててもAppWidgetのサンプルは単体の作成方法ばっかりなんだよねぇ
>>885 ありがとさん。ちょっと面倒くさいけど憎めないおっさんポジには出来るだけ居たいな。
>>886 いやいや、真面目にAndroidで遊んでる。iPhoneも買ったが、結局Androidw
昨日もOpenGLでワイヤーフレームのカマロ(obj形式のを拾ってきたんだが)をぐりぐり裸眼立体視のディスプレイに出して驚いてた。
最近のはほんとに、大富豪のようなプログラムなんだな。確かにeclipseも使いやすい。あと何でも揃ってる。
マシンが壊れるのは怖いよね。計画停止したく無くなってしまう。二度と起きてこず、
そのまま死んで、他の同年代のマシンの為に腑分けされたマシンも数えきれない。
>>887 Cの、/* */はネストできない。
ので、#ifdef 0でくくる。
>>888 インストール済みアプリの一覧を取得する方法もあるし、いくらでも方法はある
AppWidgetってのは自分で起動するんじゃなくてホームアプリ側が起動するもの
既に起動されてるWidgetなら操作できるけど、勝手に追加とか出来ない。
ちょっと、質問 なにかしらのデータを外部に保存するとき SDカードなりの DATA フォルダにパッケージ名でフォルダが作ってるアプリがあるじゃない? あれは自動で作れるものかな。 と、いうのも手動でマネして、そこにリソースおいといたんだけど apkアンインストールしたら一緒に消されてたのだよね。 適当にファイル保存しても作られてないし、そもそも適当に保存したデータはどこに保存されたのかも見つけれていない。
892 :
891 :2011/10/26(水) 03:28:00.74
String path = "/data/data/" + this.getPackageName() + "/files/data.txt"; これか、自己解決した
ミュージックを作ってるのですが通知領域で停止や次曲や前曲といった 操作を出来るようにしたいのですがCustom Notification Layoutでセットした ボタンのonclickイベントってどうやって設定できるんですかわかりますか? ちなみにデフォルトで入っていた音楽アプリにはこの機能がありますが、 一つきになるのはこの操作できるものは進捗や通知の欄にないことです。。
アプリ公開したらすぐマーケットにのるんだよね? いや、パッケージ直打ちでページが出てきたのは確認したんで 登録されてるのは間違いないんだけど、マーケットの検索でアプリ名打ってもでてこない… 明日の朝には出てきますように…
確かめといてやるからアプリ名晒しなさい
>>893 通知領域にRemoteviews置けるけど、個別にイベントは拾えない
デフォルトのやつはメーカーのカスタマイズ
質問。 byte[] に直接読み込んだ、メディアデータ(動画、曲、画像など)を 再生させるときどうすればよい? どれもこれもファイルパスを指定する超親切設計で アプローチの仕方がわからない。
>>845 メイン画面のonSaveInstanceState()をoverrideしましょう。
質問です オナホ使っていたら気持ちよくなってきました どうしたらいいですか?
903 :
デフォルトの名無しさん :2011/10/26(水) 12:37:05.39
もともとスマフォ用に作ったアプリ(APIレベル7)を タブレットで動かしたら、画面真ん中にスマホサイズで表示されたんだけど これを画面いっぱいに拡大するにはどういう方法ありますか?
ちゃんと作る
905 :
デフォルトの名無しさん :2011/10/26(水) 12:51:08.76
APIレベル13とかにしてコンパイルすればOKかい?
907 :
デフォルトの名無しさん :2011/10/26(水) 13:13:40.12
assetsの中に入れたファイルのURIが欲しいんだけど、うまくいかない file:///android_assent みたいな手段でアクセスできるらしいから、 Uri.parse("file:///〜") ってやったら、file://の部分が消えてしまったんだけど どこが悪いんだろう?
俺の一番ヒットしてるアプリで1.6がまだ2000人ぐらいいる 有効インスコ100とかのショボアプリもあるから1.6切るのはもったいないと思ってるが・・ サポートが面倒なだけで実際は1.6でもまだ制作に影響ないでしょ? ライブ壁紙とか使えないけどさ
いい加減「IS01で使えない」という理由でマーケットの評価下げる奴もいないよね?
1.6サポートしないといけない理由がもはやIS01しかない。とっとと切り捨てたいよね
2.2未満は産廃
この2000人がIS01かどうかはわからんが 世界で2000人はいるということだw
草を生やすやつはキチガイが多いという事が良くわかるレスだな
IE5.5のサポート問題よりぜんぜんぬるいと思うよ
国別で日本が圧倒的なアプリだと1.6は1%程度なのに 日本以外が増えるにつれその割合が増加 日本40%ぐらいのアプリになると1.6は6%近くになるから切るに切れない
海外ユーザーもターゲットにしているのなら1.6もサポートしといた方がいい。
>>905 アンドロイド2.x系(スマホ用)のアプリはアンドロイド3.x系(タブレット用)上では小さく表示されるのは仕様だと
ぐーぐる先生が言ってたお
2.x系と3.x系を統合した次のバージョンでこの問題をどうにかしたいとかも言ってたお
よって、現状2.x用に作ったapkファイルで両方対応はできないっぽいお
(プログラムの最初のほうで、機種かOSバージョン判定してそれぞれ適切なレイアウトを適用し〜どうたらこうたらする方法しかないかと)
ちなみに2.x系のアプリを3.x上でフルスクリーン表示させるフリーウェアが存在しとるので
やろうと思えばできるのかもしれない。
しかし、そのアプリは設定後再起動→もう一度設定後再起動→フルスクリーン表示になる
とか面倒な操作が必要なのでスマートには実装できず裏技的なのかもね
supports-screensでxlargeとかじゃ駄目なのか? まあAPI7でって言われると無理かもしれんけど
EclipseにSDKとADKを入れようとしているのですが ADTインストール後 「ウィンドウ」→「設定」→「Android」で SDKのディレクトリを選択しようとしているのですが 「Android」の項目が見当たりません 何が原因なのでしょうか
1.6サポートはさほど負荷じゃないでしょ。1.5サポートしろと言われたら御免こうむるが。
1.6はマルチタッチがないからゲームではありえない。
>>910 しかもキーボード対応しろといってくるしなw
したほうがいいけどね
>>920 実はAPIは存在してるから使えるけどね
どのみちマルチタッチは2.x以上でも必ずあるとは限らないから
Manifestでマルチタッチ必須にするかシングルタッチでも使えるようにするかは考えないといかんな
XPeria Playのパッドってキーボードのコードをアサインできたら神なんだが… そうすればonKeyDownの方向キーやスペースキーに対応していれば遊べる
>>924 レプリカ島の人が設定付けるといいよとか言ってたけど、
その辺を自動的にすり合わせるためのAPIが欲しいなぁと思う。
パッド設定画面とかえんがちょすぎる。
もし世界が2000人のIS01ユーザだったら。
その人たちがいつまでもIS01使い続けるわけじゃないからなあ
928 :
898 :2011/10/26(水) 17:33:43.23
>>901 ありがとう。
AudioTrack・・・
ちょっと、聞きたいのだけど、apkに入りきらないリソースってどうしてる?
みんな、生データでおいてるのかな。
一応、簡単にでも暗号化したいのだけど暗号化すると復号化したあとに
各種ライブラリで使う手立てが消えてしまうのだよね。
(byte[]配列から直接MediaPlayerとかに投げれない)
困った。
929 :
デフォルトの名無しさん :2011/10/26(水) 17:40:42.27
ビデオプレーヤー作ってるんだけど Serviceで動かしてるMediaPlayerに対してActivityのSurfaceViewをsetDisplayする方法ある?
>>916 あれ?3.2で拡大表示出来なかったっけ?
>>916 3.2は事情が違う。3.2の画面互換モードでは全体に拡大したような表示になる。
4.0以降だけサポートすればいい時代が来るのはいつ頃かなあ
2.x (2.2以降) と4.0以降のみサポートって指定は出来ないの?
>>932 その頃には5.0や6.0との違いに悩んでるだろうけどな
てか3.x系だけ無視してえ。なんだよあの完成度 3.x系はどうせパートナー企業しか作れない内輪公開だったんだから メーカーに3.x系デバイスは全部4.x系へのアップグレードを義務付けて3.x系全部廃番にして欲しい
AndroidBeamとかPeopleアプリみたいな新機能駆使したアプリなら直ちに無視してもいいんじゃないか? 特にPeopleはアプリの種類によっては対応/非対応で便利さがぜんぜん違ってくるかもしれない。
俺のアプリはタブレットでおかしかったら使わないで下さいって書いちゃってるわ
Androidタブレットはもう無かったことにしてほしいな シェア的にもスマホと違って、終焉する時までiPadの足元にも及ばないだろうし
いやiPadもクソじゃん・・・ 個人的に一番使いやすいのは7インチ系で2.3ベースのタブレットだと思う。3.xは駄作 Amazonはいいとこ突いてきた
>>938 徐々に法人向けのタブレット端末とかも出てきてるし、正直Android4の普及を待たないといけないんじゃないか?
デバイスとしては魅力的だと思うんだけどなぁ。
ただSIMカードをさして月額いくらを払うタブレットとかは売り方間違ってる。
リビングでWiFi経由でプッシュ通知メールやネット検索がサクッと出来るのが便利なのに、
なんでそれだけのものに3GやLTEの通信料金を払わせるのかものすごく疑問。
タブレット自体があんまり・・・っていうが根本的な問題だよな
WiFi専用でメールとブラウザが使えて、あとSkypeとクックパッドあたりが使える、カーチャン用ネットデバイス あたりが個人的には狙いどころだと思うんだけどな。 俺らが使うならPC使うわけで・・・
AndroidSDKをr14にアプデしたら入力補完で変数が出なくなった・・・
スマホだけならこれからは横480,540,720pxに対応しとけばいいよね?
>>928 アクティビティ起動時にそれとないファイル名でテンポラリ作って復号して、死ぬ時にかならず消せば?
>>928 互換性重視でDRMをなんとかしたいなら、デコーダを自前で用意するしかない
その出力先がAudioTrackってだけ。
デコーダはどっかからコードを持ってくることになるけど、ライセンスに注意な。
関係ないけどAudioTrackって遅延やばすぎね? 普通に100msとか余裕で遅れるんだが
949 :
デフォルトの名無しさん :2011/10/26(水) 21:03:51.06
うそ…だろ…?これが不具合の原因だと… みんなもprogressbarの使い方には注意しようね!
950 :
928 :2011/10/26(水) 21:10:45.55
>>946 それが現実的ぽいねぇ
>>947 時間があれば、そうしたい所だ
ひとまず、テンポラリファイルを作る方向で。
951 :
デフォルトの名無しさん :2011/10/26(水) 21:57:06.14
画面内に見えるlistviewのrowが5個あるんだけど ログを見るとその5個を表示するために合計20回くらいgetViewしてるのは何でだろう 5回でよくね?どこかおかしいのか、それともこれで正常なのか ちなみに実際の動きは特に問題ないです それぞれのリストに更にasynctaskで画像読んでるからだろうか
>>951 AsyncTaskで画像読んだあとinvalidateViews呼んでないか?
それ呼ぶと全部再表示されるぞ
953 :
デフォルトの名無しさん :2011/10/26(水) 22:18:15.02
>>952 invalidateViewsは画像の後には呼んでないです
が別のとこで呼んだのが影響してるのかも
調べてみます
954 :
951 :2011/10/26(水) 23:11:01.05
onPostExecuteでimageview.setImageしてたの外したら正常になって心なしかスクロールも軽くなりました ここで画像セットしちゃダメなのか
WebViewを使ってformからphpにファイルをアップする時の挙動について質問します input type = fileで指定したformの参照ボタンを押下したイベントを 受け取りたいのですが、Android3.0以降でそのようなメソッドはあるのでしょうか? 今まではformボタン押下でopenFileChooser()が呼ばれたのでそこからファイル選択のIntentを投げていたのですが 3.0以降ではさっぱりイベントを受け取れずお手上げ状態です
Android3は普及率が2%位だし無視して良いんじゃない
ババつかんだ奴は声がでかいんだよ。
959 :
951 :2011/10/27(木) 00:55:39.62
すいませんいい解決方法が思いつかないのでお力添えください
どうも一行読む度に画面内のすべての行を再読み込みしてるみたいです
どこにもそんな指示はしてない(と私は思っている)のですが…
少々長いのでうpろだに上げました
http://www.dotup.org/uploda/www.dotup.org2186439.txt どこが間違っているのでしょうか?またどこを変えるとよいでしょうか
何故かonPostExecuteでsetをしなければ無駄な再読み込みは止まるのですが、
そうするとどこでどうやってsetすればいいのやら
よろしくお願いします
電子書籍のアプリは何を使うのがいいですか?
初歩質問すみません public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Bitmap.Config localConfig = Bitmap.Config.ARGB_8888; Bitmap bmp = Bitmap.createBitmap(200, 200, localConfig); ImageView iv=(ImageView)findViewById(R.id.imageView1); Canvas c=new Canvas(bmp); Paint p=new Paint();; p.setTextAlign(Paint.Align.CENTER); p.setTextSize(60.0F); String str3 = "12:34"; c.drawText(str3, 100, 100, p); iv.setImageBitmap(bmp); } たとえばこんなのやると文字の画質が悪くなりますが、それを改善する方法ってあるのでしょうか? どなたか教えてくださいお願いします。
>>961 ImageViewのサイズとBitmapのサイズが合ってないとか
テキスト描画のアンチエイリアスをセットしてないとか Paint.ANTI_ALIAS_FLAG
>>962 ありがとうございます
両サイズは合わせています。比較用にTextViewを同サイズでおいてるのでまちがいないかと思います。文字サイズが同じですし。
アンチエイリアスセットしたらかなりTextViewに近くなりました。ただかなりぼやけてしまいました。これが限界なのかな・・・
他にもアンチエイリアスみたいにセットしておくべきものってあるのでしょうか
private final Handler handler = new Handler() { @Override public void handleMessage(Message msg) { Toast.makeText(Main.this, "Hello", Toast.LENGTH_SHORT).show(); // Main 呼び出し元の Activity のクラス名 } }; ↑のソースで、Main.thisのところがエラーになってしまうのですが、どうすればいいでしょうか? Mainを型に解決できませんて出ます
layoutのxmlってないとダメなの?コードでベタ打ちできない?
>>959 ろだは見てないけど、getViewが何回も呼ばれるのは仕様。呼ばれる頻度や順番に依存したロジックを書いてはだめ。
画像の遅延ロードしたいのなら、何かのキャッシュオブジェクトを用意して呼ばれる都度そこを見てイメージセット、なければasyncで読み込み開始(代替画像はColorDrawable使うとか)てな感じにしないとむりぽだとは思う
>>944 たぶん、Eclipseをクリーンで起動
>>963 Paint.SUBPIXEL_TEXT_FLAGとかは?
972 :
デフォルトの名無しさん :2011/10/27(木) 11:03:27.31
下記のコードの方法でHTTP通信でリクエスト送信しているのですが、 通信中にキャンセルボタンを押して通信をキャンセル(切断)できるように したいと思っています。 切断する方法を探しているのですが、なかなか見つからずです。 切断するメソッドってあるのでしょうか。 HttpPost httpPost = new HttpPost(path); DefaultHttpClient client = new DefaultHttpClient(); HttpResponse res = client.execute(httpPost);// リクエスト送信
abortがあるやん
タブ使うのをやめると、一目見たわかりやすさが失われる 代わりに縦長になって多少見やすくなる android使ってる人って「とりあえずオプションメニューを呼び出す」習慣あるのかな? 例えばyoutube appとかは基本的にメニューからの操作だよね
Androidの設定画面でも、Wi-Fi設定みたいにメニューボタン押すと出てくるのもあれば 画面の設定みたいになにも出てこない画面もあるけど こういう押さないとメニューあるかわからんってのは最悪のUIだと思う
そう思うなら画面上にメニューボタン表示すればいいだけ。 逆に画面にメニューボタン表示して、狭い画面をもっと狭くするのも 場合によっては最悪なUIになる。 開発者にはそれぞれ選ぶ自由があるのだから、最適なものを選べば よいだけだ。
iPhoneはどうなってんだろうね 隠しメニューが当たり前に使われてるようなことにはなってないらしいけど
>>977 iPhoneもたいがいだが、ある程度決まってる。
リスト系だと、項目をスライドすると削除ボタンが右端に出る、長押しでそれに対するメニューが上がってくる。
普段触らないような設定やら、アプリ全体の設定は「設定」アプリ?内で一元的に設定できる。
その画面用の設定は大体設定ボタンがついてる。
でも最近これもあやふやな感じ。
ガイドラインを作れって話なの?
>>971 ありがとうございます
残念ながら変化なかったです。他のコンスタンスも試しましたがあんまり、、、
とりあえずアンチエイリアスでぼやけは文字色と背景色で何とかしたいと思います。
982 :
972 :2011/10/27(木) 14:13:34.79
>>973 ありがとうございます。abortでできました!!
httpPost.abort();
Googleは凄まじい勢いで巨大化していってるな・・・ たった10年弱でデジタル世界を支配しつつあるからな・・・・ 人工衛星まで打ち上げてるわけだし・・・・ 将来アンブレラ社みたいにならねえだろうなオイw
つぶれるときは、案外あっけないものだよ。
985 :
デフォルトの名無しさん :2011/10/27(木) 16:31:46.05
質問させてください。 preferenceActivityのページで設定した値をSharedPreferencesで取得してるところでつまづいたんですが、 設定ページ開いた後とかであればxmlに指定したdefaultValue属性で指定した初期値が入ります。 ですが開く前、つまりインストール直後やデータ消去直後は、この初期値が入っていないんですが、 どうにかして初期値を取得する方法ってありませんか? なければ皆さんどのようにされているのでしょうか?
デフォルト値を指定する
987 :
デフォルトの名無しさん :2011/10/27(木) 17:09:45.32
ありがとうございます デフォルト値を指定する とは、SharedPreferenceのgetString()などの取得メソッドの第二引数ですか? そうするとxmlとプログラムソース両方に同じ値を入れる必要があるし、 そもそもそれだったらxmlの初期値属性が意味ないと思ったんですが。
988 :
デフォルトの名無しさん :2011/10/27(木) 17:16:49.84
そもそもpreferenceの値をxmlの初期値属性に任せるのがおかしな話な気がしてきました。 素直にgetメソッドでdefault指定します。 よく考えたらviewパーツのの初期値もそれはそれで必要な場面もあるなともおもいました。 ありがとうございました。汚してすいませんでした。
ぬるぽうぜえ
>>988 xmlのdefaultValueは画面用の初期値ってことだな
プログラム側で初期値を管理したいなら、明示的にDefaultSharedPreferencesを設定せよと
いうことなんだろうね
実行するとエラーもないのにレイアウトにmain.out.xmlが勝手にできるのはなんなのさ プンスカ
Eclipseを窓から投げ捨てる
993 :
951 :2011/10/27(木) 19:09:22.11
xml閉じてから実行
>>993 あれ?プロジェクトでxml選んだ状態で実行するとxmlが実行されるの!?
帰ったら試してみる てかすごく使い辛い、、、
せめてVB6見たいにSDIの画面にできないものか…
あと、Androidにコンボボックスってない、、、よね?見たことないし
>>970 レスthx
でも-cleanじゃダメだった
仕方ないから今作業中のものだけ新しく新規プロジェクト作って
そっちに移動させたら普通に変数も表示されるようになった
モバイル向けとはいえスペック的には10年以上前の95より全然いいはずなのにどうしてこんなにしょぼいんだよ!
スペックだけ高くてもマウスもキーボードもなければこんなものだろ
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。