トップページ⇒tech
1001コメント307KB

Androidプログラミング初心者質問スレ Part4

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2010/11/19(金) 16:33:21
前スレ
Androidプログラミング初心者質問スレ Part3
http://hibari.2ch.net/test/read.cgi/tech/1286357268/
Androidプログラミング初心者質問スレ Pert2
http://hibari.2ch.net/test/read.cgi/tech/1282716370/
Androidプログラミング初心者質問スレ
http://hibari.2ch.net/test/read.cgi/tech/1278560954/

関連スレ
【Google】Androidアプリ作成part6
http://hibari.2ch.net/test/read.cgi/tech/1286555951/
0263デフォルトの名無しさん2010/12/02(木) 10:28:43
>>262
画面描画はメインスレッドでしか出来ません。AsyncTask 使ってみたら?
0264デフォルトの名無しさん2010/12/02(木) 10:30:28
>>262
つ ttp://www.adamrocker.com/blog/255/hello-android-chapter7-the-connected-world.html
0265デフォルトの名無しさん2010/12/02(木) 12:05:55
>>263,264
ありがとうございます。できました!
0266デフォルトの名無しさん2010/12/02(木) 12:48:02
>>260>>261
答えていただきありがとうございました。
サンプルに入っているゲームの画像と音楽だけ変えて一つ作ったのですが、
とんでもない権利侵害をしてしまうところでした。
0267デフォルトの名無しさん2010/12/02(木) 15:21:20
中国人?韓国人?
0268デフォルトの名無しさん2010/12/02(木) 15:57:44
カスタムViewを使用したレイアウトで
レイアウトエディタでClassNotoFoundExceptionが出て表示されないが
実行するとエラーは出ずに実行できる

こういう状態のときにまず疑うのはどのへんですか?
ちょっと見当がつかないのでヒントになりそうなアドバイスをいただけないでしょうか?
0269デフォルトの名無しさん2010/12/02(木) 16:06:10
やべー、
アイコン使ってるわw
0270デフォルトの名無しさん2010/12/02(木) 16:11:48
部分的に色変えるとか、色々やり方あるだろ
0271デフォルトの名無しさん2010/12/02(木) 16:20:01
じゃぁ髭かくわ
0272デフォルトの名無しさん2010/12/02(木) 18:31:27
BlueStacksっておもしろそうだなー
これ流行ればAndroidアプリの需要増えね?
0273デフォルトの名無しさん2010/12/02(木) 18:52:17
アプリが動くの?OSが動くの?エミュレータとどう違うの?
0274デフォルトの名無しさん2010/12/02(木) 18:55:10
アドホック使って複数のAndroid端末を制御することってできますか?
0275デフォルトの名無しさん2010/12/02(木) 20:15:04
>>268
つ logcat
0276デフォルトの名無しさん2010/12/02(木) 22:52:05
>>244
遅レスでスマヌが、続けて出すとwindow leakで怒られるんだよね。けど、Activity をダイアログに見せて表示するようにした。レスありがとう。
0277デフォルトの名無しさん2010/12/03(金) 00:17:52
>>266
RPGですね?わかりまづ
0278デフォルトの名無しさん2010/12/03(金) 02:29:42
eclipseで新規androidプロジェクトを作ってそのままの状態で実行
設定からアプリの詳細を確認すると、許可の欄にストレージと電話/通話の2つがあるんですが
ここに表示されるのってパーミッションで許可した場合だけじゃないんですか?
0279デフォルトの名無しさん2010/12/03(金) 02:31:19
>>278
targetSDKVersion指定していないと、自動で設定される。
昔はそのパーミッションが無かったから
0280デフォルトの名無しさん2010/12/03(金) 02:41:25
ありがとうございます。
調べても見つからなかったので助かりました。
0281デフォルトの名無しさん2010/12/03(金) 11:44:56
TabActivityでタブの位置を下にするにはどうやるの?
0282デフォルトの名無しさん2010/12/03(金) 13:41:20
初心者向けな質問ではないかもですが、よろしくおねがいします。

