- iOS渠道跟踪 3中方案的利弊(干货)
邂逅阳光
总的来说有三种方案(1、2点算一条)1、使用SFSafariViewController来获取safari内的cookie,后来发现ios11之后是获取不到的,这一方案只适用于(ios9~ios11以下)2、ios11之后SFAuthenticationSession代替了SFSafariViewController共享cookie,但SFAuthenticationSession是OC语言的一个
- iOS 解决 veiw 之间 因为父view alpha 等于0 导致全部透明的问题
村雨灬龑
首先先看一段代码,矛盾的起因,因为父view的alpha=0,而又想让子view能够显示出来,不受父view的alpha=0的影响。UIView*view=[[UIViewalloc]init];view.backgroundColor=[UIColorredColor];//因为下面的label没有显示是因为父view的alpha=0view.alpha=0;view.frame=CGRectM
- HarmonyOS之UIAbility简介
在HarmonyOS(尤其是版本5+的Stage模型)中,UIAbility是构建用户界面的核心组件,负责展示页面、管理界面生命周期,并与用户交互。以下是它的完整介绍1.什么是UIAbility?UIAbility是Stage模型下的组件类型,继承自Ability,是系统调度的基本单位。主要用于显示界面和处理用户交互,类似Android的Activity或iOS的UIViewController。
- iOS hitTest:withEvent:
豪冷
前言处理自定义视图内超出视图范围的子视图事件重写#pragmamark---override-(UIView*)hitTest:(CGPoint)pointwithEvent:(UIEvent*)event{if(!self.isUserInteractionEnabled||self.isHidden||self.alpha<0.01){returnnil;}for(UIView*viewin[
- 2.1 UIView视图的基本使用 [iOS开发-Xcode教程]
互动教程网
1.在欢迎窗口右侧的历史项目列表中,双击打开之前创建的单视图项目模板。image2.本节课将为您演示,如何创建最基本的视图对象。在此使用之前创建的空白项目,然后打开视图控制器的代码文件。image3.接着我们来一步步编写代码,在视图控制器的根视图里,添加两个视图对象。image4.初始化一个CGRect对象,它在屏幕上定义了一个矩形的显示区域。包含了对象的原点位置,和大小尺寸信息。image5.创
- Kotlin泛型之 循环引用泛型(A的泛型是B的子类,B的泛型是A的子类)
IDE(编辑器)报错循环引用泛型是我起的名字,不知道官方的名字是什么。这个问题是我在定义Android的MVP时提出来的。具体是什么样的呢?我们看一下我的基础的MVP定义:interfaceIPresenter{fungetView():V}interfaceIView{fungetPresenter():P}这里我定义了一个View和Presenter的接口,但是实际上这两个东西现在没什么关联。
- 苹果UI 设计
蒙小萌1993
uicocoamacos
不同平台不同框架以下是对iOSUIKit核心组件(AppDelegate、UIWindow、UIViewController、UIView、UINavigationController)的深度解析,依据Apple官方文档的设计哲学和实现原理:核心组件关系与架构或者通常为点击手机应用图标UIApplicationAppDelegateUIWindowrootViewControllerUITable
- (05-29) textView和textField设置光标后移
shushuzhen
//这里设置光标位置,让光标位置后移10textField.leftView=[[UIViewalloc]initWithFrame:CGRectMake(0,0,10,0)];textField.leftViewMode=UITextFieldViewModeAlways;//这里设置光标位置,让光标位置后移10textView.textContainer.lineFragmentPadding
- Django Rest Framework 视图和路由
Matrix 工作室
从源代码学Python
DRF的视图APIView我们django中写CBV的时候继承的是View,rest_framework继承的是APIView,那么他们两个有什么不同呢urlpatterns=[url(r'^book$',BookView.as_view()),url(r'^book/(?P\d+)$'
- 基于迁移学习的多视图卷积神经网络在乳腺超声自动分类中的应用
despacito,
论文精读-乳腺超声分类
BREASTCANCERCLASSIFICATIONINAUTOMATEDBREASTULTRASOUNDUSINGMULTIVIEWCONVOLUTIONALNEURALNETWORKWITHTRANSFERLEARNINGYIWANG,*,1EUNJUNGCHOI,y,1YOUNHEECHOI,*HAOZHANG,*GONGYONGJIN,yandSEOK-BUMKO*TAGGEDEND*De
- drawRect 触发时机
在iOS开发中,**UIView**的**drawRect:**方法(或其底层**CALayer**的绘制)的触发时机是由系统控制的,开发者不能直接调用这些方法。以下是触发视图绘制的完整机制:一、核心触发时机1.视图首次显示当视图被添加到视图层级时:[self.viewaddSubview:customView];//触发首次绘制2.显式标记需要重绘调用以下方法强制重绘://标记整个视图需要重绘[
- UIView和CALayer是啥关系
有没有人告诉你
1.首先UIView可以响应事件,Layer不可以.UIKit使用UIResponder作为响应对象,来响应系统传递过来的事件并进行处理。在UIResponder中定义了处理各种事件和事件传递的接口。UIApplication、UIViewController、UIView、和所有从UIView派生出来的UIKit类(包括UIWindow)都直接或间接地继承自UIResponder类。CALaye
- Django REST framework - 缓存
djangopython
一位女性有着非常敏锐的意识,但几乎没有记忆力……她的记忆力足以工作,而且她工作很努力。——莉迪亚·戴维斯RESTFramework中的缓存与Django提供的缓存工具配合得很好。在APIView和ViewSet中使用缓存Django提供了一个method_decorator,用于在基于类的视图中使用装饰器。这可以与其他缓存装饰器一起使用,如cache_page、vary_on_cookie和var
- Django REST framework - 视图
pythondjango
类视图Django的类视图是一种令人欢迎的创新,摒弃了旧式的视图风格。—ReinoutvanReesRESTframework提供了一个APIView类,该类继承自Django的View类。与普通的View类相比,APIView类具有以下不同之处:传递给处理方法的请求将是RESTframework的Request实例,而不是Django的HttpRequest实例。处理方法可以返回RESTfram
- UIKit框架使用总结--看看你掌握了多少
CCCCCC1990
ui
一、经常使用的,基本就是每次项目迭代都需要使用的UIView、UILabel、UIImage、UIColor、UIFont、UIImageView、UITextField、UIButton、UIScrollView、UITableView、UITableViewCell、UICollectionView、UICollectionViewCell、UITextView、UIViewControlle
- 从vue-i18n来分析vue插件是如何工作的
weixin_34365635
javascriptuiViewUI
故事背景vue-i18n是vue代码贡献量第二的vuecoreteam的一位日本小哥写的,虽是第三方插件,用起来心里也舒服.github里搜了vuei18n,结果有不少,有一些很粗糙的,甚至用jquery的lib都有六七十个star.(阻断吐槽).厉害的人明显在设计上代码上都高很多档次吧.今天的故事的主角repo是:vue-i18n与iView.在使用他们的时候报错了,查看了issue,在issu
- iOS-开发小技巧
XR_Code
ios开发小技巧ios开发uitableviewuiview
在这里总结一些iOS开发中的小技巧,能大大方便我们的开发,持续更新。UITableView的Group样式下顶部空白处理//分组列表头部空白处理UIView*view=[[UIViewalloc]initWithFrame:CGRectMake(0,0,0,0.1)];self.tableView.tableHeaderView=view;获取某个view所在的控制器-(UIViewControl
- DRF终极指南:从请求响应到视图集路由的深度解析
python_chai
python开发语言
本文全面解析DjangoRESTFramework核心机制,涵盖请求处理、视图演进、路由配置等高级用法,助你彻底掌握API开发精髓!目录一、DRF请求与响应机制1.1Request对象解析核心属性解析:1.2Response对象构建1.3HTTP状态码常量二、DRF视图演进之路2.1基础视图类(APIView)2.2通用视图类(GenericAPIView)2.3五大Mixin扩展类2.4九大视图
- Django中使用流式响应,自己也能实现ChatGPT的效果
xiaoming0018
chatgptdjango后端python
最近在研究ChatGPT的时候,想通过openai提供的接口使国内用户也可以无限制访问,于是打算基于django开发一款应用。页面的渲染也得想ChatGPT一样采用流式响应,django中StreamingHttpResponse是支持流式响应的一种方式。django代码classChatView(APIView):defget(self,request,*args,**kwargs):promp
- VUE常用UI组件插件及框架
ctf_0226
vue.jsui前端
UI组件及框架element-饿了么出品的Vue2的webUI工具套件mint-ui-Vue2的移动UI元素iview-基于Vuejs的开源UI组件库Keen-UI-轻量级的基本UI组件合集vue-material-通过VueMaterial和Vue2建立精美的app应用muse-ui-三端样式一致的响应式UI库vuetify-为移动而生的VueJS2组件框架vonic-快速构建移动端单页应用vu
- MVC+vue.js+iview
灯琰1
mvc+vue
项目需要,最近在学vue.js,领导决定用iview这个ui,于是写了这个基于MVC的例子。前端代码iviewexample@**@.ivu-table.demo-table-info-rowtd{background-color:#2db7f5;color:#fff;}.ivu-table.demo-table-error-rowtd{background-color:#ff6600;color
- iview框架主题色的应用
武昌库里写JAVA
面试题汇总与解析课程设计springbootvue.jslayui毕业设计
1.下载less要使用3.0.0以下的版本
[email protected]@4.0.52./src/config/theme.js文件module.exports={yellow:{'theme-color':'#FDCE04'},blue:{'theme-color':'#547CE7'}}在sass中使用theme配置的颜色主题,无需引入,直接
- 关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案
武昌库里写JAVA
面试题汇总与解析课程设计springbootvue.jslayui毕业设计
问题描述:iview使用table中type:"index",分页之后,索引还是从1开始,试过绑定后台返回数据的id,这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了解决方法。使用render:{type:'index2',width:60,align:'center',render:(h,params)=>{returnh('span',params
- iview carousel 图片不显示;iview 轮播图 图片无法显示(转载)
weixin_30740295
javascriptViewUI
转载来源:https://segmentfault.com/q/1010000016778108相关代码受@熊猫酒仙简便的方法,给carousel加一个v-if指令,值与你控制modal的booean值绑定,这样carousel就会延迟初始化,达到计算listwidth不让其未0的效果这个问题是宽度为0导致的。从源码中可以看出,宽度在页面初始化(mounted)的时候就已经计算了,this.han
- iOS 直播特殊礼物特效实现方案(Swift实现,超详细!)
I烟雨云渊T
iosswiftcocoa
特殊礼物特效是提升直播互动体验的关键功能,下面我将详细介绍如何在iOS应用中实现各种高级礼物特效。基础特效类型1.1全屏动画特效classFullScreenAnimationView:UIView{staticfuncshow(withgift:GiftModel,inview:UIView){leteffectView=FullScreenAnimationView(gift:gift)eff
- 32、跨平台咒语—— React Native初探
进取星辰
reactnativereact.jsjavascript
一、时空晶体架构(核心原理)1.量子组件桥接协议//原生组件映射 →iOSUIView/AndroidViewGroup →UILabel/TextView 魔法特性:•JavaScriptCore引擎:通过V8/Hermes引擎执行JS逻辑,构建跨平台抽象渲染树•原生桥接层:JS代码与原生UI组件形成量子纠缠,自动转换为iOS/Android原生视图•Flexbox布局引擎:弹性布局系统适配
- vue3 + threejs 实现仿iView官网大波浪特效
sea9528
vue前端javascriptvue.jsjavascript前端three.js
一、效果图先上最终效果图:具体效果可参考iview官方界面iView-一套高质量的UI组件库大波浪效果,使用的是three.js的官方例子,需要先安装three.js支持,具体可以看官方实例three.jsexamples(threejs.org)二、代码1.安装threejsnpminstall--savethree2.代码(复制可用)components文件夹新建组件waves.vue,直接复
- iView Admin的side menu改为top menu
武昌库里写JAVA
面试题汇总与解析springbootvue.js宠物管理课程设计java
和iViewAdmin结缘于某次在“顾问群”里问,“有什么开源前端框架推荐吗?”。群里一位老开发答,“试试iViewAdmin”。于是我就试了试,发现很好用,对新手也很友好,试过撸一个管理后台的前端用了4天,感觉效率还可以。最近需要定制“无侧滑菜单,改用顶部下拉菜单”的效果,所以开始分析下源码。看/src/router/router.js里原始定义的路由,可以看到首页路由使用的component是
- iview 分页改变每页条数时请求两次问题
武昌库里写JAVA
面试题汇总与解析课程设计springbootvue.jslayui毕业设计
问题在iviewpage分页的时候,修改每页条数时,会发出两次请求。iview版本是4.0.0原因iview的分页在调用@on-page-size-change之前会调用@on-Change。默认会先调用@on-Change回到第一页,再调用@on-page-size-change改变分页显示数量此时就会出现回到第一页,在返回调用@on-page-size-change时的页数,造成当前页没有数据
- iview自定义下拉树菜单
caihuayuan5
面试题汇总与解析springbootjava后端大数据课程设计
最近由于项目需要,封装了第二种下拉树,带checkBox并且可以支持快速选择的下拉树。样式如下自定义下拉树菜单.png所实现交互功能如下:1.点击对应的层级按钮,自动勾选出对应的所有同级节点。2.点击自定义,清空所有勾选的节点。3.勾选中不同层级的节点或同层级节点并没有全部选中,自动切换到自定义节点,并保存之前勾选的节点不清空。4.在自定义中,若勾选的节点是同一个层级且此层级节点全部被选中,自动切
- ASM系列五 利用TreeApi 解析生成Class
lijingyao8206
ASM字节码动态生成ClassNodeTreeAPI
前面CoreApi的介绍部分基本涵盖了ASMCore包下面的主要API及功能,其中还有一部分关于MetaData的解析和生成就不再赘述。这篇开始介绍ASM另一部分主要的Api。TreeApi。这一部分源码是关联的asm-tree-5.0.4的版本。
在介绍前,先要知道一点, Tree工程的接口基本可以完
- 链表树——复合数据结构应用实例
bardo
数据结构树型结构表结构设计链表菜单排序
我们清楚:数据库设计中,表结构设计的好坏,直接影响程序的复杂度。所以,本文就无限级分类(目录)树与链表的复合在表设计中的应用进行探讨。当然,什么是树,什么是链表,这里不作介绍。有兴趣可以去看相关的教材。
需求简介:
经常遇到这样的需求,我们希望能将保存在数据库中的树结构能够按确定的顺序读出来。比如,多级菜单、组织结构、商品分类。更具体的,我们希望某个二级菜单在这一级别中就是第一个。虽然它是最后
- 为啥要用位运算代替取模呢
chenchao051
位运算哈希汇编
在hash中查找key的时候,经常会发现用&取代%,先看两段代码吧,
JDK6中的HashMap中的indexFor方法:
/**
* Returns index for hash code h.
*/
static int indexFor(int h, int length) {
- 最近的情况
麦田的设计者
生活感悟计划软考想
今天是2015年4月27号
整理一下最近的思绪以及要完成的任务
1、最近在驾校科目二练车,每周四天,练三周。其实做什么都要用心,追求合理的途径解决。为
- PHP去掉字符串中最后一个字符的方法
IT独行者
PHP字符串
今天在PHP项目开发中遇到一个需求,去掉字符串中的最后一个字符 原字符串1,2,3,4,5,6, 去掉最后一个字符",",最终结果为1,2,3,4,5,6 代码如下:
$str = "1,2,3,4,5,6,";
$newstr = substr($str,0,strlen($str)-1);
echo $newstr;
- hadoop在linux上单机安装过程
_wy_
linuxhadoop
1、安装JDK
jdk版本最好是1.6以上,可以使用执行命令java -version查看当前JAVA版本号,如果报命令不存在或版本比较低,则需要安装一个高版本的JDK,并在/etc/profile的文件末尾,根据本机JDK实际的安装位置加上以下几行:
export JAVA_HOME=/usr/java/jdk1.7.0_25  
- JAVA进阶----分布式事务的一种简单处理方法
无量
多系统交互分布式事务
每个方法都是原子操作:
提供第三方服务的系统,要同时提供执行方法和对应的回滚方法
A系统调用B,C,D系统完成分布式事务
=========执行开始========
A.aa();
try {
B.bb();
} catch(Exception e) {
A.rollbackAa();
}
try {
C.cc();
} catch(Excep
- 安墨移动广 告:移动DSP厚积薄发 引领未来广 告业发展命脉
矮蛋蛋
hadoop互联网
“谁掌握了强大的DSP技术,谁将引领未来的广 告行业发展命脉。”2014年,移动广 告行业的热点非移动DSP莫属。各个圈子都在纷纷谈论,认为移动DSP是行业突破点,一时间许多移动广 告联盟风起云涌,竞相推出专属移动DSP产品。
到底什么是移动DSP呢?
DSP(Demand-SidePlatform),就是需求方平台,为解决广 告主投放的各种需求,真正实现人群定位的精准广
- myelipse设置
alafqq
IP
在一个项目的完整的生命周期中,其维护费用,往往是其开发费用的数倍。因此项目的可维护性、可复用性是衡量一个项目好坏的关键。而注释则是可维护性中必不可少的一环。
注释模板导入步骤
安装方法:
打开eclipse/myeclipse
选择 window-->Preferences-->JAVA-->Code-->Code
- java数组
百合不是茶
java数组
java数组的 声明 创建 初始化; java支持C语言
数组中的每个数都有唯一的一个下标
一维数组的定义 声明: int[] a = new int[3];声明数组中有三个数int[3]
int[] a 中有三个数,下标从0开始,可以同过for来遍历数组中的数
- javascript读取表单数据
bijian1013
JavaScript
利用javascript读取表单数据,可以利用以下三种方法获取:
1、通过表单ID属性:var a = document.getElementByIdx_x_x("id");
2、通过表单名称属性:var b = document.getElementsByName("name");
3、直接通过表单名字获取:var c = form.content.
- 探索JUnit4扩展:使用Theory
bijian1013
javaJUnitTheory
理论机制(Theory)
一.为什么要引用理论机制(Theory)
当今软件开发中,测试驱动开发(TDD — Test-driven development)越发流行。为什么 TDD 会如此流行呢?因为它确实拥有很多优点,它允许开发人员通过简单的例子来指定和表明他们代码的行为意图。
TDD 的优点:
&nb
- [Spring Data Mongo一]Spring Mongo Template操作MongoDB
bit1129
template
什么是Spring Data Mongo
Spring Data MongoDB项目对访问MongoDB的Java客户端API进行了封装,这种封装类似于Spring封装Hibernate和JDBC而提供的HibernateTemplate和JDBCTemplate,主要能力包括
1. 封装客户端跟MongoDB的链接管理
2. 文档-对象映射,通过注解:@Document(collectio
- 【Kafka八】Zookeeper上关于Kafka的配置信息
bit1129
zookeeper
问题:
1. Kafka的哪些信息记录在Zookeeper中 2. Consumer Group消费的每个Partition的Offset信息存放在什么位置
3. Topic的每个Partition存放在哪个Broker上的信息存放在哪里
4. Producer跟Zookeeper究竟有没有关系?没有关系!!!
//consumers、config、brokers、cont
- java OOM内存异常的四种类型及异常与解决方案
ronin47
java OOM 内存异常
OOM异常的四种类型:
一: StackOverflowError :通常因为递归函数引起(死递归,递归太深)。-Xss 128k 一般够用。
二: out Of memory: PermGen Space:通常是动态类大多,比如web 服务器自动更新部署时引起。-Xmx
- java-实现链表反转-递归和非递归实现
bylijinnan
java
20120422更新:
对链表中部分节点进行反转操作,这些节点相隔k个:
0->1->2->3->4->5->6->7->8->9
k=2
8->1->6->3->4->5->2->7->0->9
注意1 3 5 7 9 位置是不变的。
解法:
将链表拆成两部分:
a.0-&
- Netty源码学习-DelimiterBasedFrameDecoder
bylijinnan
javanetty
看DelimiterBasedFrameDecoder的API,有举例:
接收到的ChannelBuffer如下:
+--------------+
| ABC\nDEF\r\n |
+--------------+
经过DelimiterBasedFrameDecoder(Delimiters.lineDelimiter())之后,得到:
+-----+----
- linux的一些命令 -查看cc攻击-网口ip统计等
hotsunshine
linux
Linux判断CC攻击命令详解
2011年12月23日 ⁄ 安全 ⁄ 暂无评论
查看所有80端口的连接数
netstat -nat|grep -i '80'|wc -l
对连接的IP按连接数量进行排序
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
查看TCP连接状态
n
- Spring获取SessionFactory
ctrain
sessionFactory
String sql = "select sysdate from dual";
WebApplicationContext wac = ContextLoader.getCurrentWebApplicationContext();
String[] names = wac.getBeanDefinitionNames();
for(int i=0; i&
- Hive几种导出数据方式
daizj
hive数据导出
Hive几种导出数据方式
1.拷贝文件
如果数据文件恰好是用户需要的格式,那么只需要拷贝文件或文件夹就可以。
hadoop fs –cp source_path target_path
2.导出到本地文件系统
--不能使用insert into local directory来导出数据,会报错
--只能使用
- 编程之美
dcj3sjt126com
编程PHP重构
我个人的 PHP 编程经验中,递归调用常常与静态变量使用。静态变量的含义可以参考 PHP 手册。希望下面的代码,会更有利于对递归以及静态变量的理解
header("Content-type: text/plain");
function static_function () {
static $i = 0;
if ($i++ < 1
- Android保存用户名和密码
dcj3sjt126com
android
转自:http://www.2cto.com/kf/201401/272336.html
我们不管在开发一个项目或者使用别人的项目,都有用户登录功能,为了让用户的体验效果更好,我们通常会做一个功能,叫做保存用户,这样做的目地就是为了让用户下一次再使用该程序不会重新输入用户名和密码,这里我使用3种方式来存储用户名和密码
1、通过普通 的txt文本存储
2、通过properties属性文件进行存
- Oracle 复习笔记之同义词
eksliang
Oracle 同义词Oracle synonym
转载请出自出处:http://eksliang.iteye.com/blog/2098861
1.什么是同义词
同义词是现有模式对象的一个别名。
概念性的东西,什么是模式呢?创建一个用户,就相应的创建了 一个模式。模式是指数据库对象,是对用户所创建的数据对象的总称。模式对象包括表、视图、索引、同义词、序列、过
- Ajax案例
gongmeitao
Ajaxjsp
数据库采用Sql Server2005
项目名称为:Ajax_Demo
1.com.demo.conn包
package com.demo.conn;
import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;
//获取数据库连接的类public class DBConnec
- ASP.NET中Request.RawUrl、Request.Url的区别
hvt
.netWebC#asp.nethovertree
如果访问的地址是:http://h.keleyi.com/guestbook/addmessage.aspx?key=hovertree%3C&n=myslider#zonemenu那么Request.Url.ToString() 的值是:http://h.keleyi.com/guestbook/addmessage.aspx?key=hovertree<&
- SVG 教程 (七)SVG 实例,SVG 参考手册
天梯梦
svg
SVG 实例 在线实例
下面的例子是把SVG代码直接嵌入到HTML代码中。
谷歌Chrome,火狐,Internet Explorer9,和Safari都支持。
注意:下面的例子将不会在Opera运行,即使Opera支持SVG - 它也不支持SVG在HTML代码中直接使用。 SVG 实例
SVG基本形状
一个圆
矩形
不透明矩形
一个矩形不透明2
一个带圆角矩
- 事务管理
luyulong
javaspring编程事务
事物管理
spring事物的好处
为不同的事物API提供了一致的编程模型
支持声明式事务管理
提供比大多数事务API更简单更易于使用的编程式事务管理API
整合spring的各种数据访问抽象
TransactionDefinition
定义了事务策略
int getIsolationLevel()得到当前事务的隔离级别
READ_COMMITTED
- 基础数据结构和算法十一:Red-black binary search tree
sunwinner
AlgorithmRed-black
The insertion algorithm for 2-3 trees just described is not difficult to understand; now, we will see that it is also not difficult to implement. We will consider a simple representation known
- centos同步时间
stunizhengjia
linux集群同步时间
做了集群,时间的同步就显得非常必要了。 以下是查到的如何做时间同步。 在CentOS 5不再区分客户端和服务器,只要配置了NTP,它就会提供NTP服务。 1)确认已经ntp程序包: # yum install ntp 2)配置时间源(默认就行,不需要修改) # vi /etc/ntp.conf server pool.ntp.o
- ITeye 9月技术图书有奖试读获奖名单公布
ITeye管理员
ITeye
ITeye携手博文视点举办的9月技术图书有奖试读活动已圆满结束,非常感谢广大用户对本次活动的关注与参与。 9月试读活动回顾:http://webmaster.iteye.com/blog/2118112本次技术图书试读活动的优秀奖获奖名单及相应作品如下(优秀文章有很多,但名额有限,没获奖并不代表不优秀):
《NFC:Arduino、Andro