monotouch在ipad中的实例应用--显示图像和文字
本节主要讲述在苹果环境中使用monodevelop开发ipad的一个实例,具体操作如下
1、新建项目 选择monotouch--ipad--Empty project 命名为iPad01
2、添加新文件,选择monotouch--ipad view,命名为showView,这样会在项目中多出来三个文件。
3、在AppDelegate.cs中添加如下代码,以在运行后,初始化运行界面为ShowView;
1 UIWindow window; 2 showViews shows; 3 4 public override bool FinishedLaunching(UIApplication app, NSDictionary options) { 5 // create a new window instance based on the screen size 6 window = new UIWindow(UIScreen.MainScreen.Bounds); 7 shows = new showViews(); 8 window.RootViewController = shows; 9 // If you have defined a view, add it here: 10 // window.AddSubview (navigationController.View); 11 12 // make the window visible 13 window.MakeKeyAndVisible(); 14 15 return true; 16 }
4、添加新类MyViewController.cs,此类继承UIViewController,重写ipad的自动旋转行为,代码如下:
using MonoTouch.UIKit;namespace ipad01 {public class MyViewController:UIViewController {public MyViewController() {}public override bool ShouldAutorotateToInterfaceOrientation(UIInterfaceOrientation toInterfaceOrientation) {return true;}} }
5、在showViews.cs中添加如下代码
1 public override void ViewDidLoad() { 2 base.ViewDidLoad(); 3 4 var text = new UITextView(); 5 text.Text = "gwtGolden Gate Bridge,\nSan Francisco"; 6 text.Font = UIFont.FromName("Helvetica", 36f); 7 text.Frame = new System.Drawing.RectangleF(200, 40, 400, 100); 8 text.AutoresizingMask = UIViewAutoresizing.FlexibleLeftMargin | UIViewAutoresizing.FlexibleTopMargin | 9 UIViewAutoresizing.FlexibleRightMargin | UIViewAutoresizing.FlexibleBottomMargin; 10 text.ScrollEnabled = false; 11 text.Editable = false; 12 UIImage image = UIImage.FromFile("GoldenGate.jpg"); 13 UIImageView imageView = new UIImageView(image); 14 var customScrollView = new UIScrollView(this.View.Bounds); 15 customScrollView.AutoresizingMask = UIViewAutoresizing.FlexibleHeight 16 | UIViewAutoresizing.FlexibleWidth; 17 customScrollView.AddSubview(imageView); 18 19 20 customScrollView.PagingEnabled = false; // freeform scrolling 21 customScrollView.ContentSize = imageView.Frame.Size; 22 customScrollView.MaximumZoomScale = 4f; 23 customScrollView.MinimumZoomScale = 0.25f; 24 customScrollView.Bounces = false; 25 customScrollView.BouncesZoom = false; 26 customScrollView.IndicatorStyle = UIScrollViewIndicatorStyle.White; 27 customScrollView.ViewForZoomingInScrollView = delegate (UIScrollView sender) { 28 return imageView; 29 }; 30 customScrollView.ContentOffset = new System.Drawing.PointF(250, 20); 31 customScrollView.ZoomScale = 1.3f; // 32 var customViewController = new MyViewController(); 33 customViewController.Add(customScrollView); 34 customViewController.Add(text); 35 this.View.Add(customViewController.View);}
7,ok,将要使用的图像文件添入到项目,并保证其右键Build Action属性为Content。程序运行效果图如下:
转载于:https://www.cnblogs.com/flowwind/archive/2012/10/19/2731327.html
monotouch在ipad中的实例应用--显示图像和文字相关推荐
- python现有两个磁盘文件a和b_有两个磁盘文件A和B,各存放一行字母,要求把这两个文件中的信息合并(按字母顺序排列), 输出到一个新文件C中Python实例...
有两个磁盘文件A和B,各存放一行字母,要求把这两个文件中的信息合并(按字母顺序排列), 输出到一个新文件C中Python实例 题目:有两个磁盘文件A和B,各存放一行字母,要求把这两个文件中的信息合并( ...
- OpenCV将GIS数据加载到OpenCV容器中的实例(附完整代码)
OpenCV将GIS数据加载到OpenCV容器中的实例 OpenCV将GIS数据加载到OpenCV容器中的实例 OpenCV将GIS数据加载到OpenCV容器中的实例 #include "o ...
- 请举出OSI七层模型在实际应用中的实例
答案1: 请举出OSI七层模型在实际应用中的实例,就是问OSI七层模型在实际操作中的例子,比如说会话层的应用例子是打开多个浏览器窗口这种. 注:不是解释这七层模型 举例: 就用QQ聊天为例子,用户在Q ...
- Java中定义实例变量时指定初始化值顺序
定义实例变量时指定的初始值.初始化块中为实例变量指定的初始值.构造器中为实例变量指定的初始值,三者的作用完全类似,都用于对实例变量指定初始值.经过编译器处理之后,它们对应的赋值语句都被合并到构造器中. ...
- java中throws用法_java中throws实例用法详解
在程序出现异常时,会有一个抛出异常的throw出现,这里我们要跟今天所讲的throws区分开.throws的作用是声明抛出,在名称上也跟throw有所不同.下面我们就throws对策概念.语法.实例带 ...
- pythonappend用法_python中append实例用法总结
append()函数 描述:在列表ls最后(末尾)添加一个元素object 语法:ls.append(object) -> None 无返回值 例: a=[1,2,3] a.append(5) ...
- c#中overlord实例_具有Overlord的WildFly 8.1中的API管理
c#中overlord实例 昨天,我简要介绍了霸王项目家族. 今天是时候进行试驾了. API管理子项目两天前发布了1.0.0.Alpha1,并根据18个月的路线图介绍了第一组功能. APIMan到底是 ...
- 在python中、实例变量在类的内部通过_[宜配屋]听图阁
1.类变量.实例变量概念 类变量: 类变量就是定义在类中,但是在函数体之外的变量.通常不使用self.变量名赋值的变量.类变量通常不作为类的实例变量的,类变量对于所有实例化的对象中是公用的. 实例变量 ...
- 支持在iPad中播放的HTML5视频网站推荐
YouTube是最早支持HTML5视频的网站,随着iPad等平板电脑的流行,越来越多的视频网站开始支持HTML5视频播放.下面就向大家分享一些国内的HTML5视频网站,是根据网上信息整理而成,欢迎大家 ...
最新文章
- react中使用构建缓存_如何在React中构建热图
- Thymeleaf 中js 使用等报错问题
- 人工智能之语音识别技术(三)
- laravel5.4之artisan使用总结一
- Not Equal on a Segment(CF-622C)
- 2017年国内开源镜像站点汇总
- OpenJTAG与JLink的区别比较
- JavaScript学习总结(3)——JavaScript函数(function)
- php程序员 软考考什么好,软考考什么好_软考哪个好考_软考哪个更容易考 - 希赛网...
- 阿里云吴磊创办yunQ云桥,完成银杏谷资本2000万元天使轮融资
- go的目录结构pkg
- 2021-06-10 MYSQL存储过程与触发器作业
- 基于改进K-means聚类和隐马尔可夫链的汽车行驶工况构建
- Flink 创建流处理运行环境
- word转pdf(docx4j)
- Web前端开发规范文档(更新于2013-01-13)
- 干货|Python爬虫如何设置代理IP
- 第三方推送不能参与业务
- 上海市的某快递公司根据投送目的地距离公司的远近,将全国划分成5个区域,请编写程序从键盘输入邮件的目的区域编码和重量,按下列计费规则计算快递费用并输出运费,计算结果保留2位小数。
- 远创机器人_雅马哈锁螺丝机器人,打标机器人
热门文章
- npm、webpack、vue-cli 快速上手版
- node.js express 启用 https
- SMB MS17-010 利用(CVE-2017-0144 )
- python 进程和线程
- 【C#】【引用加原创】C#实现kalman滤波
- 在.net 2.0/3.0程序中使用扩展方法
- Easyui笔记:jquery执行append后input的验证失效解决方案
- Android 语音播报,语音识别demo
- 关于HttpUrlConnection网络请求之返回结果的中文乱码解决方法
- mysql coalesce函数用法_MySQL coalesce函数用法说明(转)