2013-11-22 2 views
0

TextField의 배경색에 따라 피커 뷰의 색을 변경하려면 어떻게해야합니까? 예를 들어, 두 개의 텍스트 필드가 있습니다. 하나는 빨간색이고 다른 하나는 파란색입니다. 빨간색을 클릭하면 빨간색 배경도 빨간색으로 바뀝니다. 파란색을 클릭하면 선택기 배경도 파란색으로 바뀝니 까? 이 코드를 텍스트 필드에 사용하여 선택기보기를 표시합니다.피커 뷰의 배경색 변경

int tag = [(UITextField*)sender tag]; 
self.myPicker.hidden = NO; 
selectedTable = tag; 
[sender resignFirstResponder]; 
float yy = 10; 
switch (tag) { 
    case 0: yy = self.txtTgfeet.frame.origin.y + self.myPicker.frame.size.height; 
     break; 
    case 1: yy = self.txtTginches.frame.origin.y + self.myPicker.frame.size.height; 
     break; 
    case 2: yy = self.txtTgfraction.frame.origin.y + self.myPicker.frame.size.height; 
     break; 
    case 3: yy = self.txtBgfeet.frame.origin.y - self.myPicker.frame.size.height; 
     break; 
    case 4: yy = self.txtBginches.frame.origin.y - self.myPicker.frame.size.height; 
     break; 
    case 5: yy = self.txtBgfraction.frame.origin.y - self.myPicker.frame.size.height; 
     break; 
    case 6: yy = self.txtGravity.frame.origin.y - self.myPicker.frame.size.height; 
     break; 
    case 7: yy = self.txtBsw.frame.origin.y - self.myPicker.frame.size.height; 
     break; 
    case 8: yy = self.txtTemp.frame.origin.y - self.myPicker.frame.size.height; 
     break; 


    default: 
     break; 
} 

감사합니다.

답변

0

self.picker.backgroundColor = [UIColor redColor];textFieldDidBeginEditing:UITextFieldDelegate 방법으로 사용하고 태그 속성을 사용하여 색상을 변경하십시오.

if(textField.tag == 1){ 
    self.picker.backgroundColor = [UIColor redColor]; 
} 
else if(textField.tag == 2){ 
    self.picker.backgroundColor = [UIColor redColor]; 
} 
else{ 

//use default value 

}

편집 :

switch (tag) { 
    case 0: yy = self.txtTgfeet.frame.origin.y + self.myPicker.frame.size.height; 
      self.picker.backgroundColor = [UIColor redColor]; 
     break; 
    case 1: yy = self.txtTginches.frame.origin.y + self.myPicker.frame.size.height; 
      self.picker.backgroundColor = [UIColor bluecolor]; 
     break; 
    case 2: yy = self.txtTgfraction.frame.origin.y + self.myPicker.frame.size.height; 
      self.picker.backgroundColor = [UIColor greenColor]; 
     break; 
    case 3: yy = self.txtBgfeet.frame.origin.y - self.myPicker.frame.size.height; 
     break; 
    case 4: yy = self.txtBginches.frame.origin.y - self.myPicker.frame.size.height; 
     break; 
    case 5: yy = self.txtBgfraction.frame.origin.y - self.myPicker.frame.size.height; 
     break; 
    case 6: yy = self.txtGravity.frame.origin.y - self.myPicker.frame.size.height; 
     break; 
    case 7: yy = self.txtBsw.frame.origin.y - self.myPicker.frame.size.height; 
     break; 
    case 8: yy = self.txtTemp.frame.origin.y - self.myPicker.frame.size.height; 
     break; 


    default: 
     break; 
} 

u는 각각의 텍스트 필드에 다른 태그를 지정하고 태그를 확인하고 다른 색을 지정할 수 있습니다

+0

각각의 경우에 대해 서로 다른 배경 색상을 추가 할 수 있습니다. 만약 당신이 동일한 색깔을 사용하여 태그 번호를 확인하고 색상을 할당 – suhit

+0

나는 이것을 시도 : 'if (_txtfield1) { self.myPicker.backgroundColor = [UIColor redColor]; } if (_txtfield2) { self.myPicker.backgroundColor = [UIColor blueColor]; } if (_txtfield3) { self.myPicker.backgroundColor = [UIColor yellowColor]; } if (_txtfield4) { self.myPicker.backgroundColor = [UIColor blackColor]; } ' 내가 – user2818570

+0

사용 태그 속성의 색상 마지막 색상을 어떤 경우는, 작동하게 기운 다? – suhit