如何在 UIActionSheet 中的文本旁边插入图像?

How can I insert images next to text inside a UIActionSheet?

我试图在 Xamarin.ios 应用程序中创建一个 UIActionSheet,其中每一行都有一个图像和文本。有什么办法可以做到吗?

我在这个 link 中遵循了 Alanc Liu 提供的示例: For "actionSheetAlert", what's after (action) =>.

不过,这只是文本。如何将字符串替换为图片+字符串的组合?

附上截图以阐明要求...需要添加自定义图像来代替所有这些笑脸。

谢谢。

这对于股票 UIAlertController/UIAlertAction 是不可能的。您需要创建自定义视图控制器才能获得此功能。

我已经使用 Alert and Picker from dillidon 进行基本实现,该库包含很多选项供您选择。对于库不支持的更多自定义,我倾向于创建自己的控制器。

可以(不使用外部库)通过覆盖警报操作的属性之一。我通过以下代码实现了相同的目的:

      let actionsheet = UIAlertController.init(title: "Select party", message: nil, preferredStyle: .actionSheet)
        let actn1 = UIAlertAction.init(title: "Party 1", style: .default, handler: { (act) in
            //
        })
        actn1.setValue(UIImage(named: "String"), forKey: "image")
        actionsheet.addAction(actn1)
      self.present(actionsheet, animated: true, completion: nil)

给你。 希望对你有帮助。

UIActionSheet 不是为子类设计的,您也不应该将视图添加到它的层次结构中。如果您需要呈现比 UIActionSheet API 提供的自定义更多的 sheet,您可以创建自己的并使用 present(_:animated:completion:).

以模态方式呈现它

重要提示:UIActionSheet 在 iOS8 中已弃用。(请注意,UIActionSheetDelegate 也已弃用。)Source