トップページ⇒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/
0696デフォルトの名無しさん2010/12/23(木) 03:47:13
>>695
実機のデバッグモード有効にしてる?
0697デフォルトの名無しさん2010/12/23(木) 03:56:19
>>696
解決しました。お騒がせして申し訳ありません。

USB大量記憶装置を片っ端から消していったら出来ました。
0698デフォルトの名無しさん2010/12/23(木) 19:49:35
エミュレータがうまく動かん
0699デフォルトの名無しさん2010/12/23(木) 20:59:53
アプリがコンスタントに起動してくれないorz
みなさんうまくエミュレータが起動してるんですか?
0700デフォルトの名無しさん2010/12/23(木) 21:08:01
あの糞遅いエムを使ってる奴は間違いなくエム
0701デフォルトの名無しさん2010/12/23(木) 21:10:33
じゃあみなさん実機を使ってるわけですか?
0702デフォルトの名無しさん2010/12/23(木) 22:02:08
エミュレータx5種類起動して+実機2台って環境かな。
0703デフォルトの名無しさん2010/12/23(木) 22:31:20
>>702
は?
0704デフォルトの名無しさん2010/12/23(木) 23:03:05
>703
すまん嘘かいたわ
エミュ3種類の実機2台のトータルで5ターゲットだったわ。

エミュも実機もすぐ使える環境って事だよ。
普通だよな?
0705デフォルトの名無しさん2010/12/23(木) 23:08:24
そもそもメモリ1Gのネットブックで開発することじたい間違ってる?
0706デフォルトの名無しさん2010/12/23(木) 23:09:15
うぜえなおまえ
0707デフォルトの名無しさん2010/12/23(木) 23:15:48
ListViewに画像を埋め込み、初期状態はinvisibleに設定。

OnItemLongClickListenerイベント内で画像をvisibleに設定。
その際、件数が少なければ問題ないのですが、
件数が多い場合に選択した行以外の画像もvisibleに設定されてしまいます。

どうすればいいでしょうか?
0708デフォルトの名無しさん2010/12/23(木) 23:23:03
>>707
どうやって実現してるかわからないけど
見えてる範囲内の行のViewは別っぽいけど少なくともスクロールすると再利用されるよ
07097072010/12/23(木) 23:32:39
再利用されてしまうのですか・・・orz
ListViewでは実現できないようですね、他の案を考えてみます。

ありがとうございました。
0710デフォルトの名無しさん2010/12/23(木) 23:44:45
>>709
ListViewで出来るぞ
長押しされた行かどうかを保持できるようにしておいて、
getViewでView返す時、画像の表示非表示を切り替えれば良い
0711デフォルトの名無しさん2010/12/24(金) 00:00:21
偶然みつけたんだがAndroid技術者試験ってどうなの。
資格持ってるとAndroid開発に向いてるといわれます?実際に受けたことのある人に伺ってみたいです。
ttp://www.oesf.jp/modules/training/index.php?content_id=2
0712デフォルトの名無しさん2010/12/24(金) 00:01:53
みなさん、画面(レイアウト)を作成する際、xmlを使用していますか?
それとも、xmlは使用せず、javaソースだけで作成していますか?

私は、先月からAndroidアプリの開発を始め、
これまでxmlを使用してきましたが、
最近になって、javaソースだけで作成した方が良いのでは、と思い始めました。
レイアウトに、同じようなボタンを複数配置する場合、
xmlに1ボタンずつ記述するより、javaソースにfor分で記述した方が良い等の利点がありますし・・・。
玄人のみなさんは、「xmlを使用せずに画面(レイアウト)を作成している」という認識で良いでしょうか?

0713デフォルトの名無しさん2010/12/24(金) 00:03:18
>>711
そんなゴミ資格持ってたら
くだらないことに時間を使うバカというのが簡単に分かっちゃうゾ!
0714デフォルトの名無しさん2010/12/24(金) 00:05:39
xmlで作成している。ソースで作成すると、どんなレイアウトができるか確認するに
エミュレータで動かさないとわからない。その点xmlはエミュレータ起動させなくても確認できるのがいい。
0715デフォルトの名無しさん2010/12/24(金) 00:05:49
受験料詐欺に献金するだけだな

