2009-11-13 5 views
0

TabNavigator에서 크기 조정 문제가 있습니다. TabNavigator의 직접적인 하위 항목은 캔버스 (Canvases)이며,이 중 이미지를 추가합니다. 캔버스 내에서 스크롤 막대없이 이미지 크기를 조정하려고합니다. 캔버스 높이는 부모의 100 %, 즉 TabNav로 설정됩니다. 그런 다음 이미지를 설정합니다. height = parent.height * .9TabNavigator에서 탭의 높이가없는 하위 키의 높이를 찾는 방법은 무엇입니까?

결과 이미지가 너무 높아서 Flex에서 스크롤 막대를 생성하고 있습니다. 근본적인 원인은 TabNavigator의 height 속성이 탭 높이를 포함하여 전체 구성 요소의 높이라는 것입니다. 따라서 TabNavigator의 탭과 하위 요소 사이에 작은 간격이 포함되어 있다고 가정합니다.

이것은 의미가 있지만, 아이들의 키만을 반환하는 속성이 있습니까?

나는 스크롤바 정책 속성을 알고 있고 그것들을 실험했다. 이미지 크기에 맞게 다른 배율을 시도해 볼 수도 있습니다. 아이들을위한 공간의 크기를 얻는 재산이 있어야하는 것처럼 보입니다.

답변

0

소스를 살펴보면 원하는 것으로 보이는 "contentHeight"속성이 있습니다.

방법이 라인 끝 :

return unscaledHeight - tabBarHeight - vmTop - vmBottom; 

정확히 당신이 찾고있는 것으로 보인다. 불행히도이 속성은 보호됩니다. 개발자가 Flex 라이브러리에서 원하는 많은 것들이 있습니다. :)

가장 빠른 해결책은 하위 클래스 TabNavigator를 사용하고이 속성을 공개적으로 노출하는 것입니다. 또는 직접 계산할 수도 있습니다.

image.height = (parent.height - TabNavigator(parent).tabBar.height) * .9); 
관련 문제