2016-07-27 40 views
0

Hallo, ich bin ein Neuling für iOS.Bild in der Tableview-Zelle

Ich habe eine Tabellenansicht in ViewController1 implementiert. In der Tabellenansicht zeige ich tittle, detailText und Offenlegung Indikator für die Zelle.

- (UITableViewCell *)tableView:(UITableView *)tableView 
    cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
static NSString *MyIdentifier = @"MyIdentifier"; 

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:MyIdentifier]; 

if (cell == nil) 
{ 
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 
            reuseIdentifier:MyIdentifier]; 
} 



cell.textLabel.text =[listTableArray objectAtIndex:indexPath.row]; 
cell.textLabel.textColor=[UIColor grayColor]; 
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; 

    [email protected]"4mile"; 





return cell; 
} 

Alles funktioniert gut, jetzt brauche ich ein Bild vor der Offenlegung Anzeige, wenn ich es tue mit

UIImageView *accessoryView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 20, 20)]; 
    accessoryView.image=[UIImage imageNamed:@"list.png"]; 
cell.accessoryView = accessoryView; 

Disclosure-Anzeige wird durch die image.But i zusammen mit Offenlegung Indikatoren sowohl Bild muß ersetzt werden, ohne benutzerdefinierte Zelle verwenden.

Wie kann ich es tun ...? Helfen Sie mir.

Dank

enter image description here

ähnlich dem Fälligkeitsdatum, sondern an dem Ort, der Zeit brauche ich Bild

+0

geben Sie bitte Screenshot wo Bild anzuzeigen – Birendra

+1

Das ist wirklich eine benutzerdefinierte Zelle –

+0

@Birendra hinzugefügt werden soll Screenshot – remyr3my

Antwort

0

UITableViewCell haben ein festes Layout, abhängig von der Art verwenden Sie, wenn Sie es initialisieren. Sie können dieses Layout nicht ändern, da die Zelle ihre Unteransichten so auslegt, wie sie es bevorzugen.

fügen Sie die - (void)layoutSubviews für Ihr Handy Unterklasse wie folgt aus:

- (void)layoutSubviews { 
    [super layoutSubviews]; 
    self.imageView.frame = CGRectMake(0.0f , 0.0f, 20.0f, 20.0f); 
} 

anderes dieses versuchen

UIImageView *imageView = [[UIImageView alloc] init]; 
imageView.image = [UIImage imageNamed:@"list.png"];; 
[imageView setFrame:CGRectMake(50, 5, 20, 20)]; // customize the frame 
[cell.contentView addSubview:imageView]; 
+0

@ Anbu anna Ich habe versucht, Customizing-Frame überlappt es auf den Detailtext der Zelle. – remyr3my

+0

@ Cyph3r - dann ändern Sie die x-Koordinaten und versuchen, funktioniert sicherlich –

+0

@ Anbu Ich habe versucht, X-Wert zu ändern, es funktioniert ich brauche das Bild zwischen Detail Text und Offenlegungspfeil, wenn X-Werte überkommt es versteckt. – remyr3my

0

Wenn Sie UIImageView Standard UITableViewCell Sie hinzufügen müssen Ihre imageView-contentView der Zelle möchte hinzufügen und Fügen Sie alle Unteransichten ein wie textLabel, detailTextLabel und accessoryView

UIImageView *accessoryImageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 20, 20)]; 
accessoryImageView.image=[UIImage imageNamed:@"list.png"]; 
[cell.contentView addSubview:accessoryImageView]; 

oder Unterklasse von UITableViewCell und implementieren alle Ansichten im Inneren

+0

funktioniert nicht – remyr3my

+0

Ihr Bild wird nicht angezeigt? oder crashed – iSashok

+0

Bild kommt aber versteckt Disclosure – remyr3my