내 아이오스 개발을 시작하고 처음에는 측정 변환기를 만드는 것이 재미있을 것이라고 생각했습니다.테이블 셀에서 이벤트 가져 오기
나는 storyviews를 사용하여 segues가있는 테이블보기, 다른 치수에 해당하는 텍스트 필드와 레이블이있는 사용자 정의 셀을 만들었지 만 지금은 붙어 있고 자습서 나 책에서 대답을 찾을 수 없습니다.
각 셀에는 주어진 치수 (즉, 미터, 센티미터 등)에 해당하는 텍스트 필드가 있습니다. 주어진 행의 텍스트 필드가 편집을 마쳤다는 이벤트를 얻고 계산 후에 다른 텍스트 필드를 변경하는 방법? 사용자가있는 tableView를 제시의 ViewController로의 UITextField의 대리인 설정해야
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UILabel *label;
UITextField *field;
static NSString *CellIdentifier = @"DimensionCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
label = (UILabel *)[cell viewWithTag:1];
field = (UITextField *)[cell viewWithTag:2];
field.delegate = self;
NSString *DimensionLabel = [self.dimension objectAtIndex:indexPath.row];
label.text = DimensionLabel;
return cell;
}
텍스트 필드가 변경 될 때마다 모든 텍스트 필드를 변경해야하므로 모든 텍스트 필드를 변경하고 텍스트 필드가 편집을 마칠 때마다 직접 참조하는 것이 가장 쉽습니다 (또는 원하는 경우 변경할 수 있습니다). 실시간으로 일어난다. – lnafziger
@Inafziger thats 내가 콘센트를 사용하고 싶지 않은 이유. 텍스트 필드가 자동으로 생성되기를 원하기 때문에 배열에 새로운 차원을 추가하면됩니다. 또한 다른 측정 값에 대해 동일한 뷰를 사용하는 데 도움이 될 것입니다. – mjanisz1
어쨌든 데이터 소스를 모두 업데이트해야하므로 데이터 소스를 업데이트하고 테이블 뷰에서 reloadData를 호출하는 것이 가장 쉽습니다. 다른 옵션은 모든 테이블 뷰 visibleCell을 반복하고 원래 코드의 cellForRowAtIndexPath에서와 같이 레이블에 대한 참조를 가져 오는 것입니다. – lnafziger