2010-05-20 4 views
1

지난 며칠간 여러 가지 시도를 해봤는데 아이디어가 부족해 도움을 찾고 있습니다. 상황은 사용자가 버튼을 클릭 한 후 인앱 구매 스토어보기를 표시한다는 것입니다. 버튼을 누르면보기가 표시됩니다. 가게는 잘 보여줍니다. 이보기에는 제품에 대한 설명이있는 몇 개의 레이블이 있으며, 그 아래에는 가격이 있고 인앱 구매를 트리거하는 구매 버튼이 있습니다. 문제는 내가 전화를 가로로 돌릴 때 구매 버튼이 더 이상 반응하지 않는다는 것입니다. 세로로 잘 작동합니다.UIButton이 가로 모드로 들어간 후 응답을 멈 춥니 다. - iPhone

내가 버튼을 만질 때의 풍경의 동작은 아무 것도 아닙니다. 내 감동에 반응하지 않고 아래로 누르고 선택되는 것처럼 보이지 않습니다. 하지만 다시 세로로 또는 심지어 거꾸로 세로로 회전하면 잘 동작합니다.

여기 IB의 대략적인 구조가 있습니다. 모든 회전 및 레이아웃은 IB에서 설정됩니다. IB에서 자동 크기 조정을 설정하여 모든 것이 가로로 보이고 Buy 버튼이 수평으로 조금씩 확장되도록합니다. 내 코드에서 수행하는 유일한 레이아웃 조작은로드 한 후 스크롤 뷰의 내용 크기를 설정하는 것입니다.

File Owner with view set to the scrollView  
/scrollView 
----/ view 
--------/ label 
--------/ label 
--------/ label 
--------/ label 
--------/ label 
--------/ label 
--------/ label 
--------/ label 
--------/ uibutton (Buy) 

는 방향 변경 후 나는있는 ScrollView 및 버튼의 userInteractionEnabled 속성을 인쇄, 그들은 모든 방향에서 TRUE 모두 있었다.

아이디어가 있으십니까? 또는 비 기능적이지 않은 구매 버튼을 표시하는 다른 방법이 있을까요? 나는 이미 도구 모음으로 재생하고 거기에 구매 버튼을 배치 지점을 시작했지만 스크롤하는 동안 술집을 제자리에 머물게 할 수없는 것 같습니다.

답변

1

UIButton을 올바르게 작동시키지 못했기 때문에 버튼을 없애고 현재 가지고있는 모든 것을 포함하는 새로운 부모보기를 만든 다음 그 아래에 툴바를 추가하고 버튼을 배치했습니다. 이 문제는 내 시간의 많은 부분을 보증 한 것처럼 보이지 않았습니다. 그래서 나는 다른 방식으로갔습니다.

File Owner with view set to the parent view 
/view 
----/ scrollView 
--------/ view 
------------/ label 
------------/ label 
------------/ label 
------------/ label 
------------/ label 
------------/ label 
------------/ label 
------------/ label 
----/ toolBar 
--------/ barbutton (Buy) 
0

음, 아마도 장치와 같이 회전하지 않는 UIView 내에 버튼이있는 경우 버튼을 항상 보이지만 터치를 전달하는보기 컨테이너 밖으로 봅니다.

IB에서 해당 컨테이너 내의 뷰 앵커를 확인하거나 코딩 할 수 있습니다.

+0

보기에 bgcolor가 있고 버튼 뒤의 색상을 볼 수 있다면 버튼이보기 범위 내에 있다는 의미입니까? 그것이 내가 본 것입니다.따라서 버튼이 뷰 내에 있다고 가정 할 수 있다면, 다른 이유로 인해 터치가 전달되지 않을 수 있습니다. 가로 모드에서 버튼은 스크롤하여 화면 아래로 내려갑니다. scrollview 그것을 아무 상관이 있습니까? – casey

+0

예, bgcolor가 보일 경우 버튼이보기에 있습니다. 나는 문제가 될 수 있는지, 아마 스크롤러 문제인지 모른다. 죄송합니다. – emenegro

3

당신이 문제를 겪어 본 것처럼 들리지만 다른 사람들이 보게 될 경우를 대비해 비슷한 문제가 발생하여 해결책을 찾았습니다.

프로그래밍 방식으로 scrollview를 추가했습니다. 그런 다음 setContentSize를 호출하여 scrollview가 내가 보여주고 자하는 것처럼 키가 큰지 확인합니다. 내가 보여주고 있던 뷰는 UIViewAutoresizingFlexibleWidth와 UIViewAutoresizingFlexibleHeight로 설정되었습니다.

테스트 중에 가로 모드로 회전하면 내 하위보기가 모두있는 것처럼 보이지만 아래로 스크롤하면 아무 것도 클릭 할 수 없습니다. 문제는 내 하위 뷰가 유연한 높이를 갖기 위해 설정 되었기 때문에 scrollview가 수축 할 때 수직으로 수축되고 있다는 것입니다. 아마도 나는 클리핑이나 무언가가 아니기 때문에 예상대로 그것을보고 있었습니까?

어느 쪽이든 내 서브 뷰의 폭이 유연하면 모든 것이 다시 작동합니다. 프로그래밍 방식으로 또는 인터페이스 작성기에서 유연한 높이를 끌 수 있어야합니다 (위아래로 상자의 화살표).

관련 문제