在上一篇文章中使用Xamarin实现控制了一下祖传的PLC;基本的功能也就完事了,这不总觉得少点最基本的配置;那就趁着激情还在赶紧再去完善一下,不然激情已过就懒得去摸索了;来看看最终咱实现的视频效果:

1、关于弹窗,直接使用开源的PopupPage

Install-Package Rg.Plugins.Popup -Version 2.1.0

2、调用和关闭

PopupNavigation.Instance.PushAsync(new SettingPage());
PopupNavigation.Instance.PopAsync(true);

3、验证IP能否ping通

Install-Package Xam.Plugin.Connectivity -Version 3.2.0

4、具体调用方式

CrossConnectivity.Current.IsReachable(ip, 200);

5、关于验证IP失败抖动窗口,代码:

Task.Factory.StartNew(new Action(() =>
{for (int i = 0; i <2; i++) {int offsetX = ran.Next(10, 30);int offsetY = ran.Next(30,60);double x = this.X - offsetX;double y = this.Y - offsetY;this.Content.TranslateTo(x,y, 100);System.Threading.Thread.Sleep(100);x = x+ offsetX;y = y + offsetY;this.Content.TranslateTo(x, y, 100);System.Threading.Thread.Sleep(100);}
}));

6、毕竟简单配置存储,那就直接文本就完事了

var cofnigFile = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Personal), plcConfigFile);
using (var writer = File.CreateText(cofnigFile))
{string content = $"{PlcConfig.IP}#{PlcConfig.Port}";await writer.WriteLineAsync(content);
}

7、配置文件的读取

var cofnigFile = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Personal), plcConfigFile);
if (cofnigFile != null && File.Exists(cofnigFile))
{using (var reader = new StreamReader(cofnigFile, true)){string line = await reader.ReadToEndAsync();if (!string.IsNullOrEmpty(line)){string[] strs = line.Split('#');if (strs != null && strs.Length == 2){plcConfig.IP = strs[0];plcConfig.Port = Convert.ToInt32(strs[1]);}}}
}

最终简单的效果先这样吧;以后有时间的话,可以再去摸索一下更复杂的效果;编程不息、Bug不止、无Bug、无生活;改bug的冷静、编码的激情、完成后的喜悦、挖坑的激动 、填坑的兴奋;这也许就是屌丝程序员的乐趣吧;今天就到这里吧;希望自己有动力一步一步坚持下去;生命不息,代码不止;大家抽空可以看看今天分享的效果,有好的意见和想法,可以在留言板随意留言;我看到后会第一时间回复大家,多谢大家的一直默默的关注和支持!如果觉得不错,那就伸出您的小手点个赞并关注一下,多谢您的支持!

Xamarin效果第十三篇之弹窗PopupPage相关推荐

  1. Xamarin效果第二十三篇之离线语音识别

    在前面文章中简单玩了玩GIS的基本操作.Mark相关.AR.测距.加载三维白模.可扩展浮动操作和录音效果;今天抽空再来分享一下最近摸索的基于讯飞的离线语音识别效果,其实就简单用了一下离线命令词识别,看 ...

  2. Xamarin效果第三篇之手机底部弹窗

    前面一篇文章把基本的大框架搞定了,这不再逐个去实现里面的细节;今天主要是分享点击了CollectionView内的点点点然后从手机底部弹出一个可以交互的窗口;直接看看最终实现的效果: 作为初来乍到的小 ...

  3. Xamarin效果第四篇之CollectionView子项右侧布局

    前面基于PopupPage然后实现了手机底部弹窗;今天再次基于他从手机右侧弹出一个可以交互的窗口;直接看看最终实现的效果: 右侧弹窗不是重点主角是排行榜: 我还是直接使用CollectionView然 ...

  4. Xamarin效果第十七篇之AR GIS

    在前面几篇文章中简单玩耍了一下在线.离线加载高德地图和添加Mark;今天在原来的基础上再去玩玩AR GIS;来看看最终效果: 1.先通过NuGet引用: Install-Package Esri.Ar ...

  5. Xamarin效果第八篇之视频监控

    还记得全年帮助一个朋友通过技术手段写了一个PC端的监控软件,这不再次想起此事,准备基于Xamarin再来实现一个移动端的监控;毕竟直接手机上打开还是比较方便的;最终实现的效果: 1.启动页动画,原来直 ...

  6. Xamarin效果第五篇之ScrollView动态滚动效果

    前面基于Xamarin做了一点效果;这不过年从老家回来一直成沉迷工作无法自拔,没时间来更新文章了;今天赶紧抽点时间再来更新一下效果;直接看看最终实现的效果: 前台RadioButton的事件绑定选中状 ...

  7. Xamarin效果第二十篇之GIS中加载三维白模

    在前面文章中简单玩了玩GIS的基本操作.Mark相关.AR和测距,今天再次分享一下N年前就像玩耍的效果;啥也不说了都在效果里: 再来看看手机端的效果: 1.关于效果我也是偶然见看到了别人实现: htt ...

  8. 【着色器实现Glow可控局部发光效果_Shader效果第十三篇】

    Shader "Glow" {Properties{_MainTex ("Main Texture", 2D) = "white" {}_C ...

  9. CCNA-第十三篇-NAT-上

    CCNA-第十三篇-NAT-上 NAT- netword address translation 网络地址转换 NAT不仅仅是用于共享地址上网,NAT是一个很大的东西 核心思想是转换地址,以及端口号 ...

最新文章

  1. android中文字中间有超链接的实现方法
  2. 常见的跑马灯效果,无缝连接。mcake官网公告使用
  3. jQuery 陷阱。。。。
  4. MYSQL多表查询与事务
  5. 使用NSURLProtocol实现UIWebView的离线缓存的简单实现
  6. angular点击按钮弹出页面_Win10提示“由于启动计算机时出现了页面文件配置问题”解决方法...
  7. 格式小结 css 0926
  8. (转)The Standard C Library 经典的基础(上)
  9. 从实例入手,讲解 CMake 的常见用法。demo1-demo8
  10. 学习python: 2.x 和 3.x的区别
  11. Android6.0之AMS如何启动app中篇之Task的管理
  12. 健身管理系统一站式智能化健身管理体验
  13. automation服务器不能创建对象问题解决
  14. 在华为工作十年的感悟
  15. V-REP 插件教程
  16. 数据分析的类型有哪些?
  17. [Irving] Android 点击两次返回退出系统
  18. 计算机网络,操作系统,微机原理,uml,java都非常重要
  19. mysql查看时区 go时区问题
  20. gcc / -Wl,-Bsymbolic

热门文章

  1. 通过Xshell上传下载文件
  2. 使用Css截取字符串
  3. nagios-3.4.3搭建
  4. ubuntu安装时发现GPT分区表,无法安装问题
  5. Entity Framework 简单增删改操作
  6. Codeforces 892E Envy
  7. 对flex-grow和flex-shrink的深入理解
  8. 通过用 .NET 生成自定义窗体设计器来定制应用程序
  9. 码农小汪-Hibernate学习8-hibernate关联关系注解表示@OneToMany mappedBy @ManyToMany @JoinTable...
  10. 内核态和用户态的区别