2010-07-12 5 views
2

내가 내 테이블의 셀에 slider이 이동하지 않습니다 내 슬라이더 초기화 코드 :UISlider, 엄지 손가락, 여기

UISlider* slider = [[UISlider alloc] init]; 
slider.continuous = NO; 

slider.maximumValue = 2; 
slider.minimumValue = 0.5f; 
slider.value = 0.5f; 

... 
//put slider into cell 

와 나는이 슬라이더의 엄지 손가락을 이동할 수 없습니다. 왜? 내가 뭘 잘못했는지 말해줘?

업데이트 : 슬라이더의 초기 값을 0.500001f로 설정하면 작동합니다!

답변

0

엄지가 슬라이더를 활성화하지 않으면 UIView가 위에 있기 때문에 슬라이더를 활성화하지 않을 가능성이 큽니다. cellForRowAtIndexPath에 대한 코드를 게시하십시오

+0

UIView에서 슬라이더 위의 문제가 발생하지 않는다고 생각합니다. 슬라이더의 초기 값을 최소 값으로 설정하면 엄지 손가락이 작아 져서 최소값까지 추적하기 때문입니다. 나는 내 자신있는 UITableViewCell 하위 클래스를 사용하고, 나는 cellForRowAtIndexPath에 대한 코드는 어디서든, 도움이되지 않습니다 생각 : - (있는 UITableViewCell *)있는 tableView : (jQuery과 *)있는 tableView cellForRowAtIndexPath : (NSIndexPath *) cellForRowAtIndexPath { TableViewCellEx * myCell = .. .; ... // 슬라이더 생성 ... myCell.embeddedView = slider; } 셀에 서브 뷰로 추가 될 TableViewCellEx의 embeddedView 속성 저장소 뷰 – iKiR

+0

제발, 어떤 도움이 필요합니까? – iKiR

+0

질문을 코드로 업데이트하면 다른 사람들이이 문제를 보는데 도움이됩니다. – coneybeare

1

이 질문과 직접 ​​관련이 있다고는 생각하지 않지만 비슷한 문제가 있습니다. 슬라이더에 내 프로그램에서 설정 한 값이있을 수는 있지만 움직일 수는 있지만 드래그 앤드 이동이 불가능합니다. 그것. 이 메서드의 (x, y) 위치가 슬라이더 인 UIView에 상대적이라는 것을 인식하지 못하고 내 슬라이더 하위 클래스의 trackRectForBounds 메서드를 코딩 한 것으로 나타났습니다. 포함 된 뷰가 아닙니다. 그래서 initWithFrame의 슬라이더에서 사용한 것처럼 트랙 경계에 대해 동일한 CGRect를 사용했습니다. 이렇게하면 슬라이더 트랙이 슬라이더보기 바깥에 놓입니다. 그 결과 슬라이더 썸을 끌 수 없으며 트랙의 모든 클릭 또는 슬라이더의보기가 포함 된보기에 의해 처리되었습니다.

슬라이더의보기에 별개의 배경색을 지정하지 않은 경우 트랙이보기 외부에 있었음이 분명하지 않으며 어떻게 해결했는지 알 수 없습니다.

trackRectForBounds의 (x, y)를 (0, 0)으로 변경하거나 override trackRectForBounds를 모두 제거하면 모든 것이 완벽하게 작동합니다.

어쩌면이 게시물은 다른 사람을 도울 것입니다.

0

문제를 예측하는 데 충분한 코드가 없습니다. 하지만 최근에 같은 문제가 있었기 때문에 내 문제가 무엇인지 알려주고 도움이되기를 바랍니다.

기본적으로 나는 다른 레이블과 뷰를 사용하여 셀을 다른 영역으로 분리합니다. 슬라이더를 하위 뷰로 UILabel 객체에 추가하면 슬라이더가 움직이지 않는다는 것을 알았습니다. 그래서 먼저 동일한 영역에 UIView를 추가 한 다음이 UIView에 UILabel과 UIslider를 모두 추가합니다. 이제 모든 것이 작동합니다.

관련 문제