getIdentifierをつかう。以下は同義
imageID = R.drawable.e1;
imageID = getResources().getIdentifier("e1", "drawable", getPackageName());
使用例
for(int i=0;i<MAX;i++){
String name = "kagawa"+i;
int strId = getResources().getIdentifier(name, "string", getPackageName());
String str = res.getString(strId);
}
[edit]アクティビティ開始時に値が定まっていなければならないメンバ変数の初期化は、宣言時ではなく、onCreate、もしくは必要の応じて、onStart、onResumeで実行する必要がある
finish() ではプロセスは終了しないため。
参考:http://d.hatena.ne.jp/adsaria/20110428/1303966837
インテントを使う。
Intent i = new Intent(this, xxxx.class); // Intent i = new Intent(getApplicationContext(),xxxx.class); // i.setAction(Intent.ACTION_VIEW); startActivity(i);
情報を返して欲しいときはstartActivityForResult()
Activityの終了
finish();
moveTaskToBack(true);
AndroidManifest.xml で <activity android:noHistory=”true”>
http://atu-aka.blogspot.jp/2012/02/back.html
public void onClick(View v) {
//●●classに画面遷移する。
startActivity(new Intent(▼▼, ●●.class));
//現在居るActivityを終了する。
finish();
}[edit]
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_BACK){
//ダイアログの表示
new AlertDialog.Builder(this)
.setTitle("えほんをとじますか?")
.setPositiveButton("はい", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
finish();
}
})
.setNegativeButton("いいえ", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
// 何もしない
}
})
.show();
return false;
}
else{
return super.onKeyDown(keyCode, event);
}
}
onKeyDown より dispatchKeyEvent の方がいいという説あり
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
if (event.getAction()==KeyEvent.ACTION_DOWN) {
switch (event.getKeyCode()) {
case KeyEvent.KEYCODE_BACK:
// ダイアログ表示
return true;
}
}
return super.dispatchKeyEvent(event);
}
[edit]manifestにて
android:installLocation="preferExternal" android:installLocation="auto" android:installLocation="internalOnly"[edit]
もしActionBarを利用したくないなら
Android4.0以降でActionBarを利用しない場合、テーマを変更すると手軽です。
■AndroidManifest.xml
<activity
android:label="@string/app_name"
android:name=".SpritActionBarActivity"
android:theme="@android:style/Theme.Black">
[edit]Toast.makeText( context, "hello world", Toast.LENGTH_SHORT ).show();
public void clearDrawList(){
bmpCanvas.drawColor(Color.BLACK);
invalidate();
}
[edit]android:screenOrientation="portrait"[edit]
import android.util.Log;
Log.d ("tag", "message");
フラグでデバッグプリント制御
private static final boolean DEBUG = true;
if (DEBUG) Log.d ("DEBUG", "hogehoge");