android Bundle을 이용한 값 전달 (intent 이용시)


값 전달시..

   
	public void clickButton(View v){
		Bundle extras = new Bundle();
		extras.putString("title", "영웅문");
		extras.putString("desc", "장용이 쓴 무협지");
		extras.putInt("num", 7);
		
		Intent intent = new Intent(mContext, SubActivity.class);
		intent.putExtras(extras);
		startActivity(intent);
	}


값 받을때.. 또는 foreach로 값 받을때..(변수명을 모를경우)

 
		StringBuffer sb = new StringBuffer();
		sb.append(getIntent().getStringExtra("title")+"\n");
		sb.append(getIntent().getStringExtra("desc")+"\n");
		sb.append(getIntent().getIntExtra("num", 0)+"\n");
		
		// 또는 (foreach로 찾기)
		Bundle extras = getIntent().getExtras();
		for (String key : extras.keySet()) {
			if(extras.getString(key) != null){
				sb.append(key+": "+ extras.getString(key)+"\n");
			}else{
				sb.append(key+": "+ extras.getInt(key)+"\n");
			}
		}
		Toast.makeText(mContext, sb, Toast.LENGTH_LONG).show();




소스 : 

SampleBundle.zip



+ Recent posts