UITableViewCell
にカスタムボタンを追加して、インターフェイスビルダとカスタムセルを使用せずにそのボタンでセルを削除するにはどうすればよいですか?UITableViewでカスタムセルを使わずにボタンを追加する方法は?
2
A
答えて
8
あなたは本当にただのセルのcontentViewにボタンを追加し、サブクラス化なしカスタムボタンを追加したい場合は、次の
[cell.contentView addSubview:customButton];
あなたは、すべてのボタンの特性を設定することができます:フレーム、ターゲット、セレクタを、 etc ...広告はそれをセルに追加するために上記の呼び出しを使用しました。
UIButton *customButton = [UIButton buttonWithType:UIButtonTypeCustom];
customButton.frame=//whatever
[customButton setImage:anImage forState:UIControlStateNormal];
[customButton setImage:anotherImage forState:UIControlStateHighlighted];
[customButton addTarget:self action:@selector(delete) forControlEvents: UIControlEventTouchUpInside];
//yadda, yadda, .....
あなたは同様にそれをタグ付けすることができます
customButton.tag = 99999;
だから、あなたが後でそれを見つけることができます。
UIButton *abutton = (UIButton*) [cell.contentView viewWithTag:99999];
多分、セルの選択に、ボタンを追加したときに決定する必要があります
、多分編集モードで...あなたの選択したデリゲートメソッドにコードを入れてください。
1
ボタンの唯一の目的が削除を提供することである場合、には- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
というメソッドがあります。
- (BOOL)tableView:(UITableView *)tableView
canEditRowAtIndexPath:(NSIndexPath *)indexPath
{
return YES;
}
をそして実装:そうのようにそれを実装あなたのヘッダーに
MyClass : UITableViewController <UITableViewDataSource>
:
- (void)tableView:(UITableView *)tableView
commitEditingStyle:(UITableViewCellEditingStyle)editingStyle
forRowAtIndexPath:(NSIndexPath *)indexPath
{
// Database removal code goes here...
}
を聞かせて、これらのメソッドを使用するには、あなたのUITableViewController
のような何かを行うことによってUITableViewDataSource
プロトコルを実装しますviewControllerのデータソースをself
に設定することを忘れないでください。
関連する問題
- 1. UITableViewにカスタムセルをプログラムで追加する
- 2. 編集せずにUITableviewにカスタムセルを追加する
- 3. UITableViewスワイプに追加ボタンを追加
- 4. UITableViewのカスタムセルを作成する方法
- 5. UITableViewを使わずにUITableViewをリフレッシュするには
- 6. カスタムセルにカスタムビューをプログラムで追加する方法
- 7. uitableviewにタブバーを追加する方法
- 8. UITableViewからカスタムセルを削除する方法は何ですか?
- 9. iPhone - UITableViewで編集ボタンを選択したときに「追加」ボタンを追加
- 10. UITableViewの削除ボタンにイメージを追加するには?
- 11. ボタンにリストボックスを追加する方法
- 12. QLPreviewControllerにボタンを追加する方法
- 13. ボタンにメニューを追加する方法
- 14. インターフェイスビルダーを使用してUITableViewセクションを追加する方法
- 15. UITableViewでレコードを追加、更新、削除する方法は?
- 16. iphone sdk uitableviewセルイメージを動的に追加する方法は?
- 17. jqgridのアクションボタンの前に追加ボタンを追加する方法
- 18. 余分なスペースを使わずに、プログラムでImageViewをLinearLayoutに追加する方法は?
- 19. ボタンを追加する方法
- 20. Android、ボタンにアイコン*と*テキストをプログラムで追加する方法は?
- 21. ストーリーボードを使用せずにスタティックセルをUITableViewで使用する方法は?
- 22. uitableviewにナビゲーションバーを追加するには
- 23. カスタムセルのinitWithStyle:メソッドでUITableViewの幅 - 高さを取得する方法は?
- 24. UITableViewのナビゲーションバーに上/下ボタンを追加する
- 25. エクステンションを使わずにopencartプロジェクトにGoogle AdSenseコードを追加するには?
- 26. QtプロジェクトでCDBSを使わずにCFLAGSに-O2を追加するDebian化された方法
- 27. UISegmentedControlとUITableViewの組み合わせにPizzazを追加する
- 28. UITableViewのセクションごとに異なるカスタムセルを使用する
- 29. uitableviewカスタムセルの更新
- 30. UITableViewセルでラベルとイメージビューの数を追加する方法
ボタンについてカスタムボタンをクリックすると、このようなことをすべてやりたいのですが、インターフェイスビルダーとカスタムセルを使用せずにボタンを作成する必要があります。 –
canEditRowAtIndexPathメソッドは、編集モードのときに自動的に各行に削除ボタンを追加します。それを試してください: – tmadsen
しかし、私はカスタムボタンでそれをやりたいです。 –