現在スレッドを使用するアプリケーションを作成しているのですが、
GCが2秒おきに発生してカクつくので困ってます。

そこで質問なのですが
・GCの発生間隔はライブラリで制御できるのでしょうか?
・それともプログラムの処理を見直せば2秒ー>5秒とかになったりするのでしょうか?
0283デフォルトの名無しさん2010/12/03(金) 13:49:20
比較的大きいメモリ確保は初期化時にして使いまわす
なんでGCが発生するかを考えれば解決方法も見えてくる
0284デフォルトの名無しさん2010/12/03(金) 13:58:35
GCは発生条件があるってことですね、
発生条件をリストアップして調べてみます。

ありがとうございます。
0285デフォルトの名無しさん2010/12/03(金) 14:13:05
新たなメモリを確保できないときにメモリを空けるために GC するのだから
新たなメモリを確保しなければよいが
0286デフォルトの名無しさん2010/12/03(金) 14:58:39
GCの発生条件っていうかGCとは何か知らないだけじゃないだろうか
0287デフォルトの名無しさん2010/12/03(金) 15:36:41
>285
うまくその方向でいけるように検討してみます。

>286
VMのソースが公開されていたので解析してわかりました。
最近のオリジナルVMなのにGCは1種類しかサポートしてないですね。
すいません無知でした。

0288デフォルトの名無しさん2010/12/03(金) 16:48:37
アプリ作るときにいろいろ利用していい素材置いてる
サイトとかないですか?
0289デフォルトの名無しさん2010/12/03(金) 20:12:35
アプリで使う素材なんて、そのアプリしだいだろ
あとフリー素材の大半はweb上で使われる事前提だからアプリに組み込んで公開するなら必ず問い合わせろ
0290デフォルトの名無しさん2010/12/03(金) 20:21:58
サイト教えてって言ってるのに何言ってんだろうこの人
0291デフォルトの名無しさん2010/12/03(金) 20:50:46
自分で調べりゃ良いだろうに。
ネット環境はエロサイトを閲覧するだけにある訳じゃないぞ。
0292デフォルトの名無しさん2010/12/03(金) 20:54:29
知識あるフリをして外した回答するのって流行ってるの?
0293デフォルトの名無しさん2010/12/03(金) 20:57:02
素材が画像なのか効果音なのか音楽なのかはっきりしないとアドバイスもできないよね
0294デフォルトの名無しさん2010/12/03(金) 21:01:17
ググれない程度の知能でプログラムに挑戦するのって流行ってるの?
0295デフォルトの名無しさん2010/12/03(金) 21:15:19
僻み根性だけは一人前の奴らばかり。
0296デフォルトの名無しさん2010/12/03(金) 21:15:55
ちょっと難しい質問したら途端にここでする質問じゃない、とか言い出す始末w
0297デフォルトの名無しさん2010/12/03(金) 21:16:16
ググれないうえに日本語も知らないのか。
0298デフォルトの名無しさん2010/12/03(金) 21:57:51
まあもし知ってても説明するのがめんどいときあるよね
0299デフォルトの名無しさん2010/12/03(金) 22:29:01
>>296
ここのひとたちは難しい質問には答えられないんです
0300デフォルトの名無しさん2010/12/03(金) 22:33:04
Android友の会みたいだな
0301デフォルトの名無しさん2010/12/03(金) 22:58:48
LinearLayoutでGravityをcenterにしてレイアウトエディタではそのとおりになってるのに
なぜか実行すると左寄せになってますorz
0302デフォルトの名無しさん2010/12/03(金) 23:24:31
>>301
親要素の幅が足りないor親要素がgravity:rightしてる か?
0303デフォルトの名無しさん2010/12/03(金) 23:39:30
>>302
親要素の幅は足りてるし親要素もcenterにしてみたけど変わらないです
AdapterのgetViewでinflateして取得してるレイアウトです

