I have this UISwipeActionsConfiguration for iOS 11 this code looks Like
public override UISwipeActionsConfiguration GetLeadingSwipeActionsConfiguration(UITableView tableView, NSIndexPath indexPath)
{
var definitionAction = ContextualDefinitionAction(indexPath.Row);
var flagAction = ContextualFlagAction(indexPath.Row);
var leadingSwipe = UISwipeActionsConfiguration.FromActions(new UIContextualAction[] { flagAction, definitionAction });
leadingSwipe.PerformsFirstActionWithFullSwipe = false;
return leadingSwipe;
}
public UIContextualAction ContextualDefinitionAction(int row)
{
string word = words[row];
var action = UIContextualAction.FromContextualActionStyle(UIContextualActionStyle.Normal,
"Definition",
(ReadLaterAction, view, success) => {
var def = new UIReferenceLibraryViewController(word);
var alertController = UIAlertController.Create("No Dictionary Installed", "To install a Dictionary, Select Definition again, click `Manage` on the next screen and select a dictionary to download", UIAlertControllerStyle.Alert);
alertController.AddAction(UIAlertAction.Create("OK", UIAlertActionStyle.Default, null));
if (UIReferenceLibraryViewController.DictionaryHasDefinitionForTerm(word) || hasViewedAlert == true){
PresentViewController(def, true, null);
success(true);
}else{
PresentViewController(alertController, true, null);
hasViewedAlert = true;
success(false);
}
});
action.BackgroundColor = UIColor.Orange;
return action;
}
public UIContextualAction ContextualFlagAction(int row)
{
var action = UIContextualAction.FromContextualActionStyle(UIContextualActionStyle.Normal,
"Flag",
(FlagAction, view, success) => {
var alertController = UIAlertController.Create($"Report {words[row]}?", "", UIAlertControllerStyle.Alert);
alertController.AddAction(UIAlertAction.Create("Cancel", UIAlertActionStyle.Cancel, null));
alertController.AddAction(UIAlertAction.Create("Yes", UIAlertActionStyle.Destructive, null));
PresentViewController(alertController, true, null);
success(true);
});
action.Image = UIImage.FromFile("feedback.png");
action.BackgroundColor = UIColor.Blue;
return action;
}
Exist a Way to modify the color of the text and the image? because I don't have a idea, I try creating a ImageView over the cell when the user swipe but the image is in the back of the view of the swipe. Thanks for the help and I hope you can help me with this.