DataHelper というクラスで定義された次の関数によって返される値でラベルを設定するときに EXC_BAD_ACCESS を取得します (すべてのデータベース処理はここで行われます)。
+(NSString *)getCurrentBalanceAndType:(NSString *)account
{
sqlite3_stmt *statement=NULL;
float bal=0;
NSString *type=NULL, *balance_type=NULL;
//String decimalFormat="%.2f";
statement = [DataHelper getDetailsFromAccountBal:account:[DataHelper currentMonth]];
if (sqlite3_step(statement) == SQLITE_ROW)
{
bal = sqlite3_column_double(statement,2);
type = [[NSString alloc] initWithUTF8String:(const char *) sqlite3_column_text(statement, 0)];
}
sqlite3_finalize(statement);
NSString *stringBal=[NSString stringWithFormat:@"%.2f", bal];
type=[[type uppercaseString] stringByAppendingString:@"r"];
balance_type=[[stringBal stringByAppendingString:@" "]stringByAppendingString:type];
[type release];
return balance_type;
}
これは、viewDidLoad でラベルを設定する方法です。
lbCreditCurrBal.text=[DataHelper getCurrentBalanceAndType:@"Some Text"];
助けてください。