intent 画面遷移
送り側
Intent intent = new Intent(MainActivity.this,EditActivity.class);
TARGET_DD = pos+1;
intent.putExtra("TARGET_YYYY", TARGET_YYYY);
intent.putExtra("TARGET_MM", TARGET_MM);
intent.putExtra("TARGET_DD", TARGET_DD);
startActivityForResult(intent, EDITACTIVITY);
---------------------------------------------------------
結果を受け取る
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
super.onActivityResult(requestCode, resultCode, intent);
if (requestCode == EDITACTIVITY){
if (resultCode == RESULT_OK){
Bundle extras = intent.getExtras();
if (extras != null){
TARGET_YYYY = intent.getIntExtra("TARGET_YYYY", 0);
TARGET_MM = intent.getIntExtra("TARGET_MM", 0);
TARGET_DD = intent.getIntExtra("TARGET_DD", 0);
}
}
}
// 登録されている内容をすべて消す
adapter.clear();
// ListViewに通知する
adapter.notifyDataSetChanged();
ANIM_CTRL = 0;
//onResume(); 自動的に呼ばれる。restasrt>>onresume
}
受け取り側
---------------------------------------------------------------
Intent intent = getIntent();
//Bundle extras = intent.getExtras(); //
TARGET_YYYY = intent.getIntExtra("TARGET_YYYY", 0);
TARGET_MM = intent.getIntExtra("TARGET_MM", 0);
TARGET_DD = intent.getIntExtra("TARGET_DD", 0);
----------------------------------------------------------------結果を返す
@Override
public void onBackPressed(){
Intent intent = new Intent();
intent.putExtra("return", 101 );
intent.putExtra("TARGET_YYYY", TARGET_YYYY);
intent.putExtra("TARGET_MM", TARGET_MM);
intent.putExtra("TARGET_DD", TARGET_DD);
setResult( RESULT_OK, intent );
finish();
}
①intentの例:リストビューでクリックしたら画面が変わる。
//リスト クリック処理
lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
//クリックされたら実行
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// SeanActivityからKtbdspActivityへ遷移
Intent intent = new Intent(SeanActivity.this,KtbdspActivity.class);
//PUTExtraの引数設定
final int pos1 = position;
final int snopos = snotb[position];
intent.putExtra("pos1",pos1); //クリックされたPOSITION
intent.putExtra("snopos",snopos);
//画面遷移実行
startActivity(intent);
}
});
②受け取り側
Bundle extras=getIntent().getExtras(); //引数受け取り
final int pos1 = extras.getInt("pos1"); //これはINTの場合 stringはgetstring
※だいたいここで、デバッグ用にトースト表示
String dbmsg = pos1 + " " + snopos;
Toast.makeText(this, "pos1,table-no=" + dbmsg , Toast.LENGTH_LONG).show();