2011-09-15 20 views
1

たとえば、強調表示された状態のタイトルを編集したいと思っていましたが、これは可能ですか?UITableViewCellAccessoryDe​​tailDisclosureButtonプロパティを編集することはできますか?

私はそれがカスタムUIButtonsで可能であることを知っていますが、UITableViewCellAccessoryDetailDisclosureButtonのプロパティを編集することは可能ですか?

カスタムボタンを作成しても、依然としてUITableViewデリゲートメソッドを呼び出せますか? もしそうなら、カスタムボタンセルからindexPathをどうやって渡すのですか?

乾杯!

+0

をindexPath.rowとして上書きすることを考慮する必要があります – Srinivas

答えて

1

することができますがカスタムUIButtonを作成し、セルのaccessoryViewプロパティに割り当てます。 sthを実行したい場合。あなたがサブクラス化することを考慮してくださいUITableViewCellをサブクラス化し、setSelected:animated:

1

お客様のカスタムbutton.tag=indexPath.rowとアクセス行番号を指定します。ボタンタグから

例: -

UIButton *deleteButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
    [deleteButton setFrame:CGRectMake(285, 5, 30, 30)]; 
    deleteButton.contentMode = UIViewContentModeScaleAspectFill;  
    UIImage *newImage12 = [UIImage imageNamed:@"x.png"]; 
    deleteButton.tag = indexPath.row; 
    [deleteButton setBackgroundImage:newImage12 forState:UIControlStateNormal]; 
    [deleteButton setBackgroundImage:newImage12 forState:UIControlStateHighlighted]; 
    [deleteButton addTarget:self action:@selector(deleteRemindersMethod:) forControlEvents:UIControlEventTouchUpInside]; 
    [cell.contentView addSubview:deleteButton]; 

-(void)deleteRemindersMethod:(UIButton *)sender 
{ 
    int rowNO=sender.tag; 
} 
1

私の知る限り、あなたは、アクセサリビューとして、独自のボタンを設定する必要があります。そこindexPathを取得する方法はいくつかあり、私の好適なタッチが必要な実際のindexPath取得するlocationInView:、その後indexPathForRowAtPoint:を使用して座標を取得することです:

CGPoint location = [sender locationInView:self.tableView]; 
NSIndexPath *indexPath = [self.tableView indexPathForRowAtPoint:location]; 
UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:indexPath]; 

hereから取られたコード)

関連する問題