使用: -(WelcomView*)welcomeView{ if (!_welcomeView) { _welcomeView = [[NSBundle mainBundle] loadNibNamed:@"WelcomView" owner:nil options:nil].firstObject; _welcomeView.frame = self.window.frame; } return _welcomeView; } ............ ImgModel *im =…
以前在swift3的时候,写过类似的,那个时候还没有很成熟的网络请求类库,在这里,还是衷心感谢大神们的付出! 具体效果如下,先上图: 点击按钮的时候,请求数据,数据结构如下: { ; reason = successed; result = ( { des = "\U68a6\U89c1\U9ec4\U91d1\Uff0c\U9884\U793a\U4f1a\U906d\U9047\U632b\U6298\U3002\U68a6\U89c1\U6709\U4eba\U9001\U9ec4\U91…
iOS开发Swift篇(02) NSThread线程相关简单说明 一 说明 1)关于多线程部分的理论知识和OC实现,在之前的博文中已经写明,所以这里不再说明. 2)该文仅仅简单讲解NSThread在swift语境中的一些使用和注意点,别他. 3)本文涉及代码可以从https://github.com/HanGangAndHanMeimei/Code地址获得. 二 NSThread的基本使用和创建 1)基本用法(主线程|当前线程) //1.获得执行该方法的当前线程 let currentThrea…
之前一直做的项目都是基于OC开发的,最近开始尝试使用Swift语言来重写整个项目. 本篇文章主要是讲述如何使用Swift来实现常见的通用App安装引导界面. 效果预览: 实现思路: 主要是采用了UIScrollView作为容器,将其ContentSize的宽度设置为(引导页数量)*屏幕宽度,并将pagingEnabled设为true,隐藏滚动条.作为指示的UIPageControl与UIScrollView直接添加到self.view之上,并保存UiPageControl居于最上. 实现代码:…
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link href="http://libs.baidu.com/bootstrap/3.0.3/css/bootstrap.min.css"…
 GET & POST 的对比 源码:https://github.com/SpongeBob-GitHub/Get-Post.git 1. URL - GET 所有的参数都包含在 URL 中 1. 如果需要添加参数,脚本后面使用 `?` 2. 参数格式:值对 参数名=值 3. 如果有多个参数,使用 `&` 连接 4. 在 get 方法中,url字符串中不能包含中文或者特殊符号 空格 如果出现,需要添加百分号转义 - POST URL中不包含参数,直接指定登录脚本即可 2. Request…