あ、そのhogeLayout.xmlをActivity#setContentView()してみたら
意図通りcenterにきました!
つことはもしかしてListViewの中で使うとGravityが効かなくなるの?
0304デフォルトの名無しさん2010/12/03(金) 23:58:19
チラ裏になってすいません
ListViewの中でもGravityはいけましたorz
その親のTabActivityあたりが怪しそうです
失礼しました
0305デフォルトの名無しさん2010/12/04(土) 00:41:50
お前らは「日本アンドロイドの会」に参加してるの?
0306デフォルトの名無しさん2010/12/04(土) 03:47:11
参加の定義がはっきりしないが、MLはざっとチェックしてる。
月会とかで聴きたい講演があったらたまに行く。
0307デフォルトの名無しさん2010/12/04(土) 11:11:41
SQLiteって、450件くらいの読み書きすると落ちる?
アプリを450件くらいいれて、Apps Organizerを実行すると、
fillWindowでDiskIOExceptionが出てる
0308デフォルトの名無しさん2010/12/04(土) 20:46:54
widget改造の質問なんですけどいいですか?
layoutのxmlの編集をした場合
文字数が変わらないように色の変更だけをする→表示される
あるTextViewをまるまる削除等→表示されない

こうなって今できることが制限されています
文字数等が変わってもちゃんと表示させるには他にどのファイルを変更すべきですか?
0309デフォルトの名無しさん2010/12/04(土) 21:05:06
何をしようとしてるのかもどういう現象なのかもさっぱり読み取れない
0310デフォルトの名無しさん2010/12/04(土) 21:06:44
あぁ改造って誰かの作ったapkをいじるって事か
0311デフォルトの名無しさん2010/12/04(土) 21:35:32
そうです
全然言葉足らずでごめんなさい

既存のapkをapk_manager使ってデコンパイル
画像の差し替えやxmlの色の変更→コンパイル→サイン

これは上手くいったのですが
android:paddingTop="20.0dip"とかを新たに追加して位置調整とかを書き足して
コンパイル→サインだと表示されませんと出ちゃうんです
0312デフォルトの名無しさん2010/12/04(土) 21:36:26
すんません
ライブ壁紙の作り方を教えてください。
0313デフォルトの名無しさん2010/12/04(土) 21:50:34
「Android ライブ壁紙」でググッて出てこなかったらそれはもう仕方ないな
0314デフォルトの名無しさん2010/12/04(土) 22:25:13
>>311
多分リソースのIDがずれてるんだろうけど、
全部コンパイルしなおしてる?
0315デフォルトの名無しさん2010/12/04(土) 22:45:45
>>314
apk_managerでコンパイルとサインしてるけどダメなの?
選択肢がないから多分全部コンパイルだと思います
0316デフォルトの名無しさん2010/12/04(土) 23:00:41
>>315
それUnpackとPackだね、コンパイルはやってない
0317デフォルトの名無しさん2010/12/04(土) 23:04:04
>>316
buildフォルダできてて中のxmlとかそのまま読めないからビルドはできてると思います
少し調べなおしたら
元の変更前のapkに変更したxmlを上書きして更にresources.arscを無圧縮でやればいいのかな?
無圧縮のやり方が今いちわからないけど、ちょっとこの方向でまた勉強しなおしてみます
0318デフォルトの名無しさん2010/12/04(土) 23:19:48
無圧縮でresources.arscはapkに入れられたけど
インストールされていませんって出ちゃうようになってしまった

