- UIKIT_EXTERN的基本理解
LTOVE
查看SDK源文件#ifdef__cplusplus#defineUIKIT_EXTERNextern"C"__attribute__((visibility("default")))#else#defineUIKIT_EXTERNextern__attribute__((visibility("default")))#endif用途一般用于全局变量的定义(objective-c)在.h文件中定义全
- ios编码规范20200507
蜗牛的马达
代码风格篇常量1.宏以小写k开头+模块前缀+具体描述#definekLQWeakSelf__weaktypeof(self)weakSelf=self2.全局变量以小写k开头+模块前缀+具体描述,如果是需要供外界模块调用,则在.h文件以extern或者UIKIT_EXTERN声明///.hUIKIT_EXTERNNSString*constkAOrgInfoKey;///.mNSString*co
- ios随笔学习之HTTP基础
冷武橘
一、URL的编码URL中一旦出现了特殊字符(比如中文、空格),需要进行编码。比如:编码前:https://www.baidu.com/s?wd=百度编码后:https://www.baidu.com/s?wd=%E5%8D%8E%E4%B8%BA0、URL的组成?参考iOS官方文档Foundation篇---URLs1、为什么要编码?参考浅析URL编码2、ios编码方法参考iOS的URL编码3、p
- iOS随笔之storyboard搭建界面segue传参方法
松树李树
很多小伙伴在开发(iOS)的过程当中会使用storyboard来搭建界面,这样的确简单快捷,比如从viewCtrollerApush到viewCtrollerB,只需要在viewCtrollerA中拖拽一个按钮,然后从这个按钮拖拽一个segue事件到viewCtrollerB,这个segue事件包括(push,modal,custom(自定义事件)),那么问题来了,一般这个过程是不需要写任何代码的
- iOS随笔之清理xocde缓存
松树李树
有很多小伙伴在开发(iOS)的时候会发现电脑变得很卡,或者提示电脑内存不足,然后检查xocde应用包的时候会发现xcode变得很大很大,好几十个鸡,这是因为没运行一个iOS版本的系统xcode都会自动为该系统做预编译缓存包,这个包一个iOS版本大概2~3个G的样子,这就相当大了,尤其是对128版本的macbook,那么应该怎么清理呢?接下来给大家介绍一种方法:首先打开终端然后输入cdLibrary
- iOS随笔 hit-test
RafaelZ
应用接收到touch事件,会按照事件响应链的顺序执行hitTest方法去获取touch对应的视图。UIApplication->UIWindow->UIView->UIView(subviews)在UIView->UIView(subviews)遍历的这一步,遍历顺序是从顶层到底层,也就是反向遍历UIView的subviews数组,直到找到目标视图。这样在平级视图叠加的时候就保证了先响应更靠顶层的
- 问题记录:FOUNDATION_EXTERN、UIKIT_EXTERN和extern相关
lotus_yoma
问题记录:FOUNDATION_EXTERN、UIKIT_EXTERN和extern使用Fig-01Fig-01中定义func,将FOUNDATION_EXTERN换成extern后,在.mm文件中引用报错:Fig-02
- 知识点总结21:创建全局变量
枫之叶_小乙哥
创建全局变量的步骤(6步):1.创建OC文件,然后把内容全部删除2.在.h和.m文件中都#import3.在全局变量前添加"UIKIT_EXTERN"4..h文件#import/****通用的间距值****/UIKIT_EXTERNCGFloatconstZGKMargin;5..m文件#import/****通用的间距值****/CGFloatconstZGKMargin=10;6.在需要用到全
- IOS随笔——页面跳转
Engandend
页面
目前,就我所学到的内容,页面跳转有三种方法一、直接推到下一个页面定义好两个页面之后,在第一个界面添加一个button并且对button实现changView方法-(IBAction)chang:(id)sender;在.m文件里面实现-(void)chang:(id)sender{second*secondview=[[secondalloc]initWithNibName:@"second"bu
- FOUNDATION_EXTERN与UIKIT_EXTERN
哈皮吖
ios随笔UIKIT_EXTERN
Xcode进行APP项目开发,在项目开发工程中经常使用宏定义,如下使用:FOUNDATION_EXTERNNSString*constLHserId;UIKIT_EXTERNconstNSIntegerLHCount;这些宏定义的前缀,FOUNDATION_EXTERN与UIKIT_EXTERN有什么区别呢?1、首先看下FOUNDATION_EXTERN的定义:#ifdefined(__cplus
- iOS随笔_网络(Socket/MQTT)
Code_浅蓝
iOS
常见协议IP(InternetProtocol)网络层协议,网络之间互联的协议。FTP(FileTransferProtocol)文本传输协议TCP(TransmissionControlProtocol)传输控制器协议UDP(UserDatagramProtocol)用户数据报协议HTTP(HyperTextTransferProtocol)超文本传输协议国际标准化组织(ISO)定义了网络协议的
- iOS随笔
UncleX
基础...objc客户端:clien服务器:server请求:客户端向服务器发送请求响应:返回数据,对请求的响应服务器:1.远程服务器—》外网服务器2.本地服务器—》内网服务器URL常用协议:http->网络资源file-》本地资源(不用加主机地址)HTTP,规定了客户端和服务器之间的传输格式,这样才能跨语言沟通所以学习网络需要关注的两大步:怎么发请求给服务器怎么解析服务器返回的数据发送请求put
- iOS - UIKIT_EXTERN
SkyMing一C
图片源于网络UIKIT_EXTERN//UIKitDefines.h#ifdef__cplusplus#defineUIKIT_EXTERNextern"C"__attribute__((visibility("default")))#else#defineUIKIT_EXTERNextern__attribute__((visibility("default")))#endif其中__cplus
- iOS随笔——自定义照相机
bluedaquiri
1.工具类(CameraManager)一个自定义照相机的工具类你可能需要以下功能:这个工具类看起来可能是这样的:用户相机授权检测+(BOOL)checkAuthority;通过一个自定义视图初始化-(instancetype)initWithCameraCustomView:(UIView*)customView;拍照结束的照片返回可以是代理或者block-(void)takePhotoWith
- iOS随笔之代码调用segue事件
松树李树
很多小伙伴在开发(iOS)时会运用storyboard搭建界面,如果要实现push或者模态就只需要一个拖拽的动作的就可以完成,这个拖拽的动作统称segue事件,但是有的时候我们需要满足某些条件时才允许跳转,比方说密码错误不允许跳转,这样的话就要给这个segue事件添加判断,但是storyboard搭建时可一句代码也没有的啊,这个就需要代码来调用segue事件:if(满足条件){//符合条件,调用s
- iOS随笔
CC_Kevin
1.iOS对资源文件加密--第三方框架RNCryptor的简单使用前言:网上有对这个框架的介绍很多,这个框架更新很快,现在最新的是swift的语言,纯OC的最后一版是3.0.1版本,此次使用的正是此版本。RNCryptor源码https://github.com/RNCryptor/RNCryptor。基于RNCryptor有同学做了一个小工具,用来对资源文件先进行加密。(CXYRNCryptor
- iOS随笔之类型转换
松树李树
有很多小伙伴在开发(iOS)的过程中会应用到数据类型的转换,基本类型的就不再赘述了,在这里主要介绍一下字典(NSDictionary)与json字符串的相互转换,以及字典(NSDictionary)与二进制数据(NSData)的相互转换;一.NSDictionarytoNSData:字典与二进制的相互转换运用归解档的方法来实现:执行代码扩展:如果对象类型是NSString,NSArray,NSDi
- iOS随笔之通过命令行删除清理描述文件
松树李树
有很多小伙伴在开发(iOS)的时候需要频繁更新描述文件,有的时候会出现最新安装的描述文件在程序运行时找不到,这个时候就需要将旧的描述文件清理一下,然后再安装就可以了,下面给大家介绍一种用命令行删除描述文件的方法:1.打开Mac终端2.输入ls回车3.输入cdLibrary/回车(输入大写的L然后按Table键会自动联想出来,以下同理)4.输入ls回车5.输入cdMobileDevice回车6.输入
- ios 通知官方写法
我勒个去的
UIKIT_EXTERN简单来说,就是将函数修饰为兼容以往C编译方式的、具有extern属性(文件外可见性)、public修饰的方法或变量库外仍可见的属性。再看看NSNotificationName,typedefNSString*NSNotificationNameNS_EXTENSIBLE_STRING_ENUM;其实就是NSString*。//Foo.hUIKIT_EXTERNNSNotif
- iOS 关键字const/static/extern、UIKIT_EXTERN区别和用法
Uncle鹏
一、前言对于刚入行的新手们这些关键字可能会经常搞混淆或不清楚它们的意思和用法吧,即使在网上看了区别,但是很久不用下次又不清楚了,而且即使清楚自己的代码恐怕也很少用起来吧。通过阅读别人优秀的代码总会发现一些常用的关键字,随着自己的编程经验的积累慢慢的明白的。废话不多说,下面将是我的理解,若有不对,请大神赐教。二、关键字const/static/extern/UIKIT_EXTERN的释义和用法1、c
- 监听键盘的通知
李贤立
UIKIT_EXTERNNSString*constUIKeyboardWillChangeFrameNotification;键盘可能因为改变输入法,切换成表情输入,切换成英文,那么frame可能会变高,变矮,不一定会发出下面这些通知,但是肯定会发上面的通知。UIKIT_EXTERN?NSString*constUIKeyboardWillShowNotification;UIKIT_EXTER
- iOS随笔 - 实时更新
从容到没边的优雅
1、给pod进工程的库添加分类添加的分类注意:创建的分类不能和库文件放在一块,会报fileNotFound,需要拖拽到别的文件(pod的东西我们没权限干涉)2、RGB颜色表MIMEType参考手册3、Xcode8.0去除控制台多余打印选择Product->Scheme->EditScheme...或者直接按command+shift+=10.0){urlString=[urlPathstringB
- iOS随笔之git忽略提交不必要的文件
SonGe李
有好多小伙伴在开发的时候,尤其是使用git进行版本管理的时候会遇到一个问题,就是在push或者pull的时候,明明刚刚commit完,但是又提示需要commit,好烦人,尤其是UserInterfaceState.xcuserstate文件,基本都是因为这个文件总是自动改变,那么,如何忽略掉不想进行提交的文件呢;下面进行说明:如果是新项目,也就是说还没有上传git,可以命令行:vim.gitign
- iOS随笔——初识枚举器enumerateObjectsUsingBlock
bluedaquiri
枚举器是一种苹果官方推荐的更加面向对象的一种遍历方式,相比于for循环,它具有高度解耦、面向对象、使用方便等优势1.测试场景一个未知内部数据的数组,判断数组中是否有字符串@"2"方式:通过遍历,判断数组元素是否等于@"2"[@[@"1",@"2",@"3"]enumerateObjectsUsingBlock:^(id_Nonnullobj,NSUIntegeridx,BOOL*_Nonnulls
- iOS随笔——UIResponder与UIGestureRecognizer
bluedaquiri
触屏事件(TouchEvent)UIResponder阅读前请先了解一下以下2个方法-(UIView*)hitTest:(CGPoint)pointwithEvent:(UIEvent*)event;-(BOOL)pointInside:(CGPoint)pointwithEvent:(UIEvent*)event;首先通过一个例子来了解一下UIResponder事件分发和响应者链的过程(用户点击
- iOS随笔——编程之美oc代码风格
bluedaquiri
teatime原文头文件#import的顺序写法模板#import#import#import“其他类”尽量按照先系统类第三方类自己写的类顺序导入中间不能有空格建议的写法#import#import#import"GBOrderEmptyView.h"不建议的写法#import"GBOrderEmptyView.h"#import#import@Class的写法写法模板@classclass1,c
- UIKIT_EXTERN 理解
爱喝农药de清凉
摘自:http://www.cocoachina.com/ios/20171226/21653.html如果多个.m文件需要用到myURL,可以在每一个.m文件都像下面这样初始化吗?NSString*constmyURL=@"http://xxx.xxx.xxx.xxx:8090";肯定不行,编译时,会报重复定义.比如在pch文件中写上面这行代码,就相当于为每一个.m文件都写这行代码要解决重复定义
- 一个小发现:pch导入头文件中的头文件也是可以共享的
宇轩Simid
举例子:如果pch中第一个导入的头文件AObject中只包括Foundation框架,如果这时候AObject要声明一个通知,按照官方的写法,在.h中使用了UIKIT_EXTERN,这时候就会出现报错!大家可以去试试,这是我在网络框架中暴露的外部通知,而偶然我的网络类放在pch中的第一位,并没有引入UIKit,所以出现了问题,在我把通知暴露在其他文件中却不报错,纳闷半天,以为编译器出问题了,最后发
- ios随笔——重命名ios工程(带pods)
iosRn
最近做项目,直接修改之前的项目,但是项目名字不能一样,所以就修改一下项目的整体的名称。重命名项目时,记得先备份重命名项目时,记得先备份重命名项目时,记得先备份重要的事情说三遍!!!网上有个教程,部分是可以的吗,有些问题,整理一下修改的步骤:教程地址:http://blog.csdn.net/techalleyboy/article/details/747254361、修改项目文件夹名字2、打开项目
- IOS UIKIT_EXTERN, __attribute__((visibility ("default"))) 是啥玩意
柯索
IOSUIKIT_EXTERN,__attribute__((visibility("default")))是啥玩意?转载(http://www.cnblogs.com/fortunely/p/4681635.html)问题提出在学习IOS时候,碰到一个函数NSStringFromCGPoint(UIGeometry.h)其原型是UIKIT_EXTERNNSString*NSStringFromC
- 矩阵求逆(JAVA)初等行变换
qiuwanchi
矩阵求逆(JAVA)
package gaodai.matrix;
import gaodai.determinant.DeterminantCalculation;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
/**
* 矩阵求逆(初等行变换)
* @author 邱万迟
*
- JDK timer
antlove
javajdkschedulecodetimer
1.java.util.Timer.schedule(TimerTask task, long delay):多长时间(毫秒)后执行任务
2.java.util.Timer.schedule(TimerTask task, Date time):设定某个时间执行任务
3.java.util.Timer.schedule(TimerTask task, long delay,longperiod
- JVM调优总结 -Xms -Xmx -Xmn -Xss
coder_xpf
jvm应用服务器
堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。
典型设置:
java -Xmx
- JDBC连接数据库
Array_06
jdbc
package Util;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class JDBCUtil {
//完
- Unsupported major.minor version 51.0(jdk版本错误)
oloz
java
java.lang.UnsupportedClassVersionError: cn/support/cache/CacheType : Unsupported major.minor version 51.0 (unable to load class cn.support.cache.CacheType)
at org.apache.catalina.loader.WebappClassL
- 用多个线程处理1个List集合
362217990
多线程threadlist集合
昨天发了一个提问,启动5个线程将一个List中的内容,然后将5个线程的内容拼接起来,由于时间比较急迫,自己就写了一个Demo,希望对菜鸟有参考意义。。
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.CountDownLatch;
public c
- JSP简单访问数据库
香水浓
sqlmysqljsp
学习使用javaBean,代码很烂,仅为留个脚印
public class DBHelper {
private String driverName;
private String url;
private String user;
private String password;
private Connection connection;
privat
- Flex4中使用组件添加柱状图、饼状图等图表
AdyZhang
Flex
1.添加一个最简单的柱状图
? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
<?xml version=
"1.0"&n
- Android 5.0 - ProgressBar 进度条无法展示到按钮的前面
aijuans
android
在低于SDK < 21 的版本中,ProgressBar 可以展示到按钮前面,并且为之在按钮的中间,但是切换到android 5.0后进度条ProgressBar 展示顺序变化了,按钮再前面,ProgressBar 在后面了我的xml配置文件如下:
[html]
view plain
copy
<RelativeLa
- 查询汇总的sql
baalwolf
sql
select list.listname, list.createtime,listcount from dream_list as list , (select listid,count(listid) as listcount from dream_list_user group by listid order by count(
- Linux du命令和df命令区别
BigBird2012
linux
1,两者区别
du,disk usage,是通过搜索文件来计算每个文件的大小然后累加,du能看到的文件只是一些当前存在的,没有被删除的。他计算的大小就是当前他认为存在的所有文件大小的累加和。
- AngularJS中的$apply,用还是不用?
bijian1013
JavaScriptAngularJS$apply
在AngularJS开发中,何时应该调用$scope.$apply(),何时不应该调用。下面我们透彻地解释这个问题。
但是首先,让我们把$apply转换成一种简化的形式。
scope.$apply就像一个懒惰的工人。它需要按照命
- [Zookeeper学习笔记十]Zookeeper源代码分析之ClientCnxn数据序列化和反序列化
bit1129
zookeeper
ClientCnxn是Zookeeper客户端和Zookeeper服务器端进行通信和事件通知处理的主要类,它内部包含两个类,1. SendThread 2. EventThread, SendThread负责客户端和服务器端的数据通信,也包括事件信息的传输,EventThread主要在客户端回调注册的Watchers进行通知处理
ClientCnxn构造方法
&
- 【Java命令一】jmap
bit1129
Java命令
jmap命令的用法:
[hadoop@hadoop sbin]$ jmap
Usage:
jmap [option] <pid>
(to connect to running process)
jmap [option] <executable <core>
(to connect to a
- Apache 服务器安全防护及实战
ronin47
此文转自IBM.
Apache 服务简介
Web 服务器也称为 WWW 服务器或 HTTP 服务器 (HTTP Server),它是 Internet 上最常见也是使用最频繁的服务器之一,Web 服务器能够为用户提供网页浏览、论坛访问等等服务。
由于用户在通过 Web 浏览器访问信息资源的过程中,无须再关心一些技术性的细节,而且界面非常友好,因而 Web 在 Internet 上一推出就得到
- unity 3d实例化位置出现布置?
brotherlamp
unity教程unityunity资料unity视频unity自学
问:unity 3d实例化位置出现布置?
答:实例化的同时就可以指定被实例化的物体的位置,即 position
Instantiate (original : Object, position : Vector3, rotation : Quaternion) : Object
这样你不需要再用Transform.Position了,
如果你省略了第二个参数(
- 《重构,改善现有代码的设计》第八章 Duplicate Observed Data
bylijinnan
java重构
import java.awt.Color;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.Label;
import java.awt.TextField;
import java.awt.event.FocusAdapter;
import java.awt.event.FocusE
- struts2更改struts.xml配置目录
chiangfai
struts.xml
struts2默认是读取classes目录下的配置文件,要更改配置文件目录,比如放在WEB-INF下,路径应该写成../struts.xml(非/WEB-INF/struts.xml)
web.xml文件修改如下:
<filter>
<filter-name>struts2</filter-name>
<filter-class&g
- redis做缓存时的一点优化
chenchao051
redishadooppipeline
最近集群上有个job,其中需要短时间内频繁访问缓存,大概7亿多次。我这边的缓存是使用redis来做的,问题就来了。
首先,redis中存的是普通kv,没有考虑使用hash等解结构,那么以为着这个job需要访问7亿多次redis,导致效率低,且出现很多redi
- mysql导出数据不输出标题行
daizj
mysql数据导出去掉第一行去掉标题
当想使用数据库中的某些数据,想将其导入到文件中,而想去掉第一行的标题是可以加上-N参数
如通过下面命令导出数据:
mysql -uuserName -ppasswd -hhost -Pport -Ddatabase -e " select * from tableName" > exportResult.txt
结果为:
studentid
- phpexcel导出excel表简单入门示例
dcj3sjt126com
PHPExcelphpexcel
先下载PHPEXCEL类文件,放在class目录下面,然后新建一个index.php文件,内容如下
<?php
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
if (PHP_SAPI == 'cli')
die('
- 爱情格言
dcj3sjt126com
格言
1) I love you not because of who you are, but because of who I am when I am with you. 我爱你,不是因为你是一个怎样的人,而是因为我喜欢与你在一起时的感觉。 2) No man or woman is worth your tears, and the one who is, won‘t
- 转 Activity 详解——Activity文档翻译
e200702084
androidUIsqlite配置管理网络应用
activity 展现在用户面前的经常是全屏窗口,你也可以将 activity 作为浮动窗口来使用(使用设置了 windowIsFloating 的主题),或者嵌入到其他的 activity (使用 ActivityGroup )中。 当用户离开 activity 时你可以在 onPause() 进行相应的操作 。更重要的是,用户做的任何改变都应该在该点上提交 ( 经常提交到 ContentPro
- win7安装MongoDB服务
geeksun
mongodb
1. 下载MongoDB的windows版本:mongodb-win32-x86_64-2008plus-ssl-3.0.4.zip,Linux版本也在这里下载,下载地址: http://www.mongodb.org/downloads
2. 解压MongoDB在D:\server\mongodb, 在D:\server\mongodb下创建d
- Javascript魔法方法:__defineGetter__,__defineSetter__
hongtoushizi
js
转载自: http://www.blackglory.me/javascript-magic-method-definegetter-definesetter/
在javascript的类中,可以用defineGetter和defineSetter_控制成员变量的Get和Set行为
例如,在一个图书类中,我们自动为Book加上书名符号:
function Book(name){
- 错误的日期格式可能导致走nginx proxy cache时不能进行304响应
jinnianshilongnian
cache
昨天在整合某些系统的nginx配置时,出现了当使用nginx cache时无法返回304响应的情况,出问题的响应头: Content-Type:text/html; charset=gb2312 Date:Mon, 05 Jan 2015 01:58:05 GMT Expires:Mon , 05 Jan 15 02:03:00 GMT Last-Modified:Mon, 05
- 数据源架构模式之行数据入口
home198979
PHP架构行数据入口
注:看不懂的请勿踩,此文章非针对java,java爱好者可直接略过。
一、概念
行数据入口(Row Data Gateway):充当数据源中单条记录入口的对象,每行一个实例。
二、简单实现行数据入口
为了方便理解,还是先简单实现:
<?php
/**
* 行数据入口类
*/
class OrderGateway {
/*定义元数
- Linux各个目录的作用及内容
pda158
linux脚本
1)根目录“/” 根目录位于目录结构的最顶层,用斜线(/)表示,类似于
Windows
操作系统的“C:\“,包含Fedora操作系统中所有的目录和文件。 2)/bin /bin 目录又称为二进制目录,包含了那些供系统管理员和普通用户使用的重要
linux命令的二进制映像。该目录存放的内容包括各种可执行文件,还有某些可执行文件的符号连接。常用的命令有:cp、d
- ubuntu12.04上编译openjdk7
ol_beta
HotSpotjvmjdkOpenJDK
获取源码
从openjdk代码仓库获取(比较慢)
安装mercurial Mercurial是一个版本管理工具。 sudo apt-get install mercurial
将以下内容添加到$HOME/.hgrc文件中,如果没有则自己创建一个: [extensions] forest=/home/lichengwu/hgforest-crew/forest.py fe
- 将数据库字段转换成设计文档所需的字段
vipbooks
设计模式工作正则表达式
哈哈,出差这么久终于回来了,回家的感觉真好!
PowerDesigner的物理数据库一出来,设计文档中要改的字段就多得不计其数,如果要把PowerDesigner中的字段一个个Copy到设计文档中,那将会是一件非常痛苦的事情。