2011-11-24 1 views
2

하단에 대화 상자 활동 (대화 상자 테마가있는 활동)을 정렬 할 수 있습니까? 기본적으로 화면 중간에 표시됩니다. 그 정보를 찾지 못했습니다 ... 고마워요.Android 활동 정렬

답변

1

이것은 정확히 무엇을하고있는 것은 아니지만 화면 하단의 활동에서 대화 상자를 표시해야하는 비슷한 문제가있었습니다. 트릭은 WindowManager.LayoutParams을 사용하는 것이 었습니다. 내가 시도했지만 구글에서 검색하면 당신이 getWindow().setAttributes(), 나는이 당신을 도울 것입니다 희망이 ... 수행이 도움이 발견되지 않았다

public void onPrepareDialog(int dialog, Dialog dlg) { 
    Window window = dlg.getWindow(); 
    WindowManager.LayoutParams wlp = window.getAttributes(); 
    switch (dialog) { 
    case DIALOGUE_LOADING_PLEASE_WAIT: 
     wlp.gravity = Gravity.BOTTOM; 
     window.setAttributes(wlp); 
     break; 
    default: 
     break; 
    } 
} 
+0

고마워요! 그것은 완벽하게 작동합니다! 그리고 이것은 어떤 종류의 활동이나 대화에도 적용됩니다. – lomza

1

: 여기처럼 내 onPrepareDialog 보이는거야. 링크의

내용 (작동하지 않는 경우) : -

당신하여 GetWindow()를 호출 getAttributes()는 윈도우의 WindowManager.LayoutParams를 검색 할 수 있습니다.. 이 창 배치와 관련된 다음과 같은 필드가 있습니다 원하는 변경 한 후

http://code.google.com/android/reference/android/view/ViewGroup.LayoutParams.html#width

http://code.google.com/android/reference/android/view/ViewGroup.LayoutParams.html#height

http://code.google.com/android/reference/android/view/WindowManager.LayoutParams.html#gravity

http://code.google.com/android/reference/android/view/WindowManager.LayoutParams.html#x

http://code.google.com/android/reference/android/view/WindowManager.LayoutParams.html#y

을, U를 se getWindow(). setAttributes()에 새 값을 설치하십시오.

참고는 일반적으로 폭과 높이 필드를 통해이 작업을 수행 할 수있는 올바른 방법을 특정 크기를 강제 할 수 있지만, 그 창 이 정상 레이아웃을하고 자동으로 방법을 창 크기를 결정하게된다. 대화 상자에서 고정 크기 (예 : 300x200)을 원하면 View.onMeasure()를 구현하여 setMeasuredDimension (300, 200)을 호출하십시오. 그런 다음 뷰 계층 구조 레이아웃 이 발생하면 대화 상자 창에 크기가 표시되어 이라는 실제 크기의 창이 더 커지므로 을 고려하여 대화 상자 프레임과 장식을 고려해야합니다.

http://code.google.com/android/reference/android/view/View.html#onMeasure(int,%20int