내가 뭘하려는 건지, 각각의 UIButton
에 대해 하나의 함수가 만들어지고 그 함수 내에서 스위치를 사용하여 동작을 결정합니다. 스위치를 사용하기 위해 버튼에 태그를 설정하고 있지만 실제로는 그렇게 멀리 가지 않습니다. 나는이 버튼 변수가 생성되기 때문에, 그리고 그것에 대한 언급이 없기 때문에 다음, 오토 릴리즈 있다고 생각ARC를 사용하는 동안 어떻게 UIButton을 메모리에 유지합니까?
-[WatchViewController buttonHandler]: unrecognized selector sent to instance 0x6845430
: 나는 버튼 중 하나를 클릭하면
for var(int i = 0; i < numResults; i++)
{
UIButton* button = [[UIButton] alloc] initWithFrame:CGRectMake(0,(i*55)+10,320,50)];
[buttton setTag:i];
[button addTarget:self action:@selector(buttonHandler) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:button];
}
...
-(void) buttonHandler:(id)sender
{
//Handle the button press
}
앱에서 오류가 발생합니다 ARC에 의해 호출되므로 함수가 호출 될 때 더 이상 존재하지 않습니다. 불행히도 저는 메모리에있는 각 버튼에 대한 참조를 유지하는 방법을 모르겠습니다.
내가 틀렸거나 (내가 작성한 내용이 불량한 실습 인 경우) 알려 주시면 언제든지 배울 수 있습니다.
정말 고마워요, 나는 그것이 필요하다는 것을 깨닫지 못했지만 지금은 완벽한 감각이 있다고 말해 왔습니다. 분명히 나는 틀린 나무를 완전히 짖고 있었다! – mrh89