受験対象者
●Android™を学習している学生・教師
●大学、専門学校、教育機関など
0716デフォルトの名無しさん2010/12/24(金) 00:24:42
>711
スレ違いだし。
資格の話は荒れるだけだからやめてくれ。
スレタイすら読めない奴等がやたら気にしてるけどねAndroid技術者試験w
0717デフォルトの名無しさん2010/12/24(金) 00:27:09
Androidに関連してるから問題なくね
0718デフォルトの名無しさん2010/12/24(金) 00:32:56
>>717
認めます
0719デフォルトの名無しさん2010/12/24(金) 01:31:14
surfaceviewクラスからToastを呼ぶことはできますか?
0720デフォルトの名無しさん2010/12/24(金) 03:29:43
>>719
呼んでみればいいじゃない!
0721デフォルトの名無しさん2010/12/24(金) 09:39:37
>>719
メインスレッドからなら直接呼べる
0722デフォルトの名無しさん2010/12/24(金) 11:22:18
>>711
興味あったから書店でアプリ技術者の問題集見てみたけど、
明らかにエンジニアが取るべき資格じゃない糞資格。
資格商法ってボロいなーって

ていうか学割もっとひいてやれよw
0723デフォルトの名無しさん2010/12/24(金) 11:37:44
>>712
玄人ならケース毎に柔軟に使い分けできるから、そんなの決めてかかるはほどのものじゃないって認識です。
東京から大阪にお金があるなら、新幹線が速いと最近わかりました。お金持ちの皆さんはどんな時も新幹線をお使いなさっているという認識でよろしいでしょうかって質問
くらいにくだらない質問者してるってことに気づいてほしい。
まあ、ガンバ!
0724デフォルトの名無しさん2010/12/24(金) 11:52:54
1行目までいいこと言ってると思ったが、
2行目の例えが的外れすぎだからやっぱ取り消しね☆
0725デフォルトの名無しさん2010/12/24(金) 12:16:45
例えが馬鹿すぎてワロタ
予期せぬクリスマスプレゼントありがとう
0726デフォルトの名無しさん2010/12/24(金) 12:46:22
質問です。androidアプリ全体の設定情報って一般的に何で管理するの?
SharedPreferences使って1つの設定情報ファイル作ろうと思ってるけどおかしいかな?
あとSharedPreferencesを使った場合、その設定情報を読み込むタイミングがわからない
1回読み込めば充分なんだけど、onCreateとかに書いたら実機を傾けた時とかを考えると
何度も呼び出されるでしょ。どのタイミングで読み込んだらいいですか?
07275632010/12/24(金) 13:16:18
実機を傾けた時に何度も読み込んだら何かまずい?
どうしても一度だけがいいなら Activity じゃなく Application の onCreate とかどうでしょう
0728デフォルトの名無しさん2010/12/24(金) 13:17:05
名前入ったままだった・・・まぁいっか
07297262010/12/24(金) 13:29:53
>>727
別にまずい事は何もないよ
ただ一回やれば済む作業を何回もやるってどうかなって思っただけ
ApplicationのonCreateとかあるんだね。ありがとう、調べてやって見る
0730デフォルトの名無しさん2010/12/24(金) 14:23:09
個人的にはApplicationのonCreateで設定を読み込むのは筋が悪いとおもうな。
Activityが終了してもApplicationが終了するとは限らないから、 onCreateが呼ばれるタイミングは多くの場合予測できない。

まぁ、設定が変更された時にそれを適切に検出して読み込み直せば問題ないけどね。