うーん難しいですね
0319デフォルトの名無しさん2010/12/04(土) 23:34:14
元々ソースをコンパイルしたときのリソースのIDと新しく作った(変更した)リソースのIDがズレてるんじゃねってことだから
新しいリソースのIDを使ってソースもコンパイルし直さないとだめなんじゃねってことだろ
0320デフォルトの名無しさん2010/12/05(日) 00:00:36
国内アプリだとxperiaで動けばおk?
全機種動作チェックしてくれるグーグルの部門とか有ればいいのに。
0321デフォルトの名無しさん2010/12/05(日) 00:03:28
>>319
eclipseとか必要になってきますか?
おいらの今の頭じゃ先進め無そうです
明日もいろいろサイトみて勉強してみます
modに特化した解説サイトご存知でしたら教えてください
0322デフォルトの名無しさん2010/12/05(日) 00:34:59
質問です。
新規にプロジェクトをつくると毎回
「java.lang.ClassCastException: android.widget.Button cannot be cast to android.view.ViewGroup」
っていうやつが出ます。
パスと通せば治るんですが、毎回出るもんなんのでしょうか?
0323デフォルトの名無しさん2010/12/05(日) 03:17:30
カスタマイズしたListViewにOnItemClickListenerを
実装しても反応してくれないのですが
困りました。
0324デフォルトの名無しさん2010/12/05(日) 03:37:47
>>323
こっちも困るわ
0325デフォルトの名無しさん2010/12/05(日) 04:06:47
オープンソースを使うときに最低限注意すべきことを教えて頂けませんか?
0326デフォルトの名無しさん2010/12/05(日) 04:36:39
ライセンス
0327デフォルトの名無しさん2010/12/05(日) 04:59:07
>>326
返信ありがとうございます。
しかし、ライセンスについて調べてもよくわからなかったりする場合はどうなんでしょう。
例えば、GL(?)とかpublic domainとか書いてなかったり。
権利者にメール送ったりするしかないんですかね。

上でも書いてた人が居たように、例えばオープンソースのゲームかなんかで
画像や音楽は自分で作って、プログラムはほぼそのまま使わせてもらったりしたら
おもいっきり権利侵害になってしまうんでしょうか。
0328デフォルトの名無しさん2010/12/05(日) 06:43:58
ライセンス次第
0329デフォルトの名無しさん2010/12/05(日) 08:23:22
javaソース中のint型の変数をxmlで参照するにはどうすればいいですか?
0330デフォルトの名無しさん2010/12/05(日) 08:47:12
>>324
そこをなんとかお願いします。
ttp://baldwin.ivory.ne.jp/wp/2010/10/31/396/
こちらのブログの記事とまったく同じ症状です
0331デフォルトの名無しさん2010/12/05(日) 10:14:11
そのブログに解決法書いてあるじゃん
馬鹿なの?童貞なの?
0332デフォルトの名無しさん2010/12/05(日) 10:41:34
>>331
童貞とか本当のことは傷つくからやめてあげて
0333デフォルトの名無しさん2010/12/05(日) 12:24:28
>>331
その切り返しワロタ
0334デフォルトの名無しさん2010/12/05(日) 13:00:36
おまいらの好きな処女かもしれんよ
0335デフォルトの名無しさん2010/12/05(日) 13:11:35
あ、できた
0336デフォルトの名無しさん2010/12/05(日) 14:08:15
App App Inventorの話もいいですか?

デフォルトのScreen1でイメージボタンを配置してクリックされたときに、
新たなActivity(Screen2?)に遷移したいだけどどうすればいいんだろう

それっぽいActivityStarterってのをPaletteからD&Dしたんだけど、
ActionやらExtraKeyやら入力項目があって、これらはカメラとかブラウザとか既存のアプリしか呼び出せないのかな
App Inventor上で新しく自分でプロジェクトを作ったので(ここに遷移したい)指定する方法があるなら教えて下さい

0337デフォルトの名無しさん2010/12/05(日) 15:05:47
日本語でおk
0338デフォルトの名無しさん2010/12/05(日) 16:42:41
Main Activityを更新(再読込?)する方法が有ったら教えてください.

Main Activity onCreate時にsqliteから読み込んだSpinnerを表示
↓
メニュー→新規追加でSub Activityをダイアログ表示
↓
IDを入力
↓
sqliteにinsert
↓
MainActivityのSnipperに追加

