2015-01-01 4 views
1

내 문제는 그룹의 수에 따라 사람들이 그 숫자를 동적으로 많이 만들고 그 숫자를보기에 할당하려고한다는 것입니다. 단일 UIImageView을 작성하여 뷰에 배치하는 방법을 알고 있지만 같은 이름을 가진 다른 파일을 작성하면 원래 파일을 겹쳐 쓰는 것처럼 보이기 때문에 어떻게 변수 번호를 만들 수 있습니까? UIImageView을 배열로 보내려고 시도했지만 선택 오류가 발생했습니다.신속하게 UIImageViews의 가변 숫자를 만드는 방법

  circleView = UIImageView(frame:CGRectMake(125, y, 75, 75)) 
      y+=150 
      circleView.image = UIImage(named:"circle.png") 
      circleView.tag = i 
      self.view.addSubview(circleView) 
      circleArray[i] = circleView 

답변

1

문제는 같은 circleView 인스턴스를 재사용 유지하는 것입니다 사용해야합니다. 배열에 추가하면 참조를 추가하는 것입니다. 그런 다음 다시 초기화하면 제거됩니다. 나는 또한 당신이 내가 증가하는 곳을 보지 못한다. 다음과 같이 시도하십시오.

var circleArray = Array<UIImageView>() 
var y : CGFloat = 0.0 
var i = 0 
circleArray.append(UIImageView(frame:CGRectMake(125, y, 75, 75))) 
var circleView = circleArray[i] 
circleView.image = UIImage(named:"circle.png") 
circleView.tag = i 
self.view.addSubview(circleView) 

y+=150 
i += 1 
+0

영리한 해결책. 정말 고맙습니다! – Roosh

0

당신은 circleArray.append(circleView)

+0

와우는 내가 그것을 잡는 데 실수를 저질렀다고 믿을 수 없습니다! – Roosh

+0

올바른 구문으로도 동일한 선택적 오류가 발생하는 것으로 보입니다. 이견있는 사람? – Roosh

관련 문제