【问题标题】:iPhone/iPad question how to show dialog + how to make screenshot of screen?iPhone / iPad问题如何显示对话框+如何制作屏幕截图?
【发布时间】:2011-06-11 10:08:00
【问题描述】:

我需要在我的 iPhone/iPad 应用程序中显示对话框(有点像在照片中,左下方按钮打开对话框,其中包含“电子邮件照片”、“彩信”、“分配给联系人”、“使用壁纸”等选项,等等......) - 有可能吗?这个视图元素是怎么调用的?

第二个问题 - 有点相关。其中一个选项是“电子邮件当前屏幕”,它需要制作当前屏幕的屏幕截图(显然没有此对话框:-)并在电子邮件中打开以发送电子邮件。请建议我如何制作屏幕截图?我强制它附加到电子邮件?谢谢!

【问题讨论】:

    标签: iphone ipad ios dialog screenshot


    【解决方案1】:

    对于您的第一个问题:它称为操作表,由 UIActionSheet 类表示。在 iPhone 上,您可以使用 -showInView: 方法在视图中显示它;在 iPad 上,您可以使用 -showFromBarButtonItem:animated: 方法从工具栏按钮显示它,或者使用 -showFromRect:inView:animated: 从视图中的任意矩形显示它。请注意,由于这是两个独立的代码路径,因此您需要使用 UI_USER_INTERFACE_IDIOM() 宏(Google 搜索)来确定您的代码在哪种类型的设备上运行。

    【讨论】:

      【解决方案2】:

      【讨论】:

        【解决方案3】:

        这是答案,在 MonoTouch (.NET) 中:

            public class ScreenShot
        {
            public static UIImage TakeScreenShot (UIView view)
            {
                RectangleF canvasRect = view.Bounds;
                UIGraphics.BeginImageContext (canvasRect.Size);
        
                CGContext ctx = UIGraphics.GetCurrentContext ();
                ctx.FillRect (canvasRect);
                view.Layer.RenderInContext (ctx);
        
                UIImage newImage = UIGraphics.GetImageFromCurrentImageContext ();
        
                UIGraphics.EndImageContext ();
        
                return newImage;
            }
        }
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2018-01-02
          • 2012-02-13
          • 2011-01-09
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多