마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

intent로 android dialog 호출하기

0 추천

안녕하세요 혼자 고민끝에 도움이 필요해서 질문드립니다.

intent를 이용하여 android Dialog를 호출하고싶은데요

Dialog를 호출시 디폴트 생성자가없어 context값을 넣어줘야되는데

intent를 이용하여 호출시 생성자에 context값을 넣는 방법을 몰라 질문합니다......

예를 들면

package com.android.aaa;

class A extend Dialog{

...

    public A(Context context){

    ....

    }

}

Dialog인 A 클래스를 다른곳에서 intent를 사용하여 호출하고싶습니다. 디폴트생성자는 없습니다..

 

도움부탁드립니다.

 

두마두 (120 포인트) 님이 2013년 12월 2일 질문

2개의 답변

0 추천
인텐트는 activity를 호출할 때 사용됩니다. dialog를 확장한 A클래스는 intent 없이도 호출할 수 있는 것 같은데요??
방귀과장 (18,940 포인트) 님이 2013년 12월 2일 답변
다른 앱의 경우에는 위에서 알려드린대로 패키지명을 클래스명앞에서 붙이는 방법이 효력이 없습니다. 다른 방법은 없을 겁니다.
아하 그렇군요 일단 액티비티(B)를 통해서 다이얼로그를 띄우는 건 구현을 했는데 (data값을 사용하여 getIntent 로 조건을 거니 되더군요) 혹시나 액티비티(B)를 안거치고 바로 띄울수는 없나해서요... 문제점이 원소스를 수정해야되는것과 다이얼로그에서 back키를 누를시 호출한 액티비티가 아니라 액티비티(B)로 가더라고요.... flag값을 사용하면 될거같긴한데 어떤플래그를 써야될지 모르겠네요 이부분도 도움을 좀받을수 있을까요?
다이얼로그에서 back 키를 누를 때 B 액티비티를 finish 시키는 방법을 쓰시면 될 것 같은데요. 그러면 호출한 액티비티가 화면에 표시될 겁니다.

다이얼로그를 확장한 클래스에 back 키 리스너를 구현하거나 이미 있는 코드를 수정하시면 될 것 같네요.
근데 문제는 이 다이얼로그를 이앱에서만 사용하는것이아니라서...문제내요 이동작에서만 다르게 동작을 시켜야하니깐.. 흠
flag 변수를 사용하여 어떤 곳에서 왔는지 구분하여 처리하면 될 듯하네요.
0 추천
A앱에서 B앱의 다이얼로그를 띄우고 싶다는 건가요?
A,B앱을 모두 직접 만드시는 거라면,
A앱에서 B앱의 액티비티를 띄우고, 해당 액티비티에서 다이얼로그를 띄우는 식으로 구현하면 됩니다.
익명사용자 님이 2013년 12월 2일 답변
인텐트에 플래그값을 넣어서 B앱의 액티비티를 띠우고 플래그값을 검사하여 다이얼로그를 띄우라는 말씀이신가요?
혹시 B앱 액티비티를 거치지않고 바로 다이얼로그로 가는 방법이있나해서요..
...