그래서 저는 XML을 통해 팽창 된 뷰를가집니다. I XML로 설정할 수 없으며,이 때문에런타임에 뷰 속성을 변경하는 적절한 방법
toolbar.getHeight() - 100
: 그 도면이 같은 동적 값으로 marginTop 설정해야 하위 뷰를 갖는다. 나는이 할 수있는 :
?attr/actionBarSize
을하지만 난 특별히 toolbar.getHeight() - 100
달성이 적절한 방법은 무엇입니까해야합니까? 나는 활동의 onCreate에서 그것을하고 있는데, 나는 그보기에 viewTreeObserver.addOnGlobalLayoutListener
을 설정하고, layoutParameters를 얻어 마진을 추가한다.
이렇게하는 것이 올바른 방법입니까? 내가 보는 방식으로, 뷰가 그려지며 뷰의 viewTreeObserver 내부에서 코드를 실행할 때 뷰를 다시 그려야합니다. 사용자 정의보기를 설정하지 않고이 이중 렌더링을 피할 수있는 방법이 있습니까?
경우의 GetResources()'와 그 크기를 찾아 볼 수 getDimensionPixelSize을 (...)'을 선택하고 레이아웃 패스를 기다리는 대신 바로 여백을 설정합니다. – Karakuri
아닙니다. 그 attr? actionBarSize –
당신은'onStartedAttributes()'를'onCreate()'에서 찾을 수 있습니다. 그리고 그것은 고정 크기입니다, 그것은 다른 구성에 대해 단지 고정 된 크기입니다. – Karakuri