2011-02-17 11 views
0

하나님 저녁 : - Dtableview 셀에서 데이터를 가져 오는 중입니까?

내가 핵심 테이블 데이터를 사용하여 "Todo"와 같은 셀을 게시합니다. "5 마일 실행"및 자세한 텍스트를 @ "포인트 값 @"으로 설정합니다. , X는 x가 슬라이더에 의해 설정된 숫자이고, 같은 시간 u는 Todo의 이름을 설정합니다.

셀에 단추를 넣고 추가라고 말하면 자세한 텍스트의 번호를 핵심 데이터 모델의 "totalPoints"특성에 추가 할 수 있기를 원합니다.

엔티티에 대한 fetchRequest를 만들 수 있지만 그 번호를 얻는 방법과 "pointValue"가 NSNumber 객체에 저장 될 때 간단한 계산을 사용하는 방법은 무엇입니까?

업데이트 :

유 같은 그 indexPath 얻을 수 u는 당신의 셀에 버튼을 추가하는 경우가

을 D는 고정 :

- (IBAction)buttonTapped:(id)sender { 


if (![sender isKindOfClass: [UIButton class]]) return; 

UITableViewCell *cell = (UITableViewCell *)[sender superview]; 
if (![cell isKindOfClass: [UITableViewCell class]]) return; 

NSIndexPath *indexPath = [self.tableView indexPathForCell: cell]; 

// do something with indexPath.row and/or indexPath.section. 

이 내 응용 프로그램을 고정을하고, 당신의 도움에 대한

감사 베타 테스트 P는 지금의

SKOV

답변

0

예제 코드에는 몇 가지 문제점이 있습니다.

NSNumber *a = toDo.pointsValue; 

(즉 toDo.pointsValue 가정 것은의 NSNumber입니다) : 먼저 값을 얻는 경우 A, B, 방금이 작업을 수행 할 수 있습니다 전자.

둘째, if 문에서 포인터가 가리키는 개체의 값이 아니라 포인터의 값을 비교하고 있습니다.

이 코드는 당신이 원하는 결과를해야한다 (나는 당신이 어떤 방법으로 할 일을 초기화 가정) :

ToDo *toDo; 
CGFloat x = [toDo.pointsValue floatValue] + [toDo.totalPoint floatValue]; 
//Note: it is better to use CGFloat rather than plain float 
CGFloat y = [toDo.goodiesPoints floatValue]; 
if (x >= y) 
{ 
    [self performSelector:@selector(winView) 
       withObject:nil 
       afterDelay:0.5]; 
} 

난 당신이 내가 얻을 수 있는지 확인 어떻게 "말할 때 당신이 뜻을 정확히 모르겠습니다 그 번호 ". "그 번호"는 무엇입니까?

+0

"해당 번호"는 에칭 셀에 설정된 세부 텍스트이므로 5 마일 실행에 대한 세부 텍스트가 10이고 설정보기에서 toDo.goodiesPoints가 30으로 설정되었다고 가정하면 평면이 필요합니다 해당 셀에있는 winView 열려면 코드를 세 번 추가 할 코드 U 설정을 잘 작동하지만, 뭔가 잃어버린 것 같다, dos points totalPoint 추가하지 않으므로 goodiesPoints les 및 다음 pointValue 설정된 경우에만 작동합니다. 세포에서. – Skovie

관련 문제