2013-07-24 1 views
0

무엇을하려고합니까 : 터치 이벤트에서 검색 막대의 x 및 y 좌표를 이동하려고합니다. 나는 그것을 테스트하기 위해 viewDidLoad에 내 코드를 배치했다. 그러나 나는 오류가 발생합니다.'UISearchBar'유형의 개체에서 '프레임'속성을 찾을 수 없습니다.

오류 : 'UISearchBar'유형의 개체에서 '프레임'속성을 찾을 수 없습니다.

내 코드 : 검색 창을 선택하고 선택 해제 한 후 다시 이동할 때

NSNumber *newX = @0; 
NSNumber *newY = @0; 
[UIView animateWithDuration:0.3f animations:^{ 
    [UISearchBar setFrame:CGRectMake(newX, newY, UISearchBar.frame.size.width, 
             yourSearchBar.frame.size.height)]; 
} 
       completion:^(BOOL finished) {} 
]; 

가 궁극적으로 내가 그 애니메이션/이동하려는 실행합니다.

+0

를 UISearchBar *'. – rmaddy

+1

또한'NSNumber' 인스턴스를'CGLectMake()'함수에 전달합니다.이 함수는'CGFloat'을 사용합니다. 그것은'CGFloat newX = 0;과'CGFloat newY = 0;'이어야합니다. –

+0

UISearchBar의 변수를 만들 때 해당 변수를 검색 막대에 어떻게 할당해야합니까? – sephiith

답변

0

UISearchBar은 클래스입니다. 클래스 메소드 setFrame이 없습니다. 그것은 인스턴스 메서드를 가지고 있지만 그게 당신이 사용해야합니다. 따라서 이미 가지고 있거나 생성해야하는 UISearchBar의 인스턴스가 필요합니다. 검색 창을 선택하면이 작업을 수행하는 경우

, 코드는 대리자 메서드 searchBarTextDidBeginEditing:에있을 것입니다 그리고 당신은 제공된 매개 변수를 사용합니다 :`유형의 변수로`UISearchBar` 교체

[searchBar setFrame:CGRectMake(newX, newY, searchBar.frame.size.width, yourSearchBar.frame.size.height)]; 
+0

중간에 여전히 'UISearchBar' 참조가 있습니다. – rmaddy

+0

감사합니다 @rmaddy, 거기에'yourSearchBar'가 무엇인지 확실하지 않지만 지금 당장 떠났습니다 ... – Wain

+0

어떻게 UISearchBar의 인스턴스 메서드를 만들 수 있습니까? – sephiith

관련 문제