나는 계산 응용 프로그램에서 일하고 있습니다. 큰 스택 뷰 (SB 및 콘센트 없음)에 저장하는 버튼이 많습니다. 각 버튼은 일부 그림자를 투영합니다 (SB 속성에서도 설정 됨). 버튼을 눌렀을 때 그림자를 없애고 싶습니다. tapGestureRecognizer 또는 대상 작업은 하나의 UIButton에만 적용 할 수 있습니다. 손가락 이동 버튼은 여전히 많은 버튼을 추가 addTarget (_ : action : :) 메소드
도움 감사
나는 계산 응용 프로그램에서 일하고 있습니다. 큰 스택 뷰 (SB 및 콘센트 없음)에 저장하는 버튼이 많습니다. 각 버튼은 일부 그림자를 투영합니다 (SB 속성에서도 설정 됨). 버튼을 눌렀을 때 그림자를 없애고 싶습니다. tapGestureRecognizer 또는 대상 작업은 하나의 UIButton에만 적용 할 수 있습니다. 손가락 이동 버튼은 여전히 많은 버튼을 추가 addTarget (_ : action : :) 메소드
도움 감사
, 체크 그래서 그림자를해야 할 때 버튼 .touchupinside 또는 tapGestureRecognizer이 .start을 .END 때 내 말은
PS를 acheive 할 수있는 편리한 방법 버튼 설정은 기본 상태로 동일하게 강조 상태 설정에서 제목 색상을 변경하거나 설정할 수 있습니다
[button setTitleColor:[UIColor blackColor] forState:UIControlStateHighlighted];
당신이 코드에 의해 강조 표시된 제어하려는 경우, 당신은 노마을 해제 할 수 있습니다 L 서브 클래스 버튼에 의해 강조하고 touchesBegin에서 해제 : 같은 방법이 모두 요구되도록
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
if (self.state == UIControlStateHighlighted) {
[self setHighlighted:NO];
}
}
사용 된 태그가 "Objective -C ", 당신의 대답은 스위프트로 작성되어야한다고 생각합니다 :) –
신속한 사용 : button.selected = false –
대단히 감사합니다. 훌륭한 대답 .. 아직도 몇 가지 문제가 있습니다 .. 스토리 보드에서 버튼 속성을 설정하고 있습니다. not titleColor하지만 버튼 레이어 그림자 .. 거기에있는 방법을 subClass UIButton 달성 – jin
당신은
func buttonDidTouch(sender:UIButton) {}
당신이 원하는 이제 경우, 여러 개의 버튼에 동일한 IBAction를 할당 할 수 있습니다 정확히 어떤 버튼이 호출되는지 식별하려면 UIButton.tag 속성을 사용하여이를 식별 할 수 있습니다. 각 버튼의 SB에서 태그를 설정할 수 있습니다.
tks .. 분명히 말하지 않는 것 같아요. 버튼 .touchupinside 또는 탭 .start .ended 때 손가락 이동 버튼은 여전히 그림자를 던져 야합니다 – jin
목표를 달성하는 데는 여러 가지 방법이 있지만 아래에서 설명하겠습니다.
내 논리를 알려주세요. 임시 선택적 변수 인 UIButton
을 가져가
예. 버튼 액션 메소드
@IBAction func myButtonActionFunc(_ sender: UIButton) {
if myTemButton == nil {
myTemButton = sender
}
else {
// Use "myTemButton" and write here code for remove shadow Or other stuff that you want.
}
// use "sender" and write code here for apply shadow of button or other stuff that you want.
}
tks .. 질문 편집 분명히 말하지 않는 것 같아요. 버튼을 눌렀을 때 .Touchupinside 또는 탭 시작은 그림자 제거 끝낸 다음 다시 그림자를 되 찾으세요. – jin
당신은 SB 사용하지만 콘센트를 사용하지 않는,에
그것은 요구 사항이다? 한 단추를 누를 때 모든 단추의 그림자를 제거 하시겠습니까? – crom87
많은 버튼에 동일한 대상을 추가하기 만하면됩니다 ... 문제가 무엇인가요? –
@ crom87 @ outlet을 설정하는 것이 좋습니다. 각 버튼에 콘센트를 줄 수 없습니다 ~ 만지면 하나만 꺼내십시오. – jin