Androidプログラミング質問スレ Part23

このエントリーをはてなブックマークに追加
952デフォルトの名無しさん:2012/07/22(日) 17:29:04.14
ハンドラーでonUserLeaveHint()の中身を時間差でonPresentScreen()の後ろに回すことによって解決できました。
953デフォルトの名無しさん:2012/07/22(日) 18:10:52.77
ActionBarSherlockと一緒に使える、オヌヌメのUIフレームワークを教えてください。
ターゲットは、SDK10〜15で使えるとうれしい。
使う使わないはともかく、どんなのがあるのか知りたい。
954デフォルトの名無しさん:2012/07/22(日) 19:12:45.36
>>952
それじゃ機種によっては、動かないだろ。
955デフォルトの名無しさん:2012/07/23(月) 18:18:02.13
4.0以降一部の機能をSwitchを使ったものに切り替えているのですが、
android.widget.Switchをimportした時点で、4.0以前の端末だと以下のエラーがlogcatで表示されます。
Could not find class 'android.widget.Switch', referenced from method 〜(省略)

実際に動かしているときは4.0以前、以降で処理を切り替えているためエラー落ちしたりすることはないのものの、
気持ち悪いのでエラー自体を出ないようにしたいのですが何か方法はないでしょうか。

クラス自体を4.0以前、以降で2種類作る。という方法はありますが
無駄にクラスが増えてしまいますし、機能は同じなので極力一つのクラスで済ませたいです。
956デフォルトの名無しさん:2012/07/23(月) 20:37:57.19
AndroidManifest.xmlの<activity>にandroid:label="@string/xxx"て名前を付けると
ホームアプリとか共有で、android:labelの名前が出てきますが、
ここを動的に変更できるのでしょうか?
957デフォルトの名無しさん:2012/07/23(月) 20:55:56.26
できません
名前のパターンが有限個なら全種類書いておいて PackageManager#setComponentEnabledSetting で有効無効切り替えるとか
それくらい
958デフォルトの名無しさん:2012/07/23(月) 21:02:45.73
apk 的に別のアプリケーション Hoge, Fuga があります。

1. Hoge 内の Activity から明示的 Intent で Fuga の Activity を呼び出し
2. Hoge の処理に戻って処理をさせたい(Fuga は自殺させたい)

のですが、方法はあるでしょうか?
Fuga で finish すると元の処理も死んでしまいます…よね。Hoge, Fuga とも触れます。
959デフォルトの名無しさん:2012/07/23(月) 21:15:51.59
>958

startActivityForResultして、setResultして、finishじゃだめなn

別apkだと駄目なん・。

そうけ。
960デフォルトの名無しさん:2012/07/23(月) 21:24:13.63
>957
そこをなんとか。
961デフォルトの名無しさん:2012/07/23(月) 21:31:46.37
学ぶ力には三つの条件があります。

第一は自分自身に対する不全感。
自分は非力で、無知で、まだまだ多くのものが欠けている。
だからこの欠如を埋めなくてはならない、という飢餓感を持つこと。

第二は、その欠如を埋めてくれる「メンター(先達)」を探し当てられる能力です。
メンターは先生でもお母さんでも、ネットの中の無名の人でもいい。
生涯にわたる師ではなく、ただある場所から別の場所に案内してくれるだけの
「渡し守」のような人でもいいのです。
自分を一歩先に連れて行ってくれる人は全て大切なメンターです。

第三が、素直な気持ち。
メンターを「教える気にさせる」力です。オープンマインドと言ってもいいし、
もっと平たく「愛嬌(あいきょう)」と言ってもいい。

「学ぶ姿勢」のある人は、何よりも素直です。
つまらない先入観を持たないから、生半可なリアリズムで好奇心を閉ざさない。
素直な人に聞かれると、こちらもつい真剣になる。知っている限りのことを、
知らないことまでも、教えてあげたいという気分になる。そういうものです。

以上、この三つの条件をまとめると、

「学びたいことがあります。教えてください。お願いします」

という文になります。これが「マジックワード」です。
これをさらっと口に出せる人はどこまでも成長することができる。
この言葉を惜しむ人は学ぶことができないのです。
学ぶ力には年齢も社会的地位も関係がありません。
>>959さんも、早く学ぶ力を身に付けてください。
962デフォルトの名無しさん:2012/07/23(月) 21:42:26.73
>>961

>>958 のことに関して
>>959 は興味はありません。

以上。
963デフォルトの名無しさん:2012/07/23(月) 21:50:28.14
>>958
>>Fuga で finish すると元の処理も死んでしまいます…よね

そんなわけ無いと思う。
964デフォルトの名無しさん:2012/07/23(月) 21:53:09.02
>>962
>>958ですが>>961は安価違いな気がします…私>>958>>960さん宛てのような

で、>>959 さま >>963 さま、どうも私の>>958がFugaでActivityを複数経由して
最後のActivityでだけfinishしているのがおかしな動きをしていたようで、
あまりいい手段でないと思いますが、すべてnoHistoryかつfinishを呼び出すことで
今のところ希望した動きになりました。ありがとうございます。
965デフォルトの名無しさん:2012/07/23(月) 21:59:59.87
>>961
そんなこと広めても、やってる振りする。調子のいい。偽善者ばかりふえるので


966デフォルトの名無しさん:2012/07/23(月) 22:18:30.29
>>961
AndroidManifest.xmlの<activity>のandroid:label="@string/xxx"
を書換をしてみてください。
そりゃ、NET権限削除する人いるぐらいだから出来るんだろうけどさ。


967デフォルトの名無しさん:2012/07/23(月) 22:22:32.91
>>955
今のクラスからSwitchを消して、そのクラスを継承したクラスにSwitch入れればいいんじゃないの。
>無駄にクラスが増えてしまいますし、機能は同じなので極力一つのクラスで済ませたいです。
違うのだから無駄ではない。
使う側からは同じクラスに見えるし、Switch以外はsuperの方でメンテされるのだから何が問題になるかわからない。
単にオブジェクト指向設計を理解してないだけだと思う。
968デフォルトの名無しさん:2012/07/23(月) 22:30:34.46
>>955
消すだけならClass.forNameとかMethod.invokeとかメタプログラミングすれば消せそう。
そんなプログラムは読みたくないが。
969デフォルトの名無しさん:2012/07/23(月) 22:51:20.82
エラーの原因がわからないので教えてください
PackageManager pm = getPackageManager();
ImageView im = (ImageView) findViewById(R.drawable.ic_launcher);
Drawable drawable = null;
try {
drawable = pm.getApplicationIcon(access_text);
} catch (NameNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(drawable != null){
im.setImageDrawable(drawable);//☆
}
上記のコードだと☆のところでぬるぽが呼ばれます
nullの確認をしているのになぜ呼ばれるのでしょうか?
970デフォルトの名無しさん:2012/07/23(月) 22:57:04.58
ImageView im = (ImageView) findViewById(R.drawable.ic_launcher)

R.drawable.ic_launcher
971デフォルトの名無しさん:2012/07/23(月) 22:58:17.99
>>969
なぜって、別のがnullなんじゃ
972デフォルトの名無しさん:2012/07/23(月) 22:58:36.88
ガッ
973デフォルトの名無しさん:2012/07/23(月) 23:03:01.17
>>961

お前こそ学べ。

974デフォルトの名無しさん:2012/07/23(月) 23:17:31.32
>>970
よく考えたらおかしいですね
975デフォルトの名無しさん:2012/07/23(月) 23:18:02.80
>>974>>969です
976デフォルトの名無しさん:2012/07/23(月) 23:36:39.52
>>969
layout中からR.drawable.ic_launcher取ろうとするって喃喃

リソースからdrawableとろうとするのはわかるが
977デフォルトの名無しさん:2012/07/23(月) 23:41:01.96
>>969
この間違い探しのようなのは、わざとなのか??

978969:2012/07/24(火) 00:42:16.89
>>976-977

寝ぼけてました
979デフォルトの名無しさん:2012/07/24(火) 12:28:04.78
大体ヌルポ起きたら渡してる引数よりメソッド呼び出してる方をまず疑えよ。null渡して即ヌルポになるようなメソッドそうないから。
980デフォルトの名無しさん:2012/07/24(火) 13:16:28.38
この前まで動いてたプロジェクトを実行したら突然強制終了したんですけどこんなことあるんですかね
981デフォルトの名無しさん:2012/07/24(火) 13:34:44.69
>>980
あるもなにも、何もしてないのに動かなくなったなんて言葉は聞き飽きてスルー。
982デフォルトの名無しさん:2012/07/24(火) 13:50:06.98
動いていてちょっとお昼寝してまた見たらエラーラインが付いてずっと消えなくなったことはある
この開発環境はとにかく不安定だ
983デフォルトの名無しさん:2012/07/24(火) 14:02:33.99
今一行書いたら(もちろんエラーでない文)
全く違う下の方の注釈文のかたまりに、「トークン ")" に構文エラーがあります。」
というエラーが出現したぞ eclpse
984デフォルトの名無しさん:2012/07/24(火) 14:04:00.56
あとデバッグ実行してる時に try{} catch{} 間を 不可解な飛び方をすることがある
985デフォルトの名無しさん:2012/07/24(火) 14:22:27.17
>>983
不正な構文なんだよ
986デフォルトの名無しさん:2012/07/24(火) 14:24:53.22
Equalizerクラス使って波形がでてこない・・・
線は出てくるのになんでですかね
987デフォルトの名無しさん:2012/07/24(火) 14:37:46.86
>>985
いやプロジェクト読み直したら消えた 環境のバグ
988デフォルトの名無しさん:2012/07/24(火) 14:39:35.73
>>980
古い広告入ってるんじゃ
989デフォルトの名無しさん:2012/07/24(火) 15:07:57.57
eclipseあるある

・ひさびさに起動したら、全部ビルドできなくなっていた
・バージョンアップしたらビルド時にエラーがメチャクチャ出るようになった
・いつのまにか「R」が勝手にインポートに追加されててフィーバー
・R内のIDが勝手にズレまくりんぐ
・サンプルコピペしたら動かない。4時間悩んだら全角スペースが原因というかなしい落ち
・30秒前まで普通に動いてたのに突然USB接続してるスマホを認識しなくなる

など

990デフォルトの名無しさん:2012/07/24(火) 15:10:57.54
下から二番目は自分の責任だけどな
991デフォルトの名無しさん:2012/07/24(火) 15:30:19.66
・AndroidManifest.xml.outがいつのまにか作られる。
・しかもeclipseがファイル掴んでて削除できない。
992デフォルトの名無しさん:2012/07/24(火) 15:30:26.36
>>991
そんなもんでしょ。
993デフォルトの名無しさん:2012/07/24(火) 15:33:50.25
Manifest.xmlもいつのまにかエラーになってたりするんだよな
994デフォルトの名無しさん:2012/07/24(火) 15:41:24.42
SDKのR20にアップデートで空のActivity作れないのは糞仕様すぎるだろ・・・
995デフォルトの名無しさん:2012/07/24(火) 15:45:38.80
うち問題なく作れてるよ
996デフォルトの名無しさん:2012/07/24(火) 16:11:03.42
Hello Worldすら敷居が高くなったな
997デフォルトの名無しさん:2012/07/24(火) 16:46:06.61
マ板で聞いたら華麗にスルーだったんだけど誰かわかる方いらっしゃいますか?

「Intel Atom x86〜」のエミュレータを使いたいのですが、
IntelHAXM.exeのインストールがvtが有効になってないっていうエラーで失敗します。
対処法わかりますでしょうか?
SDKはR20で、vtはBIOSでは有効にしてます
998デフォルトの名無しさん:2012/07/24(火) 17:24:01.94
>>997
eclipseは終了して、アンドロイドSDKをインストールしたディレクトリの
\extras\intel\Hardware_Accelerated_Execution_Manager
にある、IntelHaxm.exeを実行してインストールする。
新しいバージョンになった時も、exeのダウンロードしかしてくれないから、
古いバージョンをアンインストールしてから、新バージョンをインストールし直す。
999デフォルトの名無しさん:2012/07/24(火) 17:27:28.78
r20.0.1が出てるから、最新のRev.とプラグインにすると新規アンドロイドアプリケーションプロジェクトを作るウィザードも安定すると思う。
てか家のはそれで安定して4.1(JB)まで対応のアプリ作れてる。
1000デフォルトの名無しさん:2012/07/24(火) 17:30:17.72
新しいウィザードだと、MinSdkVersionがデフォルトで2.2なんだよな。もう2.1は切り捨てでいいのかな。
でも2.1も未だにユーザが増えたり減ったりしてるんだよな。
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。