안드로이드 개발 질문/답변
(글 수 45,052)
public class Test extends Activity{
private MyView mMview;
int x = 10;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addContentView(mMview, new FrameLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT)); View v = getLayoutInflater().inflate(R.layout.main, null); addContentView(v, new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
}
class MyView extends View
{
public MyView(Context c)
{
super(c);
setFocusable(true);
}
public boolean onTouchEvent(MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
int x = (int) event.getX();
int y = (int) event.getY();
if(left[0] < x & x <right[0] & bottom[0] < y & y < top[0])
{
showDialog(SampleDialog); <- 이 부분에서 다이어 로그가 생성이 안됨
}
}
}
안녕하세요.
보시다시피 addContentView 를 이용해서 main.xml 에 view 를 추가해서 보여주는데 문제는..
터치시에 다이어로그가 생성이 안됩니다 ㅠㅠ . 제 생각에는 view 부분에서는 안되는것같은데;
저거 어떻게 터치시에 다이얼 로그 생성되도록 하는 방법 없을까요? ㅠ
2011.05.26 17:02:18
일단 감사합니다 Touch 는 정상적으로 작동을 합니다만..
문제는 다이어 로그를 사용할때
protected Dialog onCreateDialog(int id) {
switch (id) {
case SampleDialog:
return new AlertDialog.Builder(ShowDialog.this.)
.setTitle("�뚮┰�덈떎.")
.setMessage("��솕�곸옄瑜��댁뿀�듬땲��")
.setIcon(R.drawable.icon)
.setPositiveButton("�リ린", null)
.create();
case QuestionDialog:
return new AlertDialog.Builder(ShowDialog.this)
.setTitle("吏덈Ц")
.setMessage("諛�癒뱀뿀�댁슂?")
.setPositiveButton("癒뱀뿀��", null)
.setNegativeButton("援띠뿀��", null)
.create();
}
return null;
}
ShowDialog.this 를 어떻게 바꿔야할지 감이 안잡혀서요. Test.this 는 안되고 그렇다고 뷰의 이름을 넣어도 안되더라고요.
그리고 setContentView를 사용하곤 싶은데 사실 비트맵을 지정해서 움직이게 하고 그것의 크기가 일정 상태일경우에 바껴야되서리..
어쩔수 없이 저렇게 했어요 ㅎㅎ 실력도 부족하기도 하고;; ㅠㅠ




window 쪽에서 setcontentview / addcontentview 를 관리 하는데요.. onTouch 쪽에 Log message 를 찍어서 로그를 확인하시는게 먼저일것 같고 만약 로드조차도 안들어 온다면 touch 이벤트 연결이 안된것이니 .. 이쪽을 찾아보시는게 먼저일듯 합니다.
setContentView 를 사용하지 않은 이유가 있으신가요?
그게 아니라면 addContentView 가 아닌 setContentView 를 사용하시는게 좋을것 같습니다.