Вопрос по ios5, ios – Изменение изображения в выбранном состоянии ячейки UITablView

2

Я создал пользовательскую ячейку и добавил одну метку и изображение, у меня в таблице 4 строки, каждая строка имеет свое изображение, и каждая строка открывает свой контроллер представления, так что теперь мне нужно щелкнуть мышью по определенной строке. хочу, чтобы изображение изменилось, чтобы я сделал это, но это не работает, поэтому, пожалуйста, помогите мне.

if(indexPath.row == 0)
{

     if(cell.selected == true)
     {
           UIImage *cellImage = [UIImage imageNamed:@"abc.png"];        
           cell.icon.image    = cellImage;
      }
      else
      {
          UIImage *cellImage = [UIImage imageNamed:@"abc.png"];        
           cell.icon.image    = cellImage;
      }
}

С уважением Ранджит

Ваш Ответ

3   ответа
0

В блоке реализации ...

@implementation ABC
{
    NSMutableArray  *imageArray;
    NSMutableArray  *imageSelectedArray;
}

Сделайте это в методе ниже

(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath

{
    [cell.imageView setImage:[UIImage imageNamed:[imageArray objectAtIndex:indexPath.row]]];
    [cell.imageView setHighlightedImage:[UIImage imageNamed:[imageSelectedArray objectAtIndex:indexPath.row]]];
}
5

tableView:willDisplayCell:forRowAtIndexPath: метод:

cell.imageView.image = [UIImage imageNamed:@"abc.png"];
cell.imageView.highlightedImage = [UIImage imageNamed:@"abc.png"];

Это будет работать для вашегоicon собственность тоже, если этоUIImageView

Error: User Rate Limit Exceeded Ranjit
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded Ranjit
Error: User Rate Limit Exceeded Ranjit
2

синтезируйте его.

и метод делегата в didSelectRowAtIndexPath UITabeView получает доступ к свойству и изменяет изображение примерно так:

yourCell.yourImageView.image=[UIImage imageNamed:@"yourImage"]

Для примера я даю свой код: -

#import <UIKit/UIKit.h>


@interface CustomizedCellProductDetails : UITableViewCell {

    UILabel *sNO;
    UILabel *abcWine;
    UILabel *redWine;
    UILabel *two;
    UILabel *hundred;
    UILabel *fourTwo;
    UILabel *twoOne;
    UIImageView *imgView;

    UILabel *itemNo;
    UILabel *itemName;
    UILabel *itemDesc;
    UILabel *department;
    UILabel *qtyAvailable;

    UIButton *check;

}

@property (nonatomic , retain) UILabel *sNO;
@property (nonatomic , retain) UILabel *abcWine;
@property (nonatomic , retain) UILabel *redWine;
@property (nonatomic , retain) UILabel *two;
@property (nonatomic , retain) UILabel *hundred;
@property (nonatomic , retain) UILabel *fourTwo;
@property (nonatomic , retain) UILabel *twoOne;
@property (nonatomic , retain) UIImageView *imgView;

@property (nonatomic , retain) UILabel *itemNo;
@property (nonatomic , retain) UILabel *itemName;
@property (nonatomic , retain) UILabel *itemDesc;
@property (nonatomic , retain) UILabel *department;
@property (nonatomic , retain) UILabel *qtyAvailable;
@property (nonatomic , retain) UIButton *check;

-(void) clicked;
@end

.m файл синтезирует его: -

#import "CustomizedCellProductDetails.h"


@implementation CustomizedCellProductDetails
@synthesize sNO,abcWine,redWine,two,hundred,fourTwo,twoOne,imgView,itemNo,itemName,itemDesc,department,qtyAvailable,check;

в табличном представлении делегат: -

#pragma mark -
#pragma mark Table view delegate

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    // Navigation logic may go here. Create and push another view controller.
    /*
    <#DetailViewController#> *detailViewController = [[<#DetailViewController#> alloc] initWithNibName:@"<#Nib name#>" bundle:nil];
    // ...
    // Pass the selected object to the new view controller.
    [self.navigationController pushViewController:detailViewController animated:YES];
    [detailViewController release];
    */
CustomizedCellProductDetails * cell = (CustomizedCellProductDetails )[tableView cellForRowAtIndexPath:indexPath]; 
[cell.imgView setImage:[UIImage imageNamed:@"wine.png"]];

    }
Error: User Rate Limit Exceeded Ranjit
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded Ranjit
Error: User Rate Limit Exceeded Ranjit
Error: User Rate Limit Exceeded Ranjit

Похожие вопросы