ただ普通はそういうチェックはActivityの起動のたびにする必要が多いから、Applicationでそれをする必然性はあまりないかと。
0731デフォルトの名無しさん2010/12/24(金) 14:28:04
あ、Applicationに設定のキャッシュを持たせるのはいいと思うよ。
ただApplication#onCreateで読み込めばそれでいいってことはないということね。
0732デフォルトの名無しさん2010/12/24(金) 15:22:51
Androidアプリでファイルを作るときに推奨される作法があれば教えてくれい
設定ファイルってどこに置けばいいんだ?SDカード?でもSDカードが必ず有るわけじゃないしなあ
0733デフォルトの名無しさん2010/12/24(金) 16:59:45
設定ならプリファレンスかsqliteでパッケージの所じゃね?
0734デフォルトの名無しさん2010/12/24(金) 19:22:10
>>731
ApplicationのonCreateで読み込んでキャッシュして問題無い
後は設定を変更したときに値を反映させれば良い
0735デフォルトの名無しさん2010/12/24(金) 21:24:50
>>721
SurfaceViewのクラスからgetApplicationも効かないし、getContextだとエラーニなってしまいます。
0736デフォルトの名無しさん2010/12/24(金) 22:09:57
androidのGUIはandroid用のAPIを使うしか方法がない
→通常のjavaコードをそのまま移植するのはそこそこ大変って認識であってる?
07377072010/12/24(金) 22:12:09
>>710
Activity側でOnItemLongClickListenerを実装し、プロパティでpositionを保持。
Adapter側のgetViewで画像の表示、非表示を設定するということでしょうか?

Adapter側にOnItemLongClickListenerで保持したpositionはどのように渡すことができるのでしょうか?
07387122010/12/24(金) 22:32:41
>>714
>>723
レスありがとうございます。
ケース毎に柔軟に使い分けるように、心がけていきたいと思います。
0739デフォルトの名無しさん2010/12/24(金) 22:42:58
>>737
positionと画像の表示、非表示が紐付けできれば良い
元々の実装方法がどうなってるか分からないし、どうするのが良いかなんて分からん
0740デフォルトの名無しさん2010/12/25(土) 09:12:09
listview絡みの質問が多いよな
確かにandroidのlistviewはとっつきにくいかもしれん・・・
0741デフォルトの名無しさん2010/12/25(土) 11:13:41
ListViewもだけどApapterもよくわからんかった
0742デフォルトの名無しさん2010/12/25(土) 12:33:59
毎回BaseAdapter継承したクラス作ってる
0743デフォルトの名無しさん2010/12/25(土) 12:56:58
俺は毎回ArrayAdapter継承した自作adapter使ってる
adapteruにも色々種類があるみたいだけど使い分けできんw
0744デフォルトの名無しさん2010/12/25(土) 13:38:02
Androidは初心者です。
WindowsXP + Android SDK r8

SDカードに1.8GBのデータを置こうとしています。
エミュレータで
mksdcard 2048M sdcard.img
↑は、成功しましたが
adb push xxxx.dat /sdcard
↑が、いつまでも終わらずに大してディスクアクセスもしていません、、
理由が分かる方はいらっしゃいませんか、、

よろしくお願いします。
0745デフォルトの名無しさん2010/12/25(土) 13:43:41
いらっしゃいません
0746デフォルトの名無しさん2010/12/25(土) 17:28:28
iPhoneでいうランキングApiみたいのはないの?
0747デフォルトの名無しさん2010/12/25(土) 19:40:34
>>740
それだけで世界だもんな、The world of ListView.
0748デフォルトの名無しさん2010/12/25(土) 21:42:43
WindowsでMFC、C#とやったが、慣れるまで時間がかかりそうだ
0749デフォルトの名無しさん2010/12/25(土) 22:15:37
すぐ慣れるよ
DevGuide読んで1週間もいじってりゃ充分じゃないか
0750デフォルトの名無しさん2010/12/25(土) 22:53:33
Googleマップのように1.6でも動いてマルチタッチにも対応するアプリを
ひとつのapkで作りたいのですがどうすればよいのでしょうか?
リフレクションを使うのでしょうか?
0751デフォルトの名無しさん2010/12/25(土) 23:19:34
status bar に notification で日付を表示させたいのですが、
date status bar のように実現するにはどうしたらよいでしょうか。

