联系
我们
投稿
反馈
评论 返回
顶部

内容字号: 默认 大号超大号

段落设置: 段首缩进取消段首缩进

字体设置:切换到微软雅黑切换到宋体

C#开发移动应用系列(2.使用WebView搭建WebApp应用)

2017-06-20 11:37 出处:互联网 人气: 评论(
天下彩246hk 淘宝内部优惠券领券网站koumen.net 儋州365新闻 吉娜·维尔德 维多利亚·丽茜 私人侦探推荐翁语 site::70qq.cn 埃章国际教育信息网 炒饭资讯网

  首先我们要创建一个Web项目..我这里的例子创建的ASP.NET Core的..

  3.通过WebView让页面中的JS代码调用后台的C#代码

  代码如下:

  我们首先打开上一篇我们只放了一个button的界面.

  我们进入下一个阶段...

  下面我们来讲一下倒数第二行的MyCommWebClient是怎么来的.

  这个我们留待后面讲解..敬请期待.. ...

  webView.LoadUrl( );

  当然,这些只是基础,我们要做一个商业应用..肯定是需要调用到机器的硬件设备,比如陀螺仪..摄像头什么之类的..

  最后,我们在MainActivity.cs文件加上一句代码

  然后编写MainActivity.cs文件,在OnCreate()方法中获取我们的webView并进行基础设置

  代码如下:

  如果我们不需要获取这个JS的返回值

  就会跳转到你设定的页面中了.

  1.学会使用WebView基础功能

  2.通过WebView调用页面中的JS代码

  相关文章:

  TestEventHandler TestEvent; OnReceiveValue(Java.Lang.Object value) { stringa = value.ToString(); TestEvent(a); } }

  MyJSInterface(Context context) { SayHello( stringmessage) { Toast.MakeText(context, message, ToastLength.Short).Show(); } }

  如果你要获取返回值.那就请往下看..

  2.通过WebView调用页面中的JS代码

程序设计

  嗯..一周了 本来打算2天一更的 - - ,结果 出差了..请各位原谅..

  写在最后

  如图:

  首先,我们申明一个类

  至此就完成了基本的WebView设置

阅读()

  说明都已经在注释里了.

  从左侧工具栏中找到WebView并拖到我们的界面中,并放大到覆盖整个页面.位置如图:

  

  今天我们来讲一下使用WebView搭建WebApp应用.

  我们要创建一个类,来继承这个IValueCallback并提供返回值

  这里是我们自己申明的一个客户端类,用来拦截页面的跳转连接(不然会调用安卓原生游览器加载新页面),并在本页面中加载用的,代码如下:

  既然是要进行webAPP的开发 那么通过WebView来调用JS,肯定是少不了的..

  正文

  我们需要使用到WebView的EvaluateJava函数

  下面我们就来讲如何使用JS来调用C#代码.

  效果图:

  注意这里的项目引用..的意思..就是 右键项目-->选择添加引用..而不是只Using

  3.通过WebView让页面中的JS代码调用后台的C#代码

  确定一下本篇的学习目标:

  编写OnCreate函数中的代码如下:

  因为不需要去很深入的了解各种安卓的界面布局,我们直接全屏覆盖一个WebView就好了.(当然,实际应用中还是需要加入一部分原生控件来提高用户体验)

  Toast.MakeText( this.ApplicationContext, message, ToastLength.Short).Show(); }

  就这样,一句即可..

  这个函数有两个参数,一个是你要调用的JS,另一个则是IValueCallback

  说明一下为何要用WebApp的形式,因为首先..易于更新,其次学习成本又会降低一个档次

  这样,我们就完成了整个C#调用JS代码并获取返回值的过程

  

  webView = FindViewById<WebView>(Resource.Id.webView1); settings.JavaEnabled = webc = newMyCommWebClient(); //设置自己的WebView客户端webView.SetWebViewClient(webc);

  TestEventHandler( stringmessage);

  ); );

  这样,当页面中有A标签连接跳转的时候就不会调用安卓的原生游览器加载了.

  弹出

  弹出 调用后台C#

  这里我们采用事件回调的方式,来返回我们获取的Value,(注:细心的朋友肯定发现了,我们还继承了Java.Lang.Object,因为这个接口是Java的对象..所以..我们需要继承一下JAVA基类..不然会报类型转换错误)

  基本了解这些内容 我们就可开始我们的WebApp基础开发了.

  在里面定义ShowMessage()的函数如下:

C#开发移动应用系列(2.使用WebView搭建WebApp应用)

  ShouldOverrideUrlLoading(WebView view, String url) { ; } }

  下面我们就开始讲解如何调用.

  webView.LoadUrl( + );

  那么很简单,代码如下:

  1.使用WebView构建基础框架

投诉

  修改我们测试页面的代码如下:

  信息弹出成功.到此.我们的JS调用C#代码就调用结束了

  需要项目引用Mono.Android.Export

  btn = FindViewById<Button>(Resource.Id.button1); vc.TestEvent += ShowMessage; , vc); };

  其实很简单,就是创建一个函数,然后添加两个特性,代表着JS可以调用(有点类似WebAPI).

  至于怎么让你的Web项目可以局域网访问..我就不多说了..自行百度

  

  然后我们回到MainActivity.cs

  回到我们的MainActivity.cs文件中的OnCreate方法.给我们webview继续添加代码如下:

  修改我们的前端HTML页面

  我们添加了一个按钮,并直接通过wv对象来调用后台的函数...

  这里需要注意的是Java.Interop.ExportAttribute这个特性.

  代码虽然不多,但是很实用.

声明:本文由入驻搜狐公众平台的作者撰写,除搜狐官方账号外,观点仅代表作者本人,不代表搜狐立场。

  原文链接:

分享给小伙伴们:
本文标签:

更多文章

相关文章

  • 蛮便宜
  • 抠门网
  • Copyright © 2002-2014 版权所有