こんにちは。Tableview内でユーザーがuitableviewcellをスワイプしたときに削除ボタンに表示されるテキストを変更しようとしています。
このtableviewデリゲートを使用するように言っている別の質問スレッドで例を見てきました
- (NSString *)tableView:(UITableView *)tableView titleForDeleteConfirmationButtonForRowAtIndexPath:(NSIndexPath *)indexPath
私の質問は、この方法の使用方法です。
UITableView
を管理するコントローラーで、UITableviewDelegate
を実装し、titleForDeleteConfirmationButtonForRowAtIndexPath
メソッド内でメソッドに必要なタイトルを返す必要があります。
例:
@interface CategoryAddViewController : UITableViewController
@end
@implementation CategoryAddViewController
// ...
-(NSString *)tableView:(UITableView *)tableView titleForDeleteConfirmationButtonForRowAtIndexPath:(NSIndexPath *)indexPath {
return @"Please don't delete me!";
}
@end
そのようなものであなたを離れる:
Swiftそれは等しい、メソッドのシグネチャが異なるだけです!
func tableView(tableView: UITableView, titleForDeleteConfirmationButtonForRowAtIndexPath indexPath: NSIndexPath) -> String? {
return "Erase"
}
削除する代わりに、表示する文字列を返すだけです。すべての行に「消去」を表示したい場合、上記の関数には以下が含まれている必要があります。
return @"Erase";
読み取り [〜#〜] this [〜#〜]
また、View ControllerがまだUITableViewControllerでない場合に備えて、.hファイルにUITableViewDelegateを追加します。それは次のいずれかです。
@interface SomeView : UIViewController <UITableViewDelegate>
OR
@interface SomeView : UITableViewController