2011-10-24 5 views
1

Android 용 Titanium에서 개발할 때 창에 표시 할지도 뷰의 크기를 설정해야하며 특히지도 뷰의 높이를 설정해야합니다. 따라서 보이는 화면 크기가 무엇인지 알아야합니다. , 1. Tabgroup 2.지도보기 (어떤 크기가 안드로이드 장치에 대한 기본값입니다) (나머지 화면 공간을 차지) 3. 센터 표시 아이콘 (지도보기의 중간에 배치되는 :Android에서 프로그래밍 방식으로 화면 높이를 표시하려면 어떻게해야합니까?

여기 레이아웃입니다 고정 크기) 4. 라벨 (고정 크기) 5. 버튼 (고정 크기)로

한 가지 방법은 다른 모든 요소를이 프로그래밍 tabgroup 높이를 취득하는 것입니다, 다음 platformHeight에서 빼줄 것입니다합니다 (tabgroup , 레이블 높이 및 단추). 그러나 나는 tabgroup 높이를 얻을 수있는 방법을 찾을 수 없습니다 - 아는 사람 있습니까?

centerview 아이콘을 배치 할 수 있도록지도 뷰 높이가 무엇인지 알아야하므로 mapview에 bottom 속성을 사용할 수 없습니다 (예 : label.height + button.height로 설정). 그것의 중간.

의견을 보내 주시면 대단히 감사하겠습니다.

답변

1

일반적으로 항목이 렌더링 된 후에는 size 속성에 유효한 값이 표시되어야합니다. 이것은 너비와 높이가있는 객체입니다.

uiobject.size = { width: x, height: x } 

렌더링되기 전에 개체의 크기를 쿼리하면 일반적으로 0이 반환됩니다. 렌더링 됨으로써 반드시 화면에 표시되는 것을 의미하지는 않지만 부모보기에 배치되고 구성됩니다. 객체는 숨김/보이지 않을 수 있지만, 배치되는 즉시 이러한 속성이 유효해야합니다.

탭 그룹, 내부 맵보기 등에서 참조가 필요합니다.

또한 센터 속성을 사용하여 레이아웃 해 보았습니까? 위와 동일한주의 사항이 있지만 (부모보기에서 구성된 한 번만 유효) 다음과 같이 할 수 있습니다.

parent.add(mapView); 
parent.add(centerIcon); 
centerIcon.center = mapView.center; 
관련 문제