반응형
Intent.putExtra 목록
중복 가능성 : 인
텐트에 목록을 넣는 방법
한 활동에서 다른 활동으로 목록 을 전달하고 싶습니다 . 지금까지 나는 성공하지 못했습니다. 이것은 내 코드입니다.
//desserts.java
private List<Item> data;
@Override
public void onCreate(Bundle icicle) {
//Code
data.add(new Item(10, "dessert1"));
data.add(new Item(11, "dessert2"));
data.add(new Item(12, "dessert3"));
data.add(new Item(13, "dessert4"));
data.add(new Item(14, "dessert5"));
data.add(new Item(15, "dessert6"));
data.add(new Item(16, "dessert7"));
data.add(new Item(17, "dessert8"));
data.add(new Item(18, "dessert9"));
data.add(new Item(19, "dessert10"));
data.add(new Item(20, "dessert11"));
//Some more code
}
@Override
public void onClick(View v) {
Intent view_order_intent = new Intent(this, thirdpage.class);
view_order_intent.putExtra("data", data);
startActivity(view_order_intent);
}
그러나 나는 이런 식으로 데이터 를 넣을 수 없습니다 . 나는이 질문을 더 일찍 물 었지만별로 일어나지 않았다.
친절하게 도와주세요. 다음 활동에서 데이터 를 얻는 방법도 도와주세요 .
목록이 문자열 목록이라고 가정하면 데이터를 ArrayList<String>
만들고 사용합니다.intent.putStringArrayListExtra("data", data)
다음은 필요한 코드의 골격입니다.
목록 선언
private List<String> test;
적절한 위치에 목록 초기화
test = new ArrayList<String>();
에 적절하게 데이터를 추가합니다
test
.다음과 같이 의도에 전달하십시오.
Intent intent = getIntent(); intent.putStringArrayListExtra("test", (ArrayList<String>) test);
다음과 같이 데이터를 검색합니다.
ArrayList<String> test = getIntent().getStringArrayListExtra("test");
도움이되기를 바랍니다.
목록 대신 ArrayList를 사용하면 문제가 해결됩니다. 코드에서 List를 ArrayList로 수정하십시오.
private List<Item> data;
두 가지 방법으로 할 수 있습니다.
직렬화 가능
소포 가능.
이 예제는 직렬화 가능으로 구현하는 방법을 보여줍니다.
class Customer implements Serializable
{
// properties, getter setters & constructor
}
// This is your custom object
Customer customer = new Customer(name, address, zip);
Intent intent = new Intent();
intent.setClass(SourceActivity.this, TargetActivity.this);
intent.putExtra("customer", customer);
startActivity(intent);
// Now in your TargetActivity
Bundle extras = getIntent().getExtras();
if (extras != null)
{
Customer customer = (Customer)extras.getSerializable("customer");
// do something with the customer
}
이제 이것을 보세요 . 이 링크는 Parcelable로 구현하는 방법에 대한 간략한 개요를 제공합니다.
이것 좀 봐 . . 이 토론은 그것을 구현하는 훨씬 더 좋은 방법을 알려줄 것입니다.
감사.
//To send from the activity that is calling another activity via myIntent
myIntent.putExtra("id","10");
startActivity(myIntent);
//To receive from another Activity
Bundle bundle = getIntent().getExtras();
String id=bundle.getString("id");
참조 URL : https://stackoverflow.com/questions/6543811/intent-putextra-list
반응형
'development' 카테고리의 다른 글
iOS-모달보기가 있는지 확인하는 방법 (0) | 2021.01.05 |
---|---|
숨겨진 상위 사업부 내에 하위 사업부 표시 (0) | 2021.01.05 |
스토리 보드에서 "initwithNibName"을 어떻게 변경합니까? (0) | 2021.01.05 |
MySQL InnoDB 삽입이 왜 그렇게 느린가요? (0) | 2021.01.05 |
제한을 사용하는 JPA 2 CriteriaQuery (0) | 2021.01.05 |