とやりたいのです.
Main Activityを再起動させて,もう一度sqliteからデータを取ってきてしまうのが一番楽かと思ったのですが,どうもやり方が見つからず…
ちなみに,画面を回転させると問題なく更新されます.
(これを画面更新せずに行いたい)
よろしくお願いします.
0339デフォルトの名無しさん2010/12/05(日) 17:14:36
>>338
startActivity何とかResultでsubを呼び出してidとやらを登録させる。mainのonActivityResultでsubの終了を受け取って、そこですぐさまsqliteに対してqueryしてspinnerのadapterを更新してnotifyDatasetChangedでおしまい。
0340デフォルトの名無しさん2010/12/05(日) 17:38:53
もしかしてGLSurfaceView使うとアラートダイアログとか使えませんか?
0341デフォルトの名無しさん2010/12/05(日) 17:42:58
>>339
ありがとうございました!
データのinsertまではできていたので,その後spinnerのadapterを更新して,notifyDataSetChangedで正常にSpinnerが更新されました.
0342デフォルトの名無しさん2010/12/05(日) 18:21:46
>>341
いま見返すと日本語酷かったけど、意味は通じたみたいでよかったw
0343デフォルトの名無しさん2010/12/05(日) 19:56:44
全体画面の今何画面目にいるのかを確認する

○●○○○

のようなものを作りたいのですが、

APIは用意されているのでしょうか?

各Activityに
●○○○○ ←1ページ目のActivity

○●○○○ ←2ページ目のActivity

のようにリソースを用意して、表示させないとダメでしょうか。
0344デフォルトの名無しさん2010/12/05(日) 20:06:40
>>343
何をどこに表示するかによって使うAPI は違うと思うよ。
「●○○○○」って文字列を表示するなら drawText かな。
0345デフォルトの名無しさん2010/12/05(日) 20:24:23
>>344

解答ありがとうございます。
文字列ではなく、
http://www.nire.com/wp-content/uploads/2010/09/iphone4-home-screen-page-1-200x300.jpg

↑のようにグラフィカルなものを表示させたいと考えています。
画像はiphoneですが。。
0346デフォルトの名無しさん2010/12/05(日) 21:08:59
>>345
そのようなモノを表示する方法はいろいろあって、それによって使うAPI 違うから、どれとは言えないんだよね。
自前で円を描く方法もあるし、リソースからビットマップを表示する方法もある。
もうちょっと、あなたの中でどうしたいか整理して、質問内容を具体的にしたほうが良いと思うよ。
0347デフォルトの名無しさん2010/12/05(日) 21:25:49
>345

解答ありがとうございます。
抽象的な説明で申し訳ございません。

私としては、特に実装方法にはこだわってはなく
なにか、パラメータ(ページ番号と全体ページ数みたいなもの)を渡せば
その画面に表示できるようなものがあれば、そういった物を使用したく、

