2011-11-11 2 views
6

MonoTouch.Dialog를 사용하여 iPad 응용 프로그램을 개발할 때 GetHeight 메서드를 재정의하는 데 문제가 있습니다. IElementSizing을 구현하지만 내 GetHeight 메서드는 호출되지 않습니다.MonoTouch 대화 상자 StringElements 변수 셀 높이

이 문제가 발생한 사람이 있습니까? 감사.

내 root.UnevenRows = true;

나는 또한 대화 상자 프로젝트를 포함하고 GetHeight()에 IElementSizing을 구현하는 요소에 대한 중단 점을 배치하려고 시도했습니다. 이전 iPhone 프로젝트에서이 작업은 정상적으로 수행되었지만 iPad에서는 여전히 멈추었습니다. 내가 누락 될 수있는 다른 '잡았다'가 있습니까?

답변

10

이것은 MonoTouch.Dialog의 버그입니다. 기본적으로 루트 요소를 할당하면 행이 고르지 않은지 여부를 알고 싶어하므로 적절한 UITableViewSource 객체를 만들고 캐시 할 수 있습니다.

그러나 소스 개체가 이미 만들어진 후 IElementSizing을 구현하는 요소가있는 섹션을 루트 요소에 추가하는 경우 그런 다음 GetHeight 재정의를 호출하지 않습니다. 예를 들어 데이터 비동기 및 콜백을 가져 와서 결과 섹션/요소를 RootElement ...에 추가하거나 PrepareRoot()가 호출 된 후에 섹션/요소를 추가 할 때 본질적으로 그렇습니다.

이에 대한 간단한 해결 방법은 : 이것은 당신이보고있는 버그 경우

this.Root.UnevenRows = true; 

그러나 코드를 보지 않고는, 내가 말할 수 없습니다.

관련 문제