``UIcollectionVieに
contextMenu`を設定しているのですが、
UIActionを条件式によってグレーアウトすることは、UIActionのattributesに.disabledを指定することで実現できるのですが、
グレーアウトさせない方法がわかりません。.enabledのように指定したいのですが可能でしょうか?
もしくは条件式等の記述方法を変えれば実現できるでしょうか?
swift
1func makeAction(_ indexPath: IndexPath) -> UIMenu { 2 3 // ここで.disabledの反対の状態を指定することが可能でしょうか? 4 let action1_attributes: UIMenuElement.Attributes = indexPath.row.isEven ? .disabled : .enabled 5 let action2_attributes: UIMenuElement.Attributes = !indexPath.row.isEven ? .disabled : .enabled 6 7 // editTagAction 8 let action1 = UIAction(title: "action1", image: IImage(named: "action1"), attributes: action1_attributes) 9 { _ in 10 print("action1") 11 } 12 13 let action2 = UIAction(title: "action2", image: UIImage(named: "action2"), attributes: action2_attributes) 14 { _ in 15 print("action2") 16 } 17 return UIMenu(title: "", image: nil, children: [action1, action2]) 18} 19 20extension Int { 21 var isEven: Bool { 22 return self % 2 == 0 23 } 24}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。