0
화면 내비게이션 탭이있는 기기에 내 앱을 다운로드하면 내 레이아웃 중 일부가 서로 겹쳐지기 시작합니다.LinearLayout의 Android 레이아웃이 화면 내비게이션이있는 기기에서 겹칩니다.
기본적으로 부모 십자가는 LinearLayout
이고 나머지 네 개의 자식은 LinearLayout
입니다. 네비게이션이 스크린 상에있을 때, 아이들 레이아웃은 서로 겹쳐지기 시작합니다.
정상입니까? 나는 기본 Android 위젯을 사용 했으므로 중복 된 문제가 없어야한다고 생각했습니다.
초기화 코드 :
// other code ...
mainLayout = new LinearLayout(getActivity());
mainLayout.setOrientation(LinearLayout.VERTICAL);
// other code...
titleBarLayout = new RelativeLayout(getActivity());
titleBarLayout.setGravity(Gravity.CENTER);
mainLayout.addView(titleBarLayout);
titleBarLayout.getLayoutParams().width =SCREEN_WIDTH;
// other code...
miniBarLayout = new LinearLayout(getActivity());
miniBarLayout.setOrientation(LinearLayout.HORIZONTAL);
miniBarLayout.setGravity(Gravity.CENTER);
miniBarLayout.setPadding(0, 1, 0, 1);
mainLayout.addView(miniBarLayout);
// other code...
userBarLayout = new LinearLayout(getActivity());
userBarLayout.setOrientation(LinearLayout.HORIZONTAL);
mainLayout.addView(userBarLayout);
특정 문제 : userBarLayout
는 miniBarLayout
와 겹칩니다.
좋은 소리는 들리지만 제목 표시 줄 너비와 보기가 다른보기로 완전히 채워지지 않으므로 "여유 공간"이 있어야합니다. 당신이 제안한 것을 시도하고이 대답으로 돌아가겠습니다. –
메인 레이아웃의 어느 뷰가 너무 많은 공간을 차지하고 있는지 알고 싶다면 HierarchyViewer를 사용하여 mainLayout 및 children에 대한 measuredHeight/layoutHeight의 값을 살펴볼 수 있습니다. 그건 아마 당신에게 더 많은 통찰력을 줄 것입니다. 실수로 잘못된 값으로 설정 한 레이아웃 매개 변수가 있거나 어쩌면 여기서 추측하고있는 이미지 중 하나가 잘못된 리소스 폴더에서 너무 큽니다. 기타 등등. HierarchyViewer는 IDE에서 액세스 할 수 있어야하며 android-sdk의 'tools'디렉토리에서 HierarchyViewer를 실행할 수도 있습니다. – baske