1.config index.js下面的跨域代理设置: proxyTable: { '/api': { target: 'http://xxxx', //要访问的后端接口 changeOrigin: true, pathRewrite: { '^/api': 'http://xxx' } }, }, 2.http.js(封装axios) import Vue from 'vue' import axios from 'axios' import QS from 'qs' //视情况用于不用; i…
创建模板类(封装一个类) 例1:新建一个名字叫做 Product 的类 Product.swift File 的内容 class Product { var name: String var description: String var price: Double var stock: Int init(name: String, description: String, price: Double, stock: Int) { self.name = name self.descriptio…
搭建一个QQ界面其实是一个很简单的实现,需要几种切换视图的控制器组合一起使用,即导航控制器.标签栏控制器.模态窗口.其中,将标签栏控制器设置为window的rootViewController,因为QQ主界面有4个控制器,分别为消息.联系人.动态.我,那么创建这4个控制器,然后再为它们分别创建一个导航控制器.此时,将之前创建的那4个控制器分别设置为对应的导航控制的rootViewcontroller.最后,将这4个导航控制器设置为标签栏控制器的子控制器即可.除此之外,我们仍然需要再创建一个登录的…
UItableView自定义&封装 一:Model class AppsModel: NSObject { //定义模型的三个属性 var imageName:String! //图片名称 var appName:String! //应用名称 var appDescription:String! //应用描述 //自定义初始化方法 init(imageName image_Name:String , app_Name:String , app_Description:String) { self…
1.公司组织竞品分析, 选择了SAP的 SAP4HANA作为竞品 这边协助同事搭建了SAP4HANA的测试环境: 备注 这个环境 应该是同事通过一些渠道获取到的. 里面是基于这个虚拟机进行的说明:: 版权属于原作者 主要方法前面的博客有说明: 基本的使用: 开机 设置ip地址 然后 root登录 su - hdbadm HDB start 再启动 S4 su - er1admstartsap r3 这里面的用户名是一个 1 不是L 坑是原作者给留的.. 安装SAP HANA Studio 进行登…
swift关于字符串的推断中 有前导.有后缀 两个方法.竟然没有包括推断. 经过学习找了个简单的解决方法: extension String { func has(v:String)->Bool { return self.componentsSeparatedByString(v).count > 1 } }…
今天突发奇想 想到的一个新思路 通过使用animate改变外边距达到滚动效果 再用复制节点插入到最后一行达到循环目的 HTML代码如下 <body> <ul style="border: 1px solid blue;height: 60px;width:300px;overflow: hidden;"> <li>aaaaaaaaaaaaaaaaaaaaa</li> <li>bbbbbbbbbbbbbbbbbbbbb</…
这东西主要是为了vue和平时打开一个空白界面_blank时的参数传递,不涉及到浏览器存储(session,local等) 众所周知,请求传参无非就用的query和params,相对应就是get和post,在当前界面下进行跳转情况下,使用 this.$router.push({ path:'/xxx', query: { id:"xxxxxx" } }) //接收参数 this.$route.query.id 或者这样 this.$router.push({ path:'/xxx', n…
Homebrew — macOS 不可或缺的套件管理器,Homebrew官方网站如此介绍自己!!! 中文官网:https://brew.sh/index_zh-cn.html 一,安装 打开shell执行下面命令 /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 注意问题:如果执行这个命令,中间运行时候卡住,那么你应该在Mac OS 10.…
一.上次实现了在AppDelegate中通过判断app版本决定是否进入新特性页面,今天将AppDelegate中的一坨进行了封装.将self.window的根控制器到底应该为新特性界面,还是主页面,封装到了导航工具类ChaosGuideTool 封装,先决定外面怎么用,然后实现方法.外部通过类方法调用  + (UIViewController *)chooseRootVC; 外部的APPDelegate 只是调用方法 之前的业务判断没有改变,只是将数据的存储进行了封装 二.返回按钮的自定义 <1…
简单封装的一个web的手势,tab和swipe,里面的具体数值都是自定义上去的,没有实际的标准,可以自行去修改都行 前两个是详解,js插件在最后一部分代码 ``` //封装web的tab步骤详解 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <!-- 标准理想视口 --> <meta name="viewport…
标签: UI 下拉刷新 EGOTableViewPullRefresh – 最早的下拉刷新控件. SVPullToRefresh – 下拉刷新控件. MJRefresh – 仅需一行代码就可以为UITableView或者CollectionView加上下拉刷新或者上拉刷新功能.可以自定义上下拉刷新的文字说明.具体使用看“使用方法”. (国人写) XHRefreshControl – XHRefreshControl 是一款高扩展性.低耦合度的下拉刷新.上提加载更多的组件.(国人写) CBStor…
在一个应用的整个开发过程中涉及到了无数的步骤.其中一些是应用的说明,图片的创作,应用的实现,和实现过后的测试阶段.写代码可能组成了这个过程的绝大部分,因为正是它给了应用生命,但是这样还不够,与它同等重要的还有代码的注释和文档编写.不管代码写的有多好,如果缺少了对应的好的注释文档,很有可能在将来带来麻烦.不幸的是,许多开发者都忽视或忽略了代码文档的重要性,而这非常糟糕,因为好的程序不仅仅是好的代码.它需要更多的东西. 谈到编写注释文档,显然我不是说仅仅简单的在实现文档里添加几行注释.肯定是更多的东…
本篇博客就来介绍一下iOS App中主题切换的常规做法,当然本篇博客中只是提到了一种主题切换的方法,当然还有其他方法,在此就不做过多赘述了.本篇博客中所涉及的Demo完全使用Swift3.0编写完成,并使用iOS的NSNotification来触发主题切换的动作.本篇博客我们先对我们的主题系统进行设计,然后给出具体实现方式.当然在我们设计本篇博客所涉及的Demo时,我们要遵循"高内聚,低耦合","面向接口编程","便于维护与扩充"等特点. 本篇博…
前言 普遍我们的网络层设计的时候直接是如下结构APIManager.post(url, parameter,completeHandle),服务器配置在APIManager.m文件中进行配置.这样一个简单便捷网络请求类便写好了,但细心思考我们会发现如下一些问题: 相同API可能分散各处导致每次需要填写的参数key值.回调处理代码也可能会存在冗余. //例如登录功能 APIManager.post("登录APIUrl",{"name":"",&qu…
先不说废话, 上效果图, 代码量也不大, 也不上传github骗星星了, 你们复制粘贴下代码, 就可以轻而易举的弄出一个小demo. 这个代码的实现并不复杂, 甚至于说非常简单, 就是逻辑有点小绕, 下面将用代码详细讲解下. childViewController方便在一个vc上面呈现出这种多种vc的效果, 相信好处百度上面说的多了去了, 这里只说实现. 首先, 需要新建一个父vc和五个子vc, 这里就不多说了, 先给大家看看进入父vc后的上面的btn控件封装, 以及方法回调. IndentBu…
原文地址:http://www.codeproject.com/Articles/808213/Developing-a-Large-Scale-Application-with-a-Single 渣译,各位看官请勿喷 引言: ... 单页面应用程序(SPA),被定义为在一个独立的页面上​​提供类似于桌面应用程序级用户体验为目标的网站.在SPA, 基本上所有的代码 - 例如 HTML,JavaScript和CSS - 都是在响应用户操作时动态加载的.页面没有在任何时候被重新刷新,也没有跳转到另一…
虚拟机里安装OSX+XCode开发环境 用真机的请直接跳过这个部分. 主要是在VitrualBox里安装mac系统和xcode,参考这篇教程,VirtualBox的版本是4.3.18 r96156,OSX版本是10.11 El Capitan,XCode版本是7.1 (7B91b). 经过几天的初步使用,感觉用虚拟机开发iOS基本能够满足要求,i5/8g/ssd的配置目测能达到真机70%的开发效率.主要存在的问题是:1)在宽屏上无法满屏,两边会留有黑框,导致鼠标无法顺利停靠在两侧 2)键盘敲击频…
如果想在底层做一些改变,想实现一些特别的动画,这时除了学习Core Animation之外,别无选择. 最近在看<iOS Core Animation:Advanced Techniques>这本书籍,尚有所收获,并将之记录下来. CALayer如果将UIView说成是视图,那么CALayer就是图层了.每一个 UIView 的身后对应一个 Core Animation 框架中的 CALayer:每一个 CALayer 都是 UIView 的代理.可以尝试运行下面的代码,会发现打印是一样的内存…
之前介绍了<OpenStack Swift All In One安装部署流程与简单使用>,那么接下来就说一说Swift集群部署吧. 1. 简介 本文档详细描述了使用两台PC部署一个小型Swift集群的过程,并给出一些简单的使用实例.本文档假定如下前提条件: 使用Ubuntu操作系统. 每台机器都运行Swift的所有服务,既是Proxy Server,又是Storage Server,用户可以向任何一台机器发起存储服务请求. 采用Swift自带的TempAuth作为用户的身份与权限认证. 所有机…
Functions and Closures  函数和封闭性(闭包) Functions  函数的使用 Swift中的函数定义和OC中有明显的差别了,使用func定义函数,在括号里定义參数和类型,用 -> 定义返回值类型 func greet(name: String, day: String) -> String { return "Hello \(name), today is \(day)." } greet("Bob", "Tuesda…
iOS8 Core Image In Swift:自动改善图像以及内置滤镜的使用 iOS8 Core Image In Swift:更复杂的滤镜 iOS8 Core Image In Swift:人脸检测以及马赛克 iOS8 Core Image In Swift:视频实时滤镜 上 面那篇文章主要是Core Image的基础,只是为了说明CIImage.CIFilter.CIContext,以及基础滤镜的简单使用.在上一篇中几乎没有对滤镜进行更复杂的 操作,都是直接把inputImage扔给CI…
设计模式(Design Pattern)是 对软件设计中普遍存在的各种问题,所提出的解决方案.这个术语是由埃里希·伽玛等人(Erich Gamma,Richard Helm,Ralph Johnson和John Vlissides这四人提出的.也被称为:Gang of Four,GOF,四人帮)在1990年代从建筑设计领域引入到计算机科学的. 设计模式并不能直接用于完成代码的编写,而是描述在各种不同情况下,要怎么解决问题的一种方案. 以上描述摘自维基百科.设计模式出现于1990年代,那时主要的编…