自分で描画したり、またはリソースを用意して表示する方法
しかないのであれば、そちらの方法で行えればいいかなと思っています。
0348デフォルトの名無しさん2010/12/05(日) 23:20:26
       ,,x-ー:: ":::::
        ,x '"::::::::::::::::::::
      ,、'":::::::::::::,, x-‐ ァ:  
    ,,x '"::::::,,、- '"     |::: 
    `"i`ー'"        ヾ 
      !  、 、,,,,,,,,,;;;;;;;;;彡ミ  
     |,,,,ノi `ーヾ;; '"----、  
     ヾ::ヽ     -┴'~   
      ~|:/ ' ' ' `ー ' "'"   
      /_              :
     l    '' )    i    :
      ヽ,,、'~`      U
       ゙, __ ,-、_,ノ`
 |/      ゙, `'" ,,y
 |/  彡  ゙、`-'"
   /|/     i
   /        !    ,, -'"
    |     `ー '"|::
    |      /|||ヽ
          /|||||/心
          |ヾ/ /`ー
0349デフォルトの名無しさん2010/12/06(月) 01:40:34
どなたかヒントをおねがいします・・・
イカのようなっプログラムで
「TES」が2回表示されると思っていたのですが
2回目の「TES」がどうしてもされません・・

main()
{
Thread th = new Thread()
tn.start();
Thread.sleep(100);
tn.start();
}

run()
{
Log.d("D","TES");
}

何かわかる方お願いします・・・
0350デフォルトの名無しさん2010/12/06(月) 01:44:30
それはイカん。
0351デフォルトの名無しさん2010/12/06(月) 01:51:17
>>347
いわゆるページャみたいなモノはないみたいだね。リソース自作して切り替えていくしかないかな。細かくみるとアニメーションしている感じのもあるね。
可変ページに対応させるか、固定ページ数にするのかも考えないとね。
0352デフォルトの名無しさん2010/12/06(月) 02:08:33
質問です
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background">
<gradient
android:startColor="#505050"
android:centerColor="#505050"
android:centerY="0"
android:endColor="#505050"
#505050の所をカラーピッカーで選択した色に変えたいんですが
どうしたら変えられますか

カラーピッカーはこれです
http://developer.android.com/intl/ja/resources/samples/ApiDemos/src/com/example/android/apis/graphics/ColorPickerDialog.html
0353デフォルトの名無しさん2010/12/06(月) 02:23:14
>>349
Thread.start()の定義見れ。
android developers見たら書いてなかったけど多分androidでも同じ。
ttp://www.solar-system.tuis.ac.jp/Java/jdk-1_5_0-doc-ja/api/java/lang/Thread.html#start()
0354デフォルトの名無しさん2010/12/06(月) 02:33:42
ListViewの行にProgressDialogを入れて処理の進行状況を表示したいのですが、
時々getViewが走ってidが変更され進行状況が更新されなくなってしまいます。
スクロールさせて再度getViewが走ると更新するようになるのですが、
近いことをやってるサンプルとか無いでしょうか?
0355デフォルトの名無しさん2010/12/06(月) 02:41:05
>>354
マーケットアプリが近いけど、ソースががorz
0356デフォルトの名無しさん2010/12/06(月) 09:05:23
>>354
いまちょっと環境無いから適当だけど、
getView()内でnewしたProgressDialogを外のActivityかなんかに配列で保持しといて、
次回同一positionでgetView()呼ばれたときは保持したProgressDialog返せばいけない?
アイテム数固定ならあらかじめProgressDialogのインスタンス作成しといてgetView()でそれ返すとか
0357デフォルトの名無しさん2010/12/06(月) 16:04:09
>>337
要は画面遷移させたいんです
よろしければお願いしますorz
0358デフォルトの名無しさん2010/12/06(月) 18:01:46
intent
0359デフォルトの名無しさん2010/12/07(火) 00:28:25
私も画面遷移について質問です。
1つのActivityのみを使用し、setContentView()で
何回も画面遷移を行う事は、不可能なのでしょうか?
(複数画面を作成したい場合、Activityを複数作成するべきなのでしょうか?)

※setContentView(new SurfaceView(this));と実行すれば、
1回は画面遷移できますが、
その後、SurfaceView内で、setContentView()が使用出来ない為、
別の画面に遷移させる事が出来ません。

0360デフォルトの名無しさん2010/12/07(火) 00:47:12
>>359
なんでSurfaceView内からSetContentViewする必要があるのかくやしく
03613592010/12/07(火) 09:06:25
>>360
2つの画面を、2つのクラスで(それぞれクラスを分けて)作成しようと考えております。
それで、SurfaceView1(画面1)と、SurfaceView2(画面2)を作成し、
SurfaceView1からSurfaceView2へ画面遷移する際に、
SetContentViewで、画面遷移をしようとしたのですが・・。

そもそも、複数画面を作成する場合の設計方法が、根本的に間違っているのでしょうか?
(複数の画面を作成する場合は、複数のSurfaceViewを作成するのではなく、複数のActivityを作成するべき?)

0362デフォルトの名無しさん2010/12/07(火) 13:37:11
2.3来たね
■ このスレッドは過去ログ倉庫に格納されています