質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.31%
Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Q&A

解決済

1回答

607閲覧

[Android Studio] 130KBほどの画像を読み込めない。ラジオボタンで選択すると落ちる。

tabe_unity

総合スコア31

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

0グッド

0クリップ

投稿2019/03/17 06:21

編集2019/03/17 06:45

#困っていること
複数のラジオボタンがあるActivityにおいて、ボタンを選択すると画像が切り替わるようなものを作っているのですが、フレーム落ちが激しく、そのまま落ちてしまいます。
画像の大きさも1つ130KBのpngファイルでそこまで大きくはないので何故落ちるのか原因がわかりません。
端末のメモリは2814MBほどあります。

画像は透過pngです

このラジオボタンがあるActivityに遷移した瞬間にアプリが落ちてしまいます。画像を読み込めるときもあれば読み込めないときもあると言った感じです。

下記にソースコードとエラーコードを記載します。

Java

1public class SelectCharacterActivity extends AppCompatActivity { 2 3 BootstrapButton IAbtns; 4 SharedPreferences sp; 5 SharedPreferences.Editor editor; 6 ImageView charImg; 7 8 9 @Override 10 protected void onCreate(Bundle savedInstanceState) { 11 super.onCreate(savedInstanceState); 12 setContentView(R.layout.activity_select_character); 13 ButterKnife.bind(this); 14 15 sp = getSharedPreferences("DataSave",MODE_PRIVATE); 16 editor = sp.edit(); 17 editor.putString("charName","aaa"); 18 editor.apply(); 19 charImg = findViewById(R.id.charImgs); 20 charImg.setImageResource(R.drawable.aaa); 21 22 } 23 24 @OnCheckedChanged({R.id.IABtn, R.id.ONEBtn, R.id.SasaraBtn, R.id.TsudumiBtn}) 25 public void onRadioButtonCheckChanged(CompoundButton button, boolean checked) { 26 if(checked) { 27 28 switch (button.getId()) { 29 case R.id.IABtn: 30 editor.putString("charName", "aaa"); 31 charImg.setImageResource(R.drawable.aaa); 32 editor.apply(); 33 break; 34 case R.id.ONEBtn: 35 charImg.setImageResource(R.drawable.bbb); 36 editor.putString("charName", "bbb"); 37 editor.apply(); 38 break; 39 case R.id.SasaraBtn: 40 editor.putString("charName", "ccc"); 41 charImg.setImageResource(R.drawable.ccc); 42 editor.apply(); 43 break; 44 case R.id.TsudumiBtn: 45 editor.putString("charName", "ddd"); 46 charImg.setImageResource(R.drawable.ddd); 47 editor.apply(); 48 break; 49 } 50 } 51 }

Error

103-17 15:08:42.816 29243-29243/[MYDOMEIN]I/InstantRun: starting instant run server: is main process 203-17 15:08:43.306 29243-29243/[MYDOMEIN]W/art: Before Android 4.1, method android.graphics.PorterDuffColorFilter android.support.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList, android.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in android.graphics.drawable.Drawable 303-17 15:08:44.547 29243-29243/[MYDOMEIN]D/Atlas: Validating map... 403-17 15:08:44.656 29243-29277/[MYDOMEIN]I/Adreno: QUALCOMM build : 2789c8f, 5 Build Date : 04/08/15 6 OpenGL ES Shader Compiler Version: E031.25.03.07 7 Local Branch : mybranch8901104 8 Remote Branch : quic/LA.BF64.1.1_rb1.26 9 Remote Branch : NONE 10 Reconstruct Branch : AU_LINUX_ANDROID_LA.BF64.1.1_RB1.05.00.02.172.059 + 6f1f8ee + 9c17525 + 2bb8018 + 9bf0030 + c50f11d + 5d3f8f7 + 50ac959 + 2789c8f + NOTHING 1103-17 15:08:46.118 29243-29243/[MYDOMEIN]I/Timeline: Timeline: Activity_idle id: android.os.BinderProxy@1ac15552 time:17687874 1203-17 15:14:43.433 29243-29243/[MYDOMEIN]I/Timeline: Timeline: Activity_idle id: android.os.BinderProxy@1ac15552 time:18045189 1303-17 15:14:49.633 29243-29243/[MYDOMEIN]I/Timeline: Timeline: Activity_launch_request id:[MYDOMEIN]time:18051389 1403-17 15:14:54.325 29243-29243/[MYDOMEIN]I/Choreographer: Skipped 204 frames! The application may be doing too much work on its main thread. 1503-17 15:14:57.705 29243-29243/[MYDOMEIN]I/Timeline: Timeline: Activity_idle id: android.os.BinderProxy@176d462b time:18059461 1603-17 15:15:02.521 29243-29243/[MYDOMEIN]I/Choreographer: Skipped 196 frames! The application may be doing too much work on its main thread. 1703-17 15:15:06.645 29243-29243/[MYDOMEIN]I/Choreographer: Skipped 246 frames! The application may be doing too much work on its main thread. 1803-17 15:15:11.621 29243-29243/[MYDOMEIN]I/Choreographer: Skipped 297 frames! The application may be doing too much work on its main thread. 1903-17 15:15:18.638 29243-29243/[MYDOMEIN]I/Choreographer: Skipped 419 frames! The application may be doing too much work on its main thread. 2003-17 15:15:22.768 29243-29243/[MYDOMEIN]I/Choreographer: Skipped 247 frames! The application may be doing too much work on its main thread. 2103-17 15:15:29.487 29243-29243/[MYDOMEIN]I/Choreographer: Skipped 190 frames! The application may be doing too much work on its main thread. 2203-17 15:15:33.807 29243-29243/[MYDOMEIN]E/art: Throwing OutOfMemoryError "Failed to allocate a 86400012 byte allocation with 8881632 free bytes and 8MB until OOM" 2303-17 15:15:33.807 29243-29243/[MYDOMEIN]D/skia: --- allocation failed for scaled bitmap 2403-17 15:15:33.815 29243-29243/[MYDOMEIN]E/AndroidRuntime: FATAL EXCEPTION: main 25 Process: jp.com.tabe.ceviobikeapp, PID: 29243 26 java.lang.OutOfMemoryError: Failed to allocate a 86400012 byte allocation with 8881632 free bytes and 8MB until OOM 27 at dalvik.system.VMRuntime.newNonMovableArray(Native Method) 28 at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method) 29 at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:609) 30 at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:444) 31 at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:973) 32 at android.content.res.Resources.loadDrawableForCookie(Resources.java:2423) 33 at android.content.res.Resources.loadDrawable(Resources.java:2330) 34 at android.content.res.Resources.getDrawable(Resources.java:758) 35 at android.content.Context.getDrawable(Context.java:402) 36 at android.support.v4.content.ContextCompat.getDrawable(ContextCompat.java:463) 37 at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:203) 38 at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:191) 39 at android.support.v7.content.res.AppCompatResources.getDrawable(AppCompatResources.java:102) 40 at android.support.v7.widget.AppCompatImageHelper.setImageResource(AppCompatImageHelper.java:86) 41 at android.support.v7.widget.AppCompatImageView.setImageResource(AppCompatImageView.java:94) 42 at jp.com.tabe.ceviobikeapp.SelectCharacterActivity.onRadioButtonCheckChanged(SelectCharacterActivity.java:61) 43 at jp.com.tabe.ceviobikeapp.SelectCharacterActivity_ViewBinding$3.onCheckedChanged(SelectCharacterActivity_ViewBinding.java:58) 44 at android.widget.CompoundButton.setChecked(CompoundButton.java:152) 45 at android.widget.CompoundButton.toggle(CompoundButton.java:112) 46 at android.widget.RadioButton.toggle(RadioButton.java:78) 47 at android.widget.CompoundButton.performClick(CompoundButton.java:124) 48 at android.view.View$PerformClick.run(View.java:19851) 49 at android.os.Handler.handleCallback(Handler.java:739) 50 at android.os.Handler.dispatchMessage(Handler.java:95) 51 at android.os.Looper.loop(Looper.java:135) 52 at android.app.ActivityThread.main(ActivityThread.java:5438) 53 at java.lang.reflect.Method.invoke(Native Method) 54 at java.lang.reflect.Method.invoke(Method.java:372) 55 at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:917) 56 at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:712)

#環境
Android 5.0.2
Aquos Xx-y

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

#解決策
ラジオボタンの選択毎に画像のリソースを入れ替えるのではなく、bitmapから読み込みました。
画像のピクセル数を落とした結果、快適に動くようになりました。

投稿2019/03/17 08:19

tabe_unity

総合スコア31

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.31%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問