2011-02-05 4 views
0

UINavigationBar, UIImageView 및 UITableView가 (위에서 아래로) 포함하는 UINavigationController가 있습니다. 스택에서 푸시 할 모든 뷰에는 동일한 위치의 UIImageView (로고)가 포함되어 있습니다.iPhone UINavigationController :보기의 일부만 애니메이션화하십시오.

로고를 UINavigationBar 바로 아래에 유지하고 애니메이션을 표시하지 않고/pop 뷰를 누르면 좋겠다. 가능합니까?

감사

+0

로고가 별도의 이미지입니까? 아니면 더 큰 이미지의 일부입니까? –

+0

로고는 별도의 이미지입니다. 그것은 UINavigationBar와 UITableView 사이에 있습니다. 나는 TableView 만 움직이게하고 싶다. 어떤 생각? –

+0

나는 당신과 똑같은 문제가 있다고 생각합니다. 스크린 샷을 빨리 추가 할 수있어서 당신이 더 나은 것을 볼 수 있습니다. 그러면 제가 도울 수 있어야합니다. –

답변

0

앱 위임의 메인 창에 직접 로고 이미지보기를 추가하는 것입니다 이것을 달성하기 위해 내가 생각할 수있는 유일한 방법입니다. 탐색 막대 바로 아래에 나타나도록 배치하십시오. 그런 다음보기 컨트롤러의보기 배경색을 지우고 opaque 속성이 NO으로 설정되어 있는지 확인해야합니다. 보기 크기를 조정하고 자동 크기 조정 마스크를 설정하여 화면 하단 (또는 탭 막대 또는 하단 도구 모음의 맨 위에 고정)으로 설정하십시오.

기본적으로 완전히 투명 한보기의 일부가 표시되도록보기 컨트롤러의보기를 설정해야합니다. 이 경우 기본 창에 직접 추가 한 로고 이미지보기가 항상 표시됩니다. 내비게이션 컨트롤러를 사용하여보기 컨트롤러 사이를 밀거나 터뜨릴 때 모든보기 컨트롤러의보기가 로고 이미지보기가 나타나는 오른쪽 상단에 투명하게 설정되어 있는지 확인하십시오. 네비게이션 컨트롤러가 트랜지션을 애니메이트하더라도, 뷰 상단의 투명도는 네비게이션 바 및 서브 뷰와 함께 뷰의 불투명 한 부분을 애니메이션으로 표시해야합니다.

희망이 있습니다.

업데이트 : 노아 위더스푼 (Noah Witherspoon)의 의견에 따르면 더 나은 방법은 이미지 로고보기를 탐색 컨트롤러보기의 하위보기로 추가하는 것입니다. 로고의 이미지보기로 내용이 가려지지 않도록보기 컨트롤러의 크기를 조정해야하지만 전반적으로이 방법은 훨씬 깔끔합니다.

+0

This 내가 사용할 접근법이 아닙니다. 뷰 컨트롤러를 투명하게 만들면 전체 뷰에 대해 상당한 추가 합성 비용이 발생합니다. 더 나은 방법은 네비게이션 컨트롤러의 뷰 상단에 ** 로고보기를 창에 추가하는 것입니다. 이렇게하면 이미지보기로 덮힌 영역 만 혼합해야합니다. –

+0

아, 네 말이 맞아. 어떤 이유로 든 로고 이미지보기를보다 적절하게 관리하는 경우 훨씬 더 나은 방법이 될 수 있습니다. 필자는 제안 된 방식이 추가 합성 비용에도 불구하고 상당한 성능 비용을 초래하지 않을 것이라고 완전히 확신합니다. – LucasTizma

관련 문제