2011-01-28 4 views
0

나는 arraylist가 있습니다. 나는 그런 Bundle을 사용하여 다른 활동에서이 ArrayList를 얻을 :활동 의도를 다른 클래스에 전달하는 방법은 무엇입니까?

Bundle name = getIntent().getExtras(); 
ArrayList<String> namevalue = name.getStringArrayList("name"); 

내가 다른 클래스에 같은 ArrayList를 사용하려는. 하지만 내 수업의 becoz getIntent() 메서드를 사용하여 얻을 수없는 활동이 아닙니다. 이 arraylist를 지나갈 수있는 방법이 있습니까?

당신은 (생성자를 통해 또는 다른 방법을 통해) 매개 변수로 클래스를 전달할 수
+0

나는 뭔가를 놓친 것처럼 느낍니다. 이 클래스를 다른 클래스로 전달하는 것이 다른 클래스와 다른 데이터를 공유하는 것과 다른 이유는 무엇입니까? 즉, 왜 그냥 메서드 매개 변수 (푸시)로 전달하거나 일반 Java 프로그램처럼 다른 클래스의 getter 메서드를 사용하여 가져올 수 없습니까? –

답변

3

: 당신은 당신의 클래스의 세터를 만들 수 있습니다

Bundle name = getIntent().getExtras(); 
ArrayList<String> namevalue = name.getStringArrayList("name"); 

YourClass yc = new YourClass(namevalue); 
1

:

public class MyClass { 

    List<String> names; 

    public void setNames(List<String> names) { 
    this.names = names; 
    } 
} 

그런 다음에서 setNames 전화 당신의 활동.

관련 문제