안드로이드 개발 질문/답변
(글 수 45,052)
public class A extends Activity {
private static Handler handler;
public void onCreate(Bundle savedInstanceState) {
handler = new Handler(){
public void handleMessage(Message m){
otl.onTouch(tabView.get(4), null);
}
}
Intent sIntent = new Intent(this,B.class);
tabhost.addTab(tabhost.newTabSpec("tab"+i).setIndicator(tabView.get(i))
.setContent(sIntent));
}
}
public class B extends PreferenceActivity {
public void CallA(final int Message){
Message m = new Message();
handler.sendMessage(m); <== A 액티비티의 handler를 참조해야 하는데 A에서 B로 핸들러를 어떻게 넘기는지 모르겠네요
}
}
이너클래스로 하면 어차피 같은 클래스 안에 있으니까 handler를 공유 할수 있는데 B클래스를 별도파일로 만들려고 하니까. handler를 B가 쓸수 있어야 하는데 어떻게 공유 해야 할지 모르겠네요.
검색해봐도 int,String, Serializable 인터페이스를 상속한(?) 클래스, Application을 상속한 클래스를 넘길수 있다고는 되어있더라고요.
위방법중 가능한 방법은 class MyHandler extends Handler implements Serializable 인데,
이렇게 하면 참조가 넘어가는게 아니라 그냥 값이 넘어 갈것 같거든요.(파일저장할때 사용하는것이라서)
액티비티 간에 핸들러를 공유 할려면 어떻게 해야 하나요?




생성자쓰면되지않나요?ㅋ