2014-07-05 2 views
-1

커스텀 listItem (각 listitem 객체에는 문자열, 정수 및 두 번째 정수 값이 포함 된)이있는 아주 간단한 응용 프로그램을 만들고 있습니다.개체 데이터를 목록에서 Android의 표시 페이지로 어떻게 보내나요?

내가 달성하고자하는 것은 사용자가 listitem을 탭하여 새 화면에서 열도록 허용하는 것입니다. 단순히 동일한 정보를 표시합니다.

그러나 나는 조금 초보자로서 길을 잃었다. 첫 번째 화면에서 두 번째 화면으로 listItem 데이터를 보내려면 어떻게해야합니까? 이 튜토리얼과 같은 것을 얻으 려하고있다. 그러나 어떻게 작동 하는지를 알 수 없다. : http://www.codelearn.org/android-tutorial/twitter/intent-example-tweet-detail-screen-module

나는 stackoverflow를 보았지만, 무엇 때문에 검색해야할지 모르겠다. 하나도 찾지 못했습니다

+0

의도를 사용하여 두 번째 활동을 시작하십시오. 문자열의 데이터를 의도에 넣고 두 번째 활동에서 추출합니다. – kicker86

+0

전체 개체를 한 번에 보낼 수 있습니까? 한 번에 한 장씩 보내지 않고 전체 개체를 보내는 방법을 이해하는 것을 선호합니다. – user198923

+0

예, 전체 개체를 보낼 수 있습니다. Itent.putExtras() 및 번들을 확인하십시오. Object에 Primitve 유형 만 포함 된 경우 Intent 자체에 넣고 두 번째 활동에서 새 객체를 만드는 것이 좋습니다. – kicker86

답변

0

Serializable을 사용하여 클래스를 구현할 수 있습니다.

import java.io.Serializable; 

@SuppressWarnings("serial") //with this annotation we are going to hide compiler warning 
public class CustomObject implements Serializable { 

public CustomObject(double id, String name){ 
    this.id = id; 
    this.name = name; 
} 

public double getId() { 
    return id; 
} 
public void setId(double id) { 
    this.id = id; 
} 
public String getName() { 
    return this.name; 
} 
public void setName(String name) { 
    this.name = name; 
} 

private double id; 
private String name; 

} 

X 액티비티의 customObject라는 개체를 Y 액티비티로 보낼 것입니다. onItemClik에서

CustomObject customObject = new DCustomObjectneme(4,"YourName"); 
Intent i = new Intent(this, Y.class); 
i.putExtra("sampleObject", customObject); 
startActivity(i); 

Y 활동에서 우리는 개체를 얻고 있습니다.

Intent i = getIntent(); 
CustomObject customObject = (CustomObject)i.getSerializableExtra("sampleObject"); 

사용해보기.

+0

감사! 그게 효과가있어! – user198923

+0

도와 주셔서 감사합니다 :) –

관련 문제