Androidプログラミング質問スレ Part17
■ このスレッドは過去ログ倉庫に格納されています
0217182
2012/01/17(火) 10:44:58.51リソースの取得を試みて、もしリソースが見つからなかったらエラーメッセージを表示後
ただちに終了したい
Drawable resGetDrawable(String targetName)
{
Drawable drawable = null;
try {
Resources r = getResources();
int id = r.getIdentifier(targetName, "drawable", getPackageName());
if(id == 0)
throw new Exception("画像ファイル \"res/drawable-*/" + targetName + "\" が見つかりません。");
drawable = r.getDrawable(id);
} catch(Exception e) {
showMessage("resGetDrawable", "次の例外が発生しました:\n\n" + e.toString());
android.os.Process.killProcess(android.os.Process.myPid());
}
return drawable;
}
void doSomething()
{
Drawable drawable = resGetDrawable("aaa");
Bitmap bitmap = ((BitmapDrawable)drawable).getBitmap();
}
このコードのままではダイアログが表示される前に killProcess() が動いてしまって意味
無いし、>>187 のやり方ではダイアログが表示される前に resGetDrawable() の呼出し後
にその戻り値が使われてしまうので問題がある
resGetDrawable() の結果を if 文や try 文で判定するのは、煩雑になるのでできれば
やりたくない
>>199の言うように無限ループ作った結果が>>182だよ
■ このスレッドは過去ログ倉庫に格納されています