4
これを複数の選択をするためにどのように適応させることができますか?そしてiPhone:カスタムセルのtabelviewで複数の選択を許可する方法は?
- (id)initWithCellIdentifier:(NSString *)cellID {
if ((self = [super initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellID])) {
UITableViewCell *cell=self;
UIImage *cry = [UIImage APP_CRYSTAL_SELECT];
self.leftImage = [[[UIImageView alloc] initWithImage:cry] autorelease] ;
[self.contentView addSubview:leftImage];
}
選択されたものを取得し、選択した方法は次のとおりです。
- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
[super setSelected:selected animated:animated];
if(selected)
{
NSArray *subviews=[self.contentView subviews];
for(UIView* view in subviews){
if([view isEqual:self.leftImage]){
[self.leftImage setHighlightedImage:[UIImage APP_CRYSTAL_SELECTED]];
}
}
}
else
{
NSArray *subviews=[self.contentView subviews];
for(UIView* view in subviews){
if([view isEqual:self.leftImage]){
[self.leftImage setHighlightedImage:[UIImage APP_CRYSTAL_SELECT]];
}
}
}
}
CustomcellサブクラスのするsetSelected方法は、テーブルビューでselectedIndexPaths前に呼び出されますが、私はテーブルビュークラスの機能を実装したいですか? – Spring
それは問題ではありません。 didSelectRowAtIndexPath(テーブル・ビュー・クラスにあります)内の任意のものを実装してください。選択/選択解除のためにUIを更新するためにsetSelectedを保持することができます。 – Akshay
しかし、それは後で呼び出されるので、UIは既に更新されていますし、didSelectRowAtIndexPathで行うことはあまりありません。 – Spring