我有一個問題,我的數組未設置爲我想要的部分。 在下的代碼:部分中的數組問題(TableView)
- (NSInteger的)的tableView:(UITableView的*)的tableView numberOfRowsInSection:(NSInteger的)部分
只有所述第二陣列被設置成部分,但它重複在其自其他2個部分,而不是其他部分的其他部分。我有 - 如果我把一個數組(比方說第三個)多於5行像第一個和第二個數組,它給我錯誤:終止應用程序由於未捕獲的異常'NSRangeException' ,原因: '* - [__ NSArrayM objectAtIndex:]:指數5超出範圍[0 .. 4]'
我在做什麼錯? 感謝您的幫助!
代碼:
(該sectionArray和dataArray中都在我的.h文件中的NSMutableArray變量)
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
sectionArray = [NSArray arrayWithObjects:@"section1", @"section2", @"section3", nil];
return [sectionArray count];
}
- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection: (NSInteger)section
{
NSString *sectionHeader = nil;
if(section == 0)
{
sectionHeader = @"אתרים חשובים";
}
if(section == 1)
{
sectionHeader = @"מתעניינים";
}
if(section == 2)
{
sectionHeader = @"טלפונים שימושיים";
}
return sectionHeader;
}
// Returns the number of rows in a given section.
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
if(section == 0)
{
dataArray = [[NSMutableArray alloc] initWithObjects:
@"אתר אורנים",
@"כניסה למערכת ניהול שיעורים",
@"אלפון אנשי סגל",
@"אתר אגודת הסטודנטים",
@"מפת אורנים", nil];
}
if(section == 1)
{
dataArray = [[NSMutableArray alloc] initWithObjects:
@"תנאי קבלה",
@"שאלות נפוצות",
@"הרשמה אונליין",
@"יצירת קשר עם יועץ לימודים",
@"תחבורה ציבורית", nil];
}
if(section == 2)
{
dataArray = [[NSMutableArray alloc] initWithObjects:
@"מרכז המידע וההרשמה",
@"שכר לימוד",
@"שכר לימוד (מספר נוסף)",
@"קופת אורנים",
@"מרכז ההשאלה בספריה", nil];
/*
@"תמיכת הספריה",
@"מעונות",
@"מכלול",
@"רכז בטחון",
@"שער",
@"אגודת הסטודנטים",
@"רדיו אורנים",
@"פקולטות:",
@"מנהל תלמידים",
@"מנהל תלמידים (מספר נוסף)", nil];
*/
}
return [dataArray count];
}
// Returns the cell for a given indexPath.
- (UITableViewCell *)tableView:(UITableView *)aTableView cellForRowAtIndexPath: (NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [aTableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
{
// Create the cell.
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
cell.textLabel.text = [dataArray objectAtIndex:indexPath.row];
cell.textLabel.textAlignment = UITextAlignmentRight;
float Rvalue = (1.0 * 000)/255;
float Gvalue = (1.0 * 139)/255;
float Bvalue = (1.0 * 69)/255;
cell.textLabel.textColor = [UIColor colorWithRed:Rvalue green:Gvalue blue:Bvalue alpha:1.0f];
UIImage *cellImage = [UIImage imageNamed:@"oranimCellIco.png"];
cell.imageView.image = cellImage;
return cell;
}
正在加載中,請稍候...正在加載... לגביהקוד,סידרתיאותובדיוקכמושרשמתועםאותםשמותמשתניםאבלזהנותןלישתישגיאותבמקומותהבאים: - (NSInteger的)的tableView:(UITableView的*)的tableView numberOfRowsInSection:(NSInteger的)部分{ 的NSArray * dataArray中= [self.data objectAtIndex:indexPath.section]; return [dataArray count]; 使用說明: 使用未聲明的標識符'indexpath' –
已有保密聲明使用條款隱私聲明 המוןהמוןתולהעלהעזרה! –
關於你的問題,這是我的錯誤...該代碼是由我在瀏覽器中寫道和XCode中沒有被檢查。 應該有: - (NSInteger的)的tableView:(UITableView的*)的tableView numberOfRowsInSection:(NSInteger的)部分{ 的NSArray * dataArray中= [self.data objectAtIndex:節]。 返回[dataArray中計數]; } – Ariel