我創建了一個自定義表格視圖單元格。dequeueReusableCellWithIdentifier:總是針對可見單元格返回'nil'
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
UITextField *editField=nil;
...
NSString *CellIdentifier = [NSString stringWithFormat:@"cell:%d",indexPath.row];
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] autorelease];
// Configure the cell...
switch (indexPath.row) {
case 0:
{
cell.textLabel.text=DEVNAME_TEXT_NDVC;
cell.textLabel.font=[UIFont boldSystemFontOfSize:LABEL_TEXTSIZE_NDVC];
editField=[[UITextField alloc] initWithFrame:CGRectMake(158, 9, cell.frame.size.width-183, cell.frame.size.height-15) ];
editField.tag=DEVNAME_TAG_NDVC;
...
[cell.contentView addSubview:editField ];
[editField release];
}
break;
該表只有5行,並且它們每個都始終在屏幕上。 後來,當我嘗試訪問單元格時,我總是得到'零'
下面的代碼應該將光標放在適當的UITextField當用戶點擊單元格,但它不會,因爲'單元格'總是= 0。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
NSString *CellIdentifier = [NSString stringWithFormat:@"cell:%d",indexPath.row];
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
UITextField *tf=nil;
[tableView deselectRowAtIndexPath: indexPath animated: YES];
[activeField resignFirstResponder]; // Last used UITextField
switch (indexPath.row) {
case 0: //
tf=(UITextField*)[cell.contentView viewWithTag:DEVNAME_TAG_NDVC];
[tf becomeFirstResponder]; // Show the keyboard
//[tf performSelector:@selector(becomeFirstResponder) withObject:nil afterDelay:0.7];
break;
請問,你能提出什麼問題嗎?爲什麼[tableView dequeueReusableCellWithIdentifier:CellIdentifier]
始終= 0, 但所有表格單元始終可見。
謝謝。
我也有一個問題:的tableView dequeueReusableCellWithIdentifier:CellIdentifier]上始終= 0一些按鈕,點擊 – Shamsiddin