Androidプログラミング質問スレ Part23
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2012/06/19(火) 19:57:12.12※プログラミング自体が初めて!なあなたには↓↓↓こちらへ
スレ立てるまでもない質問はここで 118匹目
http://toro.2ch.net/test/read.cgi/tech/1331904826/
Eclipse統合M32【Java/C++/Ruby/Python/Perl】
http://toro.2ch.net/test/read.cgi/tech/1320318310/
★★Java質問・相談スレッド153★★
http://toro.2ch.net/test/read.cgi/tech/1334438859/
****関連リンク****
■ Android developers http://developer.android.com/
■ ソフトウェア技術ドキュメントを勝手に翻訳 http://www.techdoctranslator.com/
****前スレ****
Androidプログラミング質問スレ Part22
http://toro.2ch.net/test/read.cgi/tech/1337170429/
0367297
2012/07/04(水) 10:53:51.28思ったことはstart()さした中でやってるからだと
初期のpgでは
HandlerThread test = new HandlerThread("test")
test.start();
で、中身でthis.getLooper()をやってたわけですが
図で書くと
test -----------------
| handler
|
|____________________________________
今回の場合は
test --------------------
|
|__________________________________
handler-----------------
|
|_________________________________
中身にhandlerを書いたらうまくLooperをキャッチできていないのかなと
0368297
2012/07/04(水) 10:56:31.28Thread作成→スタート→Handlerという流れにしないといけないわけで、Thread側に継承させたら
Handler内部の操作が出来ないしと うまく説明できませんが(;´Д`)
であればThread作成用のClassを作って、内部で同じようなことをやらせれば良いかと
0369297
2012/07/04(水) 11:00:58.67呼び出されるクラス----------------------
|
| thread-------------------------------
| |
| | Looper獲得用
| |______________________________________________________
|
| handler------------------------------
| | GUI部分の処理
| | public void run() {
| | スレッドに任せたいGUI処理
| |____}_____________________________________________
|
| その他関数
|________________________________________________________
こんなメソッドを作るみたいな
0370デフォルトの名無しさん
2012/07/04(水) 11:01:48.500371297
2012/07/04(水) 11:12:50.240372デフォルトの名無しさん
2012/07/04(水) 11:15:10.240373デフォルトの名無しさん
2012/07/04(水) 11:16:33.120374デフォルトの名無しさん
2012/07/04(水) 11:21:48.060375デフォルトの名無しさん
2012/07/04(水) 12:15:17.01ありがとうございます。
サービスで常駐させて時間のチェックをし、時間がきたらIntentで
アプリを起動させるということですね。
その場合、「起動時間に別のアプリを操作していた場合、裏で起動する」
という部分はどのように実装すればよいのでしょうか?
0376デフォルトの名無しさん
2012/07/04(水) 13:12:05.16その「裏で起動しておこなっていた処理」をサービスにしろ、ってことじゃねぇの?
0377デフォルトの名無しさん
2012/07/04(水) 13:16:04.960378デフォルトの名無しさん
2012/07/04(水) 13:31:05.02・ユーザーIDの共有
・コンテントプロバイダ
・ファイルパーミッションの変更(+SharedPreference)
・データベースファイルのアクセス権限を利用
あたりがあることを知ったのですが、いまいち使い分けが分かりません。
多少面倒な事や、層があることで僅かながら呼び出しコストがあるかもしれない(想像です)を
除けば、コンテントプロバイダ+署名共有が良さそうに思うのですが、
他に理由があったりしますでしょうか?今のところ、データは簡単な文字列が幾つか、程度ではあるのですが。
0379デフォルトの名無しさん
2012/07/04(水) 15:27:39.00フェードインしてフェードアウトとかすることはできますか?
0380デフォルトの名無しさん
2012/07/04(水) 15:31:51.240381デフォルトの名無しさん
2012/07/04(水) 16:03:43.14参考サイトみたいなのないですか?FlipperViewとかならそこらへんに沢山あるんですけど。
0382デフォルトの名無しさん
2012/07/04(水) 18:29:14.990383デフォルトの名無しさん
2012/07/04(水) 18:35:57.53参考サイト http://lablog.lanche.jp/archives/220
リストアダプター / getView
iv = (ImageView) view.findViewById(R.id.image);
if ( リストに表示する画像Uri != null ) {
String thumbUrl = リストに表示する画像Uri.toString();
iv.setTag(thumbUrl);
ImageGetTask task = new ImageGetTask(iv);←ここで強制終了
task.execute(thumbUrl);
}
Asynkのコンストラクタ
public ImageGetTask(ImageView image) {
0384デフォルトの名無しさん
2012/07/04(水) 18:59:03.700385デフォルトの名無しさん
2012/07/04(水) 19:00:06.100386デフォルトの名無しさん
2012/07/04(水) 19:02:24.930387デフォルトの名無しさん
2012/07/04(水) 19:02:32.370388デフォルトの名無しさん
2012/07/04(水) 19:05:31.19Logcat見ないの?
スタックトレース貼らないとエスパー待ちになります
0389デフォルトの名無しさん
2012/07/04(水) 19:08:38.930390デフォルトの名無しさん
2012/07/04(水) 19:11:25.230391デフォルトの名無しさん
2012/07/04(水) 19:16:45.68デバッグの方にListViewに関してのエラーのような記述がありますが。
>>385
それっぽいです。ありがとうございました。
0392デフォルトの名無しさん
2012/07/04(水) 19:31:43.540393デフォルトの名無しさん
2012/07/04(水) 19:36:55.700394デフォルトの名無しさん
2012/07/04(水) 20:39:23.630395デフォルトの名無しさん
2012/07/04(水) 21:44:30.17http://engawa.2ch.net/test/read.cgi/poverty/1341400277/
http://yeoksa.blog.fc2.com/page-0.html
韓国の88歳の大学教授がハングルで書いた文章です。日本語訳します。
"私は88才です。 もう事実を話したいと思います。" [チェ・キホ伽耶大学客員教授]
朝鮮末期の私は1923年の生まれです。 もう韓国のためでも、日本のためでもなく「事実」を話したいと思います。
それは相当な覚悟が必要です。 生命の危険も覚悟しています。 しかし、これは私の使命であると信じています。
私はソウルに住んでいました。 そして、時々、平壌や東京に行きました。 その当時の韓国人は「日本人以上の日本人」でした。
「親切でやさしい日本人」という印象を、必死に消すために「反日」を指導者はそそのかしてきました。
韓国と日本の歴史教育を比較すると、日本が10%の歪曲といえば、韓国は90%が歪曲です。
朝鮮末期の正常ではないで政治腐敗を教えず、日本が関与しなければ独立ができたことのように使われています。
韓日合邦によって「教育」 「医療」 「工業」 「社会インフラ」が整備されました。近代国家の基礎が出来たことは明らかな事実です。
その実績を「日本帝国主義の侵略政策の産物だ!」と糾弾する韓国にはあきれます。 より一層「日帝が民族産業を停滞させた!」
という主張にはコメントする気持ちもなくなります。
民族産業を殺したのは、朝鮮王朝です。 近代化を主張する先進的な思想家は反逆者とし、親族までも処刑されました。
韓国人は「日帝の虐待! 性奴隷!」と叫んでいますが、私は信じることができません。 歴史の真実を知っているためです。
朝鮮語でキウン「地獄」でした。 それは大韓帝国時代になっても同じでした。
1904年、日本は朝鮮の惨状を救うために、財政支援を決断します。
例えば1907年度、朝鮮王朝の歳入は748万円だったが、歳出は3000万円以上でした。
その差額は日本が負担していました。 1908年にはより一層増加し、3100万円を支出しています。
現在88才の老人の絶叫です。 どう思われますか?
0396デフォルトの名無しさん
2012/07/04(水) 21:57:01.63カットって読むらしい
0397デフォルトの名無しさん
2012/07/04(水) 22:12:14.39catはconcatenateの略だからもう全然意味不明になってるけど
0398デフォルトの名無しさん
2012/07/04(水) 22:31:46.090399デフォルトの名無しさん
2012/07/04(水) 22:54:11.19MSのActiveXとかみたいにな!
「エラーウインドウ」とかわかりやすくして、標準で画面下のウインドウに自然と表示させれば
初心者だって何も意識せず使うだろうに・・・。
ちょっと設計がアレだとおもうぞ。
オープンソースならではの弊害かもしれないけどね<プラグインみたいに後付け後付けで機能拡張されていくため
0400デフォルトの名無しさん
2012/07/04(水) 23:03:16.11おまえEclipseをなんだと思ってるんだ?
0401デフォルトの名無しさん
2012/07/04(水) 23:03:34.320402デフォルトの名無しさん
2012/07/04(水) 23:04:55.56ドロイド君がぶっ飛んでるあんまりログっぽくないやつだしな
0403デフォルトの名無しさん
2012/07/04(水) 23:13:42.54ホーム画面からアプリから全部の画面の
アイコンやフォントの色とバックの色を指定するアプリを作ることはできますか?
0404379
2012/07/04(水) 23:18:10.182個セットしても同時に動いてるみたいで
順にイン、アウトしない、、、
順番を指示する方法はあるんでしょうか?
0405デフォルトの名無しさん
2012/07/04(水) 23:42:21.68画面遷移してから戻ると一々読み込みが発生して動作が重いんですよねコレ。
0406デフォルトの名無しさん
2012/07/04(水) 23:43:14.23フェードアウトを設定とかするとかどう?
0407デフォルトの名無しさん
2012/07/04(水) 23:44:10.83ごめん安価忘れた
>>404宛ね
0408デフォルトの名無しさん
2012/07/04(水) 23:49:09.920409408
2012/07/04(水) 23:50:22.50書き直すのもあれだから理解してくれ
0410デフォルトの名無しさん
2012/07/04(水) 23:56:18.470411デフォルトの名無しさん
2012/07/04(水) 23:57:52.97AnimationのクラスにstartOffsetがあるじゃん
0412デフォルトの名無しさん
2012/07/05(木) 00:57:20.060413デフォルトの名無しさん
2012/07/05(木) 02:45:13.750414デフォルトの名無しさん
2012/07/05(木) 02:46:40.760415デフォルトの名無しさん
2012/07/05(木) 04:03:37.35アップデートするとさらにひどくなる
0416デフォルトの名無しさん
2012/07/05(木) 08:13:40.90http://engawa.2ch.net/test/read.cgi/poverty/1341414504/
画像
http://stat.ameba.jp/user_images/20110304/19/umepino/68/53/j/o0475037711089589457.jpg
日本人はY染色体DNAのD系統を高頻度で持つ事で有名である
世界的にもチベット人や中近東の人だけがこのDNAをもっているが、
他の世界のどこにもほとんど存在しない。
さらに日本のすぐ近くの朝鮮半島や中国人が南方系O系統であり、
孤立したD系統を持つ日本人の異質さが際立って見える。
http://kirinukityo.tumblr.com/post/12942190189/maido3-y-dna-d
0417デフォルトの名無しさん
2012/07/05(木) 09:53:48.17信用できないというか・・・なんというか・・・
0418デフォルトの名無しさん
2012/07/05(木) 09:55:08.180419デフォルトの名無しさん
2012/07/05(木) 10:53:21.14JDK:
eclipse:
SDK:
0420デフォルトの名無しさん
2012/07/05(木) 10:57:13.05http://engawa.2ch.net/test/read.cgi/poverty/1341404796/
日韓軍事協定、韓国国内で「韓国大統領は親日」と激しい非難
日韓による軍事情報保護協定(GSOMIA)は、韓国側の一方的な延期によって署名は取り消しとなり、
韓国の政界に余波が広がっている。李明博(イ・ミョンバク)大統領は2日、同協定の推進に「不当な手続きがあった」とし、
強く批判した。中国網日本語版(チャイナネット)が報じた。
政権与党は2日、「大統領の任期満了を控え、世論を無視した事業を推進している」と政府の対応を非難した。
韓国の外交通商部は、同協定を秘密裏に推進したことは、青瓦台(大統領官邸)からの指示であったとほのめかした。
反対派はイ・ミョンバク大統領を、「親日」だと非難している。「親日」は韓国の政治家にとってもっとも厳しい非難であり、大統領選挙の年ならばなおさらだ。
http://news.searchina.ne.jp/disp.cgi?y=2012&d=0704&f=politics_0704_008.shtml
日韓軍事協定について、韓国野党党首が韓国大統領に謝罪を要求
http://japanese.ruvr.ru/2012_07_04/nihon-kankoku-gunji-kyoutei/
北朝鮮が韓国を強く非難、「日韓軍事協定は希代の親日売国行為」
http://news.searchina.ne.jp/disp.cgi?y=2012&d=0629&f=national_0629_022.shtml
【韓国世論】 日韓軍事同盟についてどう思うか?(韓国の民間世論調査機関「リアルメーター」)
賛成 15.8%
反対 47.9%
無回答 36.3%
www.jiji.com/jc/c?g=pol_30&k=2012070300706
0421デフォルトの名無しさん
2012/07/05(木) 11:05:43.22eclipse:Indigo Service Release 2 20120216-1857
SDK:API15
安定度はよくわからんが特に不満は無い
0422デフォルトの名無しさん
2012/07/05(木) 13:51:33.57getIntent()出来ないですしね。
0423デフォルトの名無しさん
2012/07/05(木) 14:06:13.180424デフォルトの名無しさん
2012/07/05(木) 14:17:24.93更新(例:public static なメソッドを追加してセーブ(自動ビルドON))しても、FugaApp側で認識しない。
プロジェクトの設定で一度外してから追加し直すと出てくるんだけど、リアルタイムにできないものでしょうか。
0425デフォルトの名無しさん
2012/07/05(木) 14:42:00.35FugaAppのクリーンは?
0426デフォルトの名無しさん
2012/07/05(木) 14:43:16.600427デフォルトの名無しさん
2012/07/05(木) 17:25:17.330428デフォルトの名無しさん
2012/07/05(木) 21:37:51.040429デフォルトの名無しさん
2012/07/05(木) 21:38:33.600430デフォルトの名無しさん
2012/07/05(木) 22:09:00.090431デフォルトの名無しさん
2012/07/05(木) 22:23:04.220432デフォルトの名無しさん
2012/07/05(木) 23:01:13.580433デフォルトの名無しさん
2012/07/05(木) 23:12:36.060434デフォルトの名無しさん
2012/07/05(木) 23:15:36.580435デフォルトの名無しさん
2012/07/05(木) 23:24:50.270436デフォルトの名無しさん
2012/07/05(木) 23:25:44.75startIntentForResultみたいにActivityが
閉じたことを知るにはどうすればいいですか?
0437デフォルトの名無しさん
2012/07/05(木) 23:40:25.20finish() 書いてみ
0438デフォルトの名無しさん
2012/07/06(金) 00:08:16.88こんなのあるんだ。多分、最後はremoteView.addView(id,view)するんだろうけど、
二番目のviewの引数って何のviewを指定するんだ?
0439デフォルトの名無しさん
2012/07/06(金) 00:16:40.76親ビュー(remoteView)が内包してる子ビューのIDが第一引数
そのIDのビューの中に第二引数のviewをaddする仕組み
ちなみにレイアウトアニメーションはRemoteViewsクラスを使ってアニメーションさせたりできないのでレイアウトxmlファイルに予め記述しておくしかない
0440デフォルトの名無しさん
2012/07/06(金) 00:22:45.13ウィジェットのimegeを切り替える毎にフェードインさせたいんだが、
そう言うのは無理なのか?
0441デフォルトの名無しさん
2012/07/06(金) 00:27:04.310442デフォルトの名無しさん
2012/07/06(金) 00:31:22.74ウィジェット立ち上げると一度しかフェードインしない…
<LinearLayout
android:layoutAnimation="@anim/layout_animation"
略>
<ImageView
android:id="@+id/image"
略/>
</LinearLayout>
0443デフォルトの名無しさん
2012/07/06(金) 00:32:16.36アニメーションは一度しか起動されないので、またアニメーションをさせたかったら再度
AppWidgetManager#updateAppWidget(appWidgetId, remoteViews);
をするしかないわけなんだが
>>440のことがしたいなら、imageを切り替えるたびにupdateWidgetすると思うから特になにも考えなくてもいいと思うよ
まあまずは適当なプロジェクト作ってアニメーションするウィジェットを作ってみるといいよ
RemoteViewsもLayoutAnimationもクセがあるんで自分で確認したほうが早い
0444デフォルトの名無しさん
2012/07/06(金) 00:37:16.26画像切替えるタイミングで
RemoteViews root = new RemoteViews(context, layoutId);
root.removeAllViews();
// ここでimageviewに画像をセット
manager.updateWidget(appWidgetId, root);
画像切替のタイミングはアラームマネージャかなんかで制御してるの?
0445デフォルトの名無しさん
2012/07/06(金) 00:44:52.70切り替えはボタンでやってるよ。家に帰ったら早速トライしてみる!あんがと。
0446デフォルトの名無しさん
2012/07/06(金) 00:47:35.65やはりウィジェットのボタンです。
removeAllViews()するとボタンまフェードインしちゃう感じですかね?w
0447デフォルトの名無しさん
2012/07/06(金) 00:48:32.19あ、すまん。>>444の方法だとremoveAllViewsしたタイミングでImageView消えちゃうわ
だからLinearLayoutとImageViewをわけてxml作って対処してくれ
0448デフォルトの名無しさん
2012/07/06(金) 00:50:31.23ボタンが>>442のLinearLayoutの下にあったら一緒にアニメーションするが、させたくないなら外に出せばいい
0449デフォルトの名無しさん
2012/07/06(金) 01:54:32.38何故だろう。imageは無事フェードインするようになったけど逆にボタンが消えてしまうw
こんな書き方だと駄目なんだろうね。やっぱり。
Widget.xml
ーーーーーーーーーー
image.xml指定
ボタン
ーーーーーーーーーー
image.xml
ーーーーーーーーーー
android:layoutAnimation="@anim/layout_animation"
image.id
ーーーーーーーーーー
ボタンのView
RemoteViews view = new RemoteViews(context.getPackageName(), R.layout.widget);
イメージのView
RemoteViews view2 = new RemoteViews(context.getPackageName(), R.layout.iamge);
view2.removeAllViews(R.layout.image);
view2.setImageViewUri(R.id.iamge, uri);
manager.updateAppWidget(widget, view);
manager.updateAppWidget(widget, view2);
0450デフォルトの名無しさん
2012/07/06(金) 02:08:50.24view.addView(id, view2);
してくれ
manager.updateAppWidget(widget, view2); ←これいらない
0451デフォルトの名無しさん
2012/07/06(金) 03:12:27.47こういう事か。ようやく上手くいった。助けてくれた方々ありがとう!
結構フェードインいれるだけで印象変わったわw
RemoteViews view = new RemoteViews(context.getPackageName(), R.layout.widget);
RemoteViews view2 = new RemoteViews(context.getPackageName(), R.layout.image);
view.removeAllViews(R.id.ll);
view2.setImageViewUri(R.id._image, uri);
view.addView(R.id.ll, view2);
よく考えるとここら辺はsetContentView()にaddViewするのとあまり変わらないのか。
仕様がチグハグだなウィジェット周りは。
0452デフォルトの名無しさん
2012/07/06(金) 11:03:50.231が1行の時、2行指定を解除するような事をxmlで指定出来ないでしょうか?
TextView1(line = 2) ああああああああ (1行の場合)
(空きスペース) いいいいいいいい
TextView2 うううううううう
TextView3
0453デフォルトの名無しさん
2012/07/06(金) 11:08:14.100454デフォルトの名無しさん
2012/07/06(金) 11:42:17.60ありがとうございます。
0455デフォルトの名無しさん
2012/07/06(金) 14:34:07.52+-ボタンを押すかピンチ操作で地図を拡大縮小するときに地図がぐいんぐいんとアニメーションしますが、
「拡大縮小アニメーションが終了した瞬間」または「拡大縮小アニメーション中であること」を取得する方法はないでしょうか?
0456デフォルトの名無しさん
2012/07/06(金) 14:54:49.37http://d.hatena.ne.jp/sei10sa10/20110801/1312191680
0457デフォルトの名無しさん
2012/07/06(金) 16:06:59.01ありがとうございます。
ご提示いただいた方法でできました。
0458デフォルトの名無しさん
2012/07/06(金) 16:42:18.92オーバーした分を削除し末尾に…を貼付ける様にしたいのですが、
下だと高確率でエラーが出ます。安定した方法ってないですか?
if( TextSize >= MainActivity.disp.getWidth()/2 ){
while( x > MaunActivity.disp.getWidth()/2){
StringBuffer sb = new StringBuffer(_text);
x = sb.length()-1;
sb.deleteCharAt(x);
_text = sb.toString();
float textWidth = paint.measureText(_text);
int textCounter = (int)textWidth;
int textSize = Math.abs(textCounter);
x = textSize;
}
StringBuffer sb = new StringBuffer(_text);
x = sb.length();
sb.insert(x, "…");
_text = sb.toString();
}
}
0459デフォルトの名無しさん
2012/07/06(金) 17:07:52.47表示される文字によってエラーが出たり出なかったりするのでしょうか?エラーが起きない場合もあるのですか?
具体的に投げられたエラーは何ですか?
エスパー待ちになりますよ
0460デフォルトの名無しさん
2012/07/06(金) 17:19:11.590461デフォルトの名無しさん
2012/07/06(金) 17:23:42.62あ、すみません。どんな文字でも10回に半分位かちょっと少なめで以下のように。
Logを見ると、当該個所は>>458しかないと言う状況です。
E/Surface(17393): Surface::lock failed, already locked
E/SurfaceHolder(17393): Exception locking surface
E/SurfaceHolder(17393): java.lang.IllegalArgumentException
E/SurfaceHolder(17393): at android.view.Surface.lockCanvasNative(Native Method)
E/SurfaceHolder(17393): at android.view.Surface.lockCanvas(Surface.java:314)
E/SurfaceHolder(17393): at android.view.SurfaceView$3.internalLockCanvas(SurfaceView.java:767)
E/SurfaceHolder(17393): at android.view.SurfaceView$3.lockCanvas(SurfaceView.java:746)
E/SurfaceHolder(17393): at net.paka.MainActivity.GraphicsSurface.run(GraphicsSurface.java:77)
E/SurfaceHolder(17393): at java.lang.Thread.run(Thread.java:1019)
0462デフォルトの名無しさん
2012/07/06(金) 17:24:38.830463デフォルトの名無しさん
2012/07/06(金) 17:32:16.97TextSizeにキャストする前のStringに対してnullチェックは行ってるので、
lengthが0は無いかと。他のActivityからStringをstatic参照してるのが、
悪いとかあるんですか?みなさんどうしてます。Bundleして渡した方がいいとかありますか?
0464デフォルトの名無しさん
2012/07/06(金) 17:34:37.440465デフォルトの名無しさん
2012/07/06(金) 17:37:04.38E/SurfaceHolder(17393): at net.paka.MainActivity.GraphicsSurface.run(GraphicsSurface.java:77)
これかな? 77行目ってどこ?
0466デフォルトの名無しさん
2012/07/06(金) 17:44:26.95そのコードと発生個所にどう関連が有るんだよ
■ このスレッドは過去ログ倉庫に格納されています