Notification を new する際にiconは指定できるけれども、
tickerTextは一瞬しか表示されないため、ずっと表示させる方法が
分かりません。

日付を毎回画像生成させるのは避けたいです。。。
0752デフォルトの名無しさん2010/12/25(土) 23:30:25
質問です。
http://www.5ive.info/blog/archives/1040
↑のサイトのコードを実行してみたところ、

<!-- atpages banner tag -->
<script type="text/javascript">
<!--
var _gaq = _gaq || [];
 ~~~~以下略~~~~

という結果が返ってきます。
サーバには@PAGESを使っています。
なにが悪いのか分からないのでよろしければ教えてください。
0753デフォルトの名無しさん2010/12/26(日) 00:10:09
広告が自動的に挿入されてるためだと思われ
0754デフォルトの名無しさん2010/12/26(日) 00:29:03
ListViewについて、質問させてください。

要素数が一定で、スクロールもさせない
画面内に、決まり決まった値のみが入るリストを表示させようと思っています。

そこで、要素のサイズ(高さ)を均等に割り当てたいのですが、
いまいちできません。

android:layout_width=""

に「40dp」など数値をべた書きすれば、解決するのですが
できればdevice依存をしない(数値を打ち込みたくない)ものにしたいです。

listviewが主ですが、一般にandroidでdevice依存しないlayoutの方法を
教えていただきたいです。

現在、buttonやimageなどのレイアウトは
android:layout_weightを使っています。
0755デフォルトの名無しさん2010/12/26(日) 00:40:16
レイアウトファイルを画面サイズ毎に作る。
これ基本ね
0756デフォルトの名無しさん2010/12/26(日) 00:43:29
ListViewじゃなくていいじゃん
LinearLayoutでその決まりきった値を要るだけ並べれば?
0757デフォルトの名無しさん2010/12/26(日) 00:51:43
解答ありがとうございます。

>>755
 ということは、毎回デバイス情報をチェックして
 使用するレイアウトファイルを使い分けるという
 理解でよろしいでしょうか。

>>756
 あ・・・確かにそうです。そうでした。
 なぜか、リストに詰め込むことで頭いっぱいになってました。
 ありがとうございます。
0758デフォルトの名無しさん2010/12/26(日) 01:01:09
>>757
>ということは、毎回デバイス情報をチェックして
>使用するレイアウトファイルを使い分けるという
>理解でよろしいでしょうか。

そんなことする必要ない
LinearLayout使ってLayout_weight指定すれば良い

画面サイズごとにレイアウト用意するのはちゃんとしたレイアウトの作り方知らないやつのやりかた
0759デフォルトの名無しさん2010/12/26(日) 02:19:32
ロック画面をオリジナルのものに変更するアプリっていくつかあるけど
あれって もしかして本物のロック画面が発生しないように処理して
画面消えた時に用意したオリジナルのロック画面を手前に表示して擬似的に置き換えたように見せているだけ?
0760デフォルトの名無しさん2010/12/26(日) 02:21:31
>>758
だな
0761デフォルトの名無しさん2010/12/26(日) 02:24:07
>>759
教えてあげないよ、ジャン!
0762デフォルトの名無しさん2010/12/26(日) 02:57:29
>>761
なんで今この時間にポリンキーなのかだけ教えてくれ
0763デフォルトの名無しさん2010/12/26(日) 04:40:48
WPA2にWIFI接続しようとしているのですが、できません。
updateNetwork関数を実行時に、-1が返ってきてしまいます。
アドバイス頂けるとうれしいです。よろしくお願いいたします。

WifiConfiguration config = new WifiConfiguration();
wifiManager.setWifiEnabled(true);

config.SSID = "\"" + ssid + "\"";
config.preSharedKey = "\"" + password + "\"";
config.hiddenSSID = true;
config.status = WifiConfiguration.Status.ENABLED;
config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP);
config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP);
config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK);
config.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.TKIP);
config.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.CCMP);
config.allowedProtocols.set(WifiConfiguration.Protocol.RSN);

wifiManager.addNetwork(config);
wifiManager.saveConfiguration();
int networkId = wifiManager.updateNetwork(config);
Log.d("WifiLog", "add Network returned " + networkId );

boolean result = wifiManager.enableNetwork(config.networkId, true);
Log.d("WifiLog", "enableNetwork returned " + result );
0764デフォルトの名無しさん2010/12/26(日) 05:48:41
デフォのメールアプリのように
TaskManagerとかでkillされてても定期的に起動してチェックするような仕組みってどうやるの?
一日に一度だけ起動するようなのを作りたいんだけど
0765デフォルトの名無しさん2010/12/26(日) 06:13:00
AlarmManager
0766デフォルトの名無しさん2010/12/26(日) 09:19:02
>>753
>広告が自動的に挿入されてるためだと思われ

回答ありがとうございます!
@PAGESはダメなのか…
どこか別のサーバーを探してみます。
0767デフォルトの名無しさん2010/12/26(日) 09:51:08
>757
レイアウトファイルの仕組みを知らないみたいだね。
デバイスのチェックはいらないよ。

リストビューだけならレイアウト切り替えじゃなくてもいけどね
0768デフォルトの名無しさん2010/12/26(日) 10:46:38
>>763
パーミッションはもちろん設定済みなんだよね?logに何もヒントなし?
0769デフォルトの名無しさん2010/12/26(日) 11:53:02
preferenceActivityってなんか不思議w
0770デフォルトの名無しさん2010/12/26(日) 12:18:28
>>768
パーミッションは設定しています。
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>

ログには、Log関数で指定したものしか出ていません。

申し訳ございません。よろしくお願いいたします。
0771デフォルトの名無しさん2010/12/26(日) 13:37:55
ボタン操作音とダイヤルタップ音はOSでしか制御出来ないのでしょうか?
0772デフォルトの名無しさん2010/12/26(日) 13:56:00
AlermManagerはrestartPackageでプロセスを停止された時、止まってしまうはず
0773デフォルトの名無しさん2010/12/26(日) 15:29:58
>>766
responseのhtml-nodeだけ欲しいならXSTLとかで出来んじゃね?
0774デフォルトの名無しさん2010/12/26(日) 16:35:34
実機でのデバッグを行っているのですが、実行ししばらく時間が経過するとPCの方がフリーズし、何の入力も受け付けなくなります。
USBドライバが悪さしているような気がしますがそれ以外何も分かりません。
どなたか心当たりのある方がいらっしゃれば教えてください。

開発環境: Windows 7 64bit, JDK 6u21, Eclipse Android Plugin 8.0.1, Android SDK revision 8
0775デフォルトの名無しさん2010/12/26(日) 21:42:13
>>774
開発用にMac を買うと良いよ
0776デフォルトの名無しさん2010/12/26(日) 22:15:45
>>774
インストールしてる入れてるソフトそれだけじゃないだろ
適当なソフト沢山いれてるだろ?
どれかが悪さしてるからOSの再インストールをすすめる
0777デフォルトの名無しさん2010/12/26(日) 22:24:28
定期的に位置情報を取ってデータベースに保存するアプリを作りたいのだけど、
一旦起動した後は別のアプリとか使っても大丈夫なようにバックグラウンドで動作させようと思ってます。

あるActivityでrequestLocationUpdatesをセットすれば、
他のActivityに遷移したり、Homeボタンで画面消したりしても、
位置情報取り続けてonLocationChangedが呼ばれますよね?
0778デフォルトの名無しさん2010/12/26(日) 23:17:19
>>777
自分で作ったことはないからわからんけど、
そういうのはサービスにすべきなんじゃないのかな
07797772010/12/26(日) 23:35:05
>>778
自分もそう考えたのですけど、
requestLocationUpdatesでGPS監視用のスレッドが生成されるはずなので、
さらにサービスまで作るのは無駄なように思いました。
0780デフォルトの名無しさん2010/12/26(日) 23:39:08
サンプルを見てMapActivityを継承したクラスで地図を画面に描画してみたのですが、
同じ画面に地図以外にもいろいろ同時に表示させる事って可能ですか?
インラインフレームのような事ができるのなら一番うれしいんですが
0781デフォルトの名無しさん2010/12/27(月) 02:41:55
質問です。gpsの処理関連だけメインクラスじゃないとこでやってるんですが獲得した座標をトーストで表示しようとすると第一引数(this)でエラーが出ます。解決方法は無いでしょうか。
0782デフォルトの名無しさん2010/12/27(月) 02:52:37
エラーを無くせばいいです
0783デフォルトの名無しさん2010/12/27(月) 03:08:27
>>781
thisじゃなくてContextを渡してください
0784デフォルトの名無しさん2010/12/27(月) 05:35:14
>>779
想像じゃものごとうまく進まんよ
悪いこと言わんから、Androidのプロセスとライフサイクルについて見直しとくことを薦める
0785デフォルトの名無しさん2010/12/27(月) 09:18:57
--------
TOP画像(固定)
--------
スクロールビュー
--------
メニュー画像(固定)
--------

というレイアウトを組みたいのですが,一番下のメニュー画像がどうしてもセンタリングしません.
分かる方いらっしゃいましたら,是非教えていただければと思います.

XML構成
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout fill x2>
  <LinearLayout h:fill, w:fill>
    <ImageView h:wrap, w:wrap />
  </LinearLayout>
  <ScrollView h:fill, w:fill android:layout_weight="1" />
    <LinearLayout h:wrap, w:fill android:orientation="vertical">
      <ImageView h:wrap, w:wrap />
    </LinearLayout>
  </ScrollView>
  <LinearLayout h:wrap, w:fill android:layout_gravity="center">
    <ImageView h:wrap, w:wrap android:layout_gravity="center" />
  </LinearLayout>
</LinearLayout>
0786デフォルトの名無しさん2010/12/27(月) 11:48:33
>>785
> --------
> TOP画像(固定)
> --------
> スクロールビュー
> --------
> メニュー画像(固定)
> --------

どうしてもメニュー画像を表示しなきゃいけないんてすか?
メニューボタンじゃだめなんですか?
0787デフォルトの名無しさん2010/12/27(月) 12:33:32
>>786
あ,いや,まぁ,普通そういう反応されるよねw
正直なところ,メニューでも構わないのですが,頻繁に使うため,できるだけタップ数を少なくしたかったのが本音です.
ただ,今後のためにもセンタリングできない原因的なものが有れば,教えていただけると幸いです.
0788デフォルトの名無しさん2010/12/27(月) 13:56:00
へえ
0789デフォルトの名無しさん2010/12/27(月) 15:16:10
>>785
 <LinearLayout h:wrap, w:fill android:gravity="center">
    <ImageView h:wrap, w:wrap android:layout_gravity="center" />
  </LinearLayout>
じゃダメ?
0790デフォルトの名無しさん2010/12/27(月) 15:33:40
>>789
できました!ありがとうございます!
layout_gravityではなく,gravityを指定するべきだったんですね.
0791デフォルトの名無しさん2010/12/27(月) 20:08:23
Map上に移動した軌跡を表示するために、
GPSで取得した位置を順次DrawLineで繋げているのですが、
表示する位置が増えすぎると動作が重くなります。

どうすればいいでしょうか?
0792デフォルトの名無しさん2010/12/27(月) 20:25:23
まさか馬鹿正直に全部書こうとしてるわけないよね
0793デフォルトの名無しさん2010/12/27(月) 20:28:32
画像にしてはっつける
0794デフォルトの名無しさん2010/12/27(月) 21:00:05
>>792
ダメなんですか?
0795デフォルトの名無しさん2010/12/27(月) 21:27:57
>>794
イインダヨ!
0796デフォルトの名無しさん2010/12/27(月) 21:56:45
・重複ないしは近時点の省略
・3点でほぼ直線だった場合の中間点の省略
・MAPの画面外の線の描画省略、ないしはブロック化
■ このスレッドは過去ログ倉庫に格納されています