"슬라이더를 잠금 해제하는"요소와 같은 UISlider를 작성했습니다. 필자가 작성한 애니메이션은 슬라이더 하나만 가리킬 때 잘 작동합니다. 하지만 슬라이더를 동적으로 생성하려면 for 루프를 사용해야합니다. 그리고이 같은 슬라이더가 for 루프에서 슬라이더 태그를 추가하고 슬라이더에 애니메이션 기능을 추가 생성 할 때 애니메이션이 작동하지 않습니다for 루프로 만든 슬라이더에 애니메이션을 추가 할 수 있습니까?
for (int i = 0; i < rowCount; i++){
...
UISlider *slider=[[UISlider alloc] initWithFrame:CGRectMake(5+ xInc, 25+yInc, 322, 40)];
//give a id tag to the slider
[slider setTag:i*10];
//set a action to the slider
[slider addTarget:self action:@selector(UnlocklinkSlider:) forControlEvents:UIControlEventTouchUpInside];
...
그리고 애니메이션 기능입니다 :
- (void)UnlocklinkSlider:(UISlider*)slider
{
for (int i = 0; i < rownumber; i++){
UIImageView *frontimg = (UIImageView *)[self.view viewWithTag:i*10+1];
...
if (slider.tag==i*10) {
if(slider.value >= 0.5){
// user did not slide far enough, so return back to 0 position
[UIView beginAnimations: @"SlideCanceled" context: nil];
[UIView setAnimationDelegate: self];
[UIView setAnimationDuration: 0.35];
// use CurveEaseOut to create "spring" effect
[UIView setAnimationCurve: UIViewAnimationCurveEaseOut];
...
[UIView commitAnimations];
...
}
else{
...
}
}
}
}
하지만 애니메이션이 이런 방식으로 작동하지 않습니다. 왜 아무도 알지 못해?
루프의 목적은 무엇입니까? 어떤 속성으로 애니메이션을 적용하려고합니까? 어떤 방법으로 작동하지 않습니까? – Wain
사실, 슬라이더 버튼을 만들기 위해 왼쪽면으로 밀고 클릭하면 웹 페이지 1로 이동합니다. 오른쪽면으로 밀면 클릭하면 웹 페이지 2로 이동합니다. 슬라이더를 왼쪽 또는 오른쪽으로 돌리지 않으면 왼쪽 또는 오른쪽으로 돌아갑니다. 이 버튼은 웹 페이지 1과 웹 페이지 2의 두 가지 액세스 권한이있는 특정 웹 사이트에 대한 링크입니다. 다른 웹 사이트에 버튼을 추가 할 수 있습니다. –
좋습니다. 물론 슬라이더를 건네 줘야합니다. 슬라이더를 사용하여 무엇을 해야할지 생각하는 대신 루핑을하는 이유는 무엇입니까? – Wain