Delphi for iOS开发指南(7):在iOS应用程序中使用WebBrowser组件

在FireMonkey iOS应用程序中使用WebBrowser

在iOS平台上,FireMonkey使用TWebBrowser组件来封装Web Browser。这篇文单讲述了如何在iOS上创建一个简单的FireMonkey浏览器程序。

第一步:设计界面

 

1.        选择File>New>FireMonkey Mobile Application – Delphi>BlankApplication。

2.        在Tool Palette中选择TToolBar组件,然后拖到FireMonkey Mobile Form Designer上去。

要找到TToolBar,在ToolPalette的搜索框中输入开头的几个字母(“tool”):

3.        在你拖好控件之后,你就可以在Form Designer的顶部看到这个TComboBox组件了:

4.        在Tool Palette中选择TButton组件,并拖放到ToolBar上面。

5.        在Mobile Form Designer上选中Button组件,然后在Object Inspector中的StyleLookup属性中选择priortoolbuttonbordered。

Tbutton的priortoolbuttonbordered这个StyleLookup值在iOS Style中会添加一个返回按钮标签:

更多关于在FireMonkey iOS应用程序中选择Style的细节,请查看“Delphi for iOS开发指南(4):在iOS应用程序中使用不同风格的Buttin组件”。

6.        在Tool Palette中选择TEdit组件并拖放到ToolBar上面。确保Edit控件的尺寸填充ToolBar的空余区域:

7.        在Tool Palette中选择TWebBrowser组件并拖放到窗体上面。

8.        在Mobile Form Designer上选中WebBrowser组件,然后在Object Inspector中的Align属性设置为alClient。

在完成这些步骤后,窗体看出来应该是如下图所示:

第二步:编写一个事件处理过程,当用户更改URL文本框时打开一个网页

与桌面平台不一样的是,Mobile Device使用如下图所示的Virtual Keyboard来输入文字。用户可以通过点击“Done”或“Return”来完成这个动作。

FireMonkey提供一些事件处理过程来处理用户操作的响应。在“Done”按钮按下的时候,FireMonkey框架发送一个OnChange事件给TEdit控件。另一方面,“Return”按钮没有相应的事件。在这节中,你实现事件处理过程来同时支持这两种情况。

实现打开网页的共用方法

在实现事件处理过程之前,首先实现一个打开网页的共用方法,使用Edit控件的Text属性。

1.  在Code Editor中,创建下面代码:

  1. procedure OpenURL; next to{ Private declarations }

2.按下CTRL+SHIFT+C来在文件的末尾创建一个占位符:

3.按下面的代码片断来实现这个OpenURL方法:

实现OnChange事件的事件处理过程

1.  在Mobile FormDesigner中,选中Edit控件,然后在Object Inspector(Events页),双击OnChange事件旁边的空白区域来创建事件处理过程。

Object Inspector创建一个名为Edit1Change的事件处理过程:

2.添加如下代码来实现这个事件处理过程:

实现返回按钮的事件处理过程

为了给WebBrowser实现返回按钮,你可以简单的调用WebBrowser组件的GoBack方法:

基本的功能已经实现了。尝试在iOS Simulator或iOS Device中运行你的应用程序。

第三步:为Web Browser应用程序选择合适的键盘

在运行你的第一个WebBrowser应用程序之后,你会发现虚拟键盘不是很合理。

iOS提供以下几种虚拟键盘:

在Edit控件的KeyboardType属性中选择vktURL做为合适的虚拟键盘:

Delphi for iOS开发指南(7):在iOS应用程序中使用WebBrowser组件的更多相关文章

  1. Delphi for iOS开发指南(8):在iOS应用程序中使用Tab组件来显示分页

    Delphi for iOS开发指南(8):在iOS应用程序中使用Tab组件来显示分页 在FireMonkey iOS应用程序中的Tab Tab由FMX.TabControl.TTabControl定 ...

  2. Delphi for iOS开发指南(6):在iOS应用程序中使用ComboBox组件来从列表中选择某一项

    http://blog.csdn.net/delphiteacher/article/details/8924110 Delphi for iOS开发指南(6):在iOS应用程序中使用ComboBox ...

  3. Delphi for iOS开发指南(5):在iOS应用程序中使用Calendar组件来选择日期

    http://blog.csdn.net/delphiteacher/article/details/8923519 在FireMonkey iOS应用程序中的Calendar FireMonkey使 ...

  4. Delphi for iOS开发指南(4):在iOS应用程序中使用不同风格的Button组件

    http://blog.csdn.net/DelphiTeacher/article/details/8923481 在FireMonkey iOS应用程序中的按钮 FireMoneky定义了不同类型 ...

  5. Delphi for iOS开发指南(3):创建一个FireMonkey iOS应用程序

    http://cache.baiducontent.com/c?m=9d78d513d9d431a94f9d92697d60c015134381132ba1d0020fa48449e3732b4b50 ...

  6. Delphi for iOS开发指南(1):在Mac上配置你的开发环境

    http://cache.baiducontent.com/c?m=9d78d513d99516f11ab7cf690d678c3b584380122ba7a0020fd18438e4732b4050 ...

  7. 《iOS开发指南》要改iOS8版本了,听听您的意见?

    <iOS开发指南>要改iOS8版本了,听听您的意见?参加问卷同学均可获得智捷课堂50元代金卡一张,同时抽取一名同学赠送即将出版的基于iOS8的<iOS开发指南>一本,欢迎大家填 ...

  8. 《iOS开发指南》正式出版-源码-样章-目录,欢迎大家提出宝贵意见

    智捷iOS课堂-关东升老师最新作品:<iOS开发指南-从0基础到AppStore上线>正式出版了 iOS架构设计.iOS性能优化.iOS测试驱动.iOS调试.iOS团队协作版本控制.... ...

  9. 视频聊天插件:AnyChat使用攻略之iOS开发指南

    AnyChat使用攻略之iOS开发指南 这套攻略主要指导刚开始使用AnyChat SDK For iOS的同学,快速搭建SDK环境,和实现音视频开发流程. (需要工程案例文件可联系我们) 在iOS平台 ...

随机推荐

  1. sql server profiler 的使用

    sql server profiler  是作为监听sql语句执行的软件, 主要是看NTUserName,system是系统的,看自己数据库的名字.

  2. Python3 exec 函数

    Python3 exec 函数  Python3 内置函数 描述 exec 执行储存在字符串或文件中的 Python 语句,相比于 eval,exec可以执行更复杂的 Python 代码. 语法 以下 ...

  3. Java获取资源文件

    比如我们有以下目录 |--project |--src |--javaapplication |--Test.java |--file1.txt |--file2.txt |--build |--ja ...

  4. repeater嵌套RadioButtonList赋值

    <asp:Repeater ID="Repeater1" runat="server"         onitemdatabound="Rep ...

  5. macos安装postman

    安装命令 brew cask install postman brew 是从下载源码解压然后./configure && make install,同时会包含相关依存库.并自动配置 好 ...

  6. linux c++连接mysql编译问题

  7. Linux 磁盘分区存放文件和目录的数量 (inode)

    文件系统格式centos7缺省是xfs,centos6缺省是ext4,centos5缺省是ext3ext3 文件数最大支持31998个,文件系统容量最大16TB,单个文件最大2TBext4 文件数最大 ...

  8. Selenium安装中的一些问题及解决办法-软硕1703班3组整理分享

    非常感谢软件工程硕士1703班3组同学的热心,他们将安装Selenium过程中踩过的坑替大家填上了.希望还没有来得及踩坑的,或者掉进坑里还没爬出来的小组,能顺利跨过去这个安装的坑. 如下是原文. Se ...

  9. Tree Representation Implementation & Traversal

    https://github.com/Premiumlab/Python-for-Algorithms--Data-Structures--and-Interviews/blob/master/Tre ...

  10. 3层+SVN学习笔记(2)

    在对于餐桌付款程序设计时,需要先选中餐桌,然后点击付款.正常情况是这样的: 在程序设计时,没有考虑到用户未点击餐桌而直接进行付款的情况,程序出现以下错误: 在设计时,需要考虑用户未点击餐桌而直接进行付 ...