2016-12-12 4 views
0

서비스의 응답으로 사전에 배열을 가져옵니다. 시작 6 개 요소가 button.how의 제목으로 표시되기를 원합니다. 끝난? 사전 얻을 은 다음과 같습니다사전 배열에서 얻은 값을 태그를 사용하지 않고 버튼의 현재 제목으로 설정하는 방법

( 
{ 
      Id = 43; 
      Name = “ABX "; 
     }, 
      { 
      Id = 44; 
      Name = “BLAX”; 
     }, 
      { 
      Id = 45; 
      Name = “KAR "; 
     }, 
      { 
      Id = 46; 
      Name = “JOHN”; 
     }, 
      { 
      Id = 19; 
      Name = “LAMNO "; 
     }, 
      { 
      Id = 47; 
      Name = "Togo "; 
     }, 
      { 
      Id = 48; 
      Name = “XERIAN”; 
     }, 
      { 
      Id = 49; 
      Name = “LAHG”; 
     }, 
      { 
      Id = 50; 
      Name = “FHJJK”; 
     }, 
      { 
      Id = 51; 
      Name = “ZAMBI”; 
     }, 
      { 
      Id = 52; 
      Name = “ISAW "; 
     } 
    ) 

내가의 ViewController에 여섯 개 버튼이 나는이 작업을 수행하는 button.Please 도움의 현재의 제목으로 @ "이름"에 대한 6 개 주요 값을 시작 설정할.

+1

이것은 json입니까? json에서 값을 추출 하시겠습니까? 또는 이것은 서버 사전이 포함 된 배열입니까? 그리고 당신의 문제는 과연 무엇입니까? 버튼이나 값을 추출하는 데 도움이 필요하십니까? – Mohammadalijf

+0

나는 지금 질문을 편집했다. 나는 버튼의 제목을 설정하는데 도움을 원한다. 나는 실제로 viewcontroller에 6 개의 버튼을 가지고 있는데, 그것들의 현재 제목으로 키 "name"에 대한 응답으로 얻은 6 개의 값을 사용하기를 원한다. 버튼. – TestShroff

+0

"콘센트 콜렉션 참조"를 사용하여 배열에 단추 넣기 – Paulw11

답변

0

그런 다음이 변수에 스토리 보드에서 버튼에 할당하여 버튼

@IBOutlet var buttonCollection: [UIButton]! 

에 대한 코드에 따라 수집 콘센트를 만들 수 있습니다. 배열에서 다음 루프 액세스 각 그것의 인덱스 사전 버튼 제목 각각의 이름 속성을 지정,이

for (index, infoDic) in yourArray.enumerated() { 
    let button = buttonCollection[index] 
    if let title = infoDic["Name"] as? String { 
     button.setTitle(title, for: .normal) 
    } 

} 

참고과 같습니다이 샘플에서 내가 yourArray의 개수가 정확히 동일하다고 가정 버튼의 수

+0

u는 내가 더 신선하고 객관적인 C에 같은 코드를 써주시겠습니까? 나는 신속한 것에 대해 전혀 몰라서 현재 목표 C를 시작했습니다. – TestShroff