시작 시 번들 전달 활동()?
현재 실행 중인 활동에 번들을 전달하는 올바른 방법은 무엇입니까?공유 속성?
몇 가지 옵션이 있습니다.
Intent mIntent = new Intent(this, Example.class);
Bundle extras = mIntent.getExtras();
extras.putString(key, value);
2) 새 번들 만들기
Intent mIntent = new Intent(this, Example.class);
Bundle mBundle = new Bundle();
mBundle.putString(key, value);
mIntent.putExtras(mBundle);
3) intent의 putExtra() 바로가기 메서드 사용
Intent mIntent = new Intent(this, Example.class);
mIntent.putExtra(key, value);
그런 다음 시작된 활동에서 다음을 통해 이 내용을 읽게 됩니다.
String value = getIntent().getExtras().getString(key)
참고:번들에는 모든 원시 유형, 파슬레블 및 시리얼라이제블에 대해 "get" 및 "put" 메서드가 있습니다.시연용으로 스트링스를 사용했을 뿐입니다.
인텐트에서 번들을 사용할 수 있습니다.
Bundle extras = myIntent.getExtras();
extras.put*(info);
또는 전체 번들:
myIntent.putExtras(myBundle);
이게 당신이 찾고 있던 건가요?
Android에서 한 액티비티에서 액티비티로 데이터 전달
의도에는 작업과 선택적으로 추가 데이터가 포함됩니다.의도를 사용하여 다른 활동에 데이터를 전달할 수 있습니다.putExtra()
방법.데이터는 추가 데이터로 전달되어 다음과 같습니다.key/value pairs
. 키는 항상 String입니다.원시 데이터 유형 int, float, char 등을 값으로 사용할 수 있습니다.우리는 또한 한 활동에서 다른 활동으로 물체를 전달할 수 있습니다.
Intent intent = new Intent(context, YourActivity.class);
intent.putExtra(KEY, <your value here>);
startActivity(intent);
Android 활동에서 번들 데이터 검색
Intent 개체에 대한 메서드를 사용하여 정보를 검색할 수 있습니다.메서드를 통해 Intent 개체를 검색할 수 있습니다.
Intent intent = getIntent();
if (null != intent) { //Null Checking
String StrData= intent.getStringExtra(KEY);
int NoOfData = intent.getIntExtra(KEY, defaultValue);
boolean booleanData = intent.getBooleanExtra(KEY, defaultValue);
char charData = intent.getCharExtra(KEY, defaultValue);
}
번들을 사용하여 한 활동에서 다른 활동으로 값을 전달할 수 있습니다.현재 활동에서 번들을 만들고 특정 값에 대한 번들을 설정한 후 해당 번들을 의도에 전달합니다.
Intent intent = new Intent(this,NewActivity.class);
Bundle bundle = new Bundle();
bundle.putString(key,value);
intent.putExtras(bundle);
startActivity(intent);
이제 New Activity에서 이 번들을 얻고 가치를 다시 찾을 수 있습니다.
Bundle bundle = getArguments();
String value = bundle.getString(key);
의도를 통해 데이터를 전달할 수도 있습니다.당신의 현재 활동에서, 이런 의도를 설정하고,
Intent intent = new Intent(this,NewActivity.class);
intent.putExtra(key,value);
startActivity(intent);
이제 'New Activity'에서는 이와 같은 의도를 통해 가치를 얻을 수 있습니다.
String value = getIntent().getExtras().getString(key);
활동 내용을 적습니다.
Intent intent = new Intent(CurrentActivity.this,NextActivity.class);
intent.putExtras("string_name","string_to_pass");
startActivity(intent);
Next Activity.java에서
Intent getIntent = getIntent();
//call a TextView object to set the string to
TextView text = (TextView)findViewById(R.id.textview_id);
text.setText(getIntent.getStringExtra("string_name"));
저한테는 이 방법이 좋으니 한번 드셔보세요.
출처 : https://www.c-sharpcorner.com/article/how-to-send-the-data-one-activity-to-another-activity-in-android-application/
언급URL : https://stackoverflow.com/questions/768969/passing-a-bundle-on-startactivity
'programing' 카테고리의 다른 글
봄콩 스코프 (0) | 2023.10.05 |
---|---|
Oracle 데이터베이스 내에서 Long data type을 검색하는 가장 좋은 방법은 무엇입니까? (0) | 2023.10.05 |
왜 $$를 $self와 $body에 넣습니까?그리고 자신은 $self와 같습니다. (0) | 2023.09.25 |
mysql에 문자열 길이에 제한이 있습니까? (0) | 2023.09.25 |
이온: 이온 아이템을 여러 선에 표시하는 방법? (0) | 2023.09.25 |