自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

super_zq的博客

存档和笔记

  • 博客(47)
  • 资源 (4)
  • 收藏
  • 关注

原创 C++ ifstream中的定位操作seekg调用之前,必须先调用clear()

标题就是所有的内容。ifstream is("somefile.txt");is.clear();//必须先调用这个,清除flagis.seekg(0);//才能用这个设定到文件开头

2017-10-16 16:32:41 7742 1

原创 C++ 之静态成员 初始化必须在定义外

如题一般情况下,C++定义一个类会用2个文件,“class.h”和 “class.cpp”, 使用的时候一般会让函数在.h中声明,然后.cpp中定义,而成员数据一般在构造函数或者.h中就初始化了。然而,static修饰的静态数据成员,必须在类的声明以外来初始化。也就是说如下://.hclass Cls{ private: Cls(); ~Cls();

2017-08-30 16:00:55 1522

原创 Javascript / jQuery 笔记 DOM 对象和jQuery对象的转换

编写到如下代码$('.menu').click(function(){ //do something with 'this' //这里用到了this这个属性});在这里,this指代的是一个普通的DOM对象,比如[Object HTMLDivElement] 要操作,就要用到普通的javascript方法。如果需要使用jQuery的方法,那么需要转换成jQuery的节点对象(显示

2017-06-11 22:12:05 345

原创 Android 笔记 NDK/JNI的使用

NDK / JNI本来,使用JAVA语言是很和谐的。但是因为天生的缺陷,很多功能需要调用本地代码。看惯了JAVA语言以后再回头看C/C++,感觉很是头疼。然而,该用的还是少不了。暂且把有用的网页记下来,待以后有更多需要记笔记的时候再补充。NDK 入门指南 JNI Tips 向您的项目添加 C 和 C++ 代码 Android NDK 开发 史上最详细Android Studio + ND

2017-05-26 12:22:52 379

原创 Android 笔记 进程间通信

进程间通信同一个apk文件安装的app下的所有部件(大概)都是同一个进程的。所以这里讲的进程间通信,指的是不同app之间的通信。实际上,我觉得,如果不同的app通信,用intent,broadcastReceiver就可以了,不过既然有通信的方法,研究一下也无妨。网络上的例子,包括官网的例子里面,会用到Service部件。这个部件有一点要指出的是: Service和同app的其他部件是在同一个进程

2017-05-25 01:36:16 412

原创 Android 笔记 transition 补充 --content transition / activity transition

Content Transition探索安卓中有意义的动画!深入理解Content Transition 深入理解共享元素变换(Shared Element Transition)之前有了解过transition,可以设定activity的转换动画。但是总觉得有点奇怪。因为官方api定制的activity转换动画用来设置到transition上的就只有3个,slide,explode,fade,并

2017-05-19 01:05:32 1028

原创 Android 笔记 - 点击 水波纹效果-续

还是点击水波纹效果之前有讨论过点击水波纹效果,当时没仔细看,就了解了一个最基本的办法//在控件里加入如下属性值即可: //圆形波纹 android:background=”?android:attr/selectableItemBackgroundBorderless” //有边界波纹 android:background=”?android:attr/selectableItemBackg

2017-05-12 13:25:46 677

原创 C/C++/JAVA 二进制/十六进制 的应用 :大数(超过32位二进制数),按位逻辑运算,属性值设置,等

按位逻辑运算,属性设置按位逻辑运算在高效率的数据操作中应用很多,平时用的高级语言里面,多数时候不需要我们去手动设置这些,因为已经被封装在各种模块/类里面了。在需要手动定义一些功能的时候,这些运算方法很值得使用。 有一点要注意就是,所有按位运算都是二进制位的按位运算,如果数据采用十进制或者十六进制表示,实际上也是采用二进制的按位运算。按位与: & 0&0=0; 1&0=0; 0&1=0; 1&1=1

2017-05-06 03:11:30 2070

原创 关于碰撞检测

碰撞检测之前做碰撞检测的时候,我居然一直都用的最原始的办法 也就是if()来判断未知是否越界的办法。我就总觉得肯定有一种比较聪明的办法的,一直想不出来(根本没有去想)。那么刚才在一本书上找到了,貌似之前见过,但是一直没有注意。比如,我需要检测一个不断移动的坐标 x, 判断它是否越界,边界分别是Edge_min和Edge_max那么可以用如下的语句来设置这个坐标xx = Math.min(

2017-04-26 22:04:06 780

原创 C++ 笔记 关于多态的跟java不一样的使用方法

多态使用面向对象语言的时候,熟练的运用多态是必须的。虽然我最早学的是C/C++,但是那个时候学的都是皮毛,入了个门而已,真正深入的理解面向对象语言是从JAVA开始的。JAVA是一个非常人性化的语言,易学易用,其中多态的使用也非常容易理解。但是C++里面,虽然功能上相对于JAVA没有任何差别,但是使用起来貌似要更复杂一点。1,基类和子类的函数调用区别 JAVA://SuperClass 扩展出 M

2017-02-25 13:49:33 322

原创 C++ 笔记 关于动态内存分配 (new / delete)

C语言里面的动态内存分配用的是malloc()/calloc()和free()其中,malloc用于分配一个单位的内存,返回指针。例如malloc(sizeof int) calloc用于分配多个内存,形成数组,返回指向第一个位置的指针。例如calloc(10,sizeof int) free(*ptr)用于释放ptr指向的空间另外还有一个realloc(*ptr,size)可以为ptr指向的空

2017-02-24 02:38:28 496

原创 Android 笔记 canvas.save()

canvas.save()/ restore()在自定义view并且重写onDraw的时候,经常会用到canvas的坐标变换类的方法比如canvas.rotate,canvas.tranlate,scale,或者直接使用matrix的concat(Matrix m)等等。但是有一点要记得,那就是这些变换的方法是作用于整个canvas的,而不是单独某一个图像。 相当于是用普通的坐标在canvas上绘

2017-01-26 12:48:25 433

原创 Android 笔记 - 从图像中扣一个洞出来 ……

如题我发现,用canvas绘图如果只是创造一些图形倒还容易,无非就是麻烦一点。 但是我居然一下想不到怎么从图像中扣出一个透明的圆形来。方形的很容易嘛,可以在四周绘制几个方形,把中间空出来就可以了,已经实现了。但是没办法让中间空出一个圆形的来。比如说,类似扫码的界面,就中间一个扫码区域可用,其他区域是半透明的,或者是一个蒙版,把需要特写的地方空出来,其他地方是半透明的。找到了两个解决办法第一个方法:

2017-01-25 02:49:02 3060

原创 Android 笔记 transition / 转换动画

Transition之前有了解一丁点转换动画,比如说不同activity之间转换的动画,或者公共部件之间的转换动画,笔记做的很简略。这里又(稍微)仔细的了解了一下官网的关于转换动画的介绍。使用transition framwork Material-Animations,就是上面那条的英文版,还有例子 Transition-android developer 定义定制动画-android de

2017-01-23 16:42:44 612

原创 Android 笔记 快捷方式 / 桌面小组件

快捷方式安卓系统可以有专门的桌面,跟WINDOWS的桌面很像,可以选择放置哪些app,不放置哪些app,还可以添加小组件(app widget)。而所有程序会放置在专门的界面中。这一点跟ios有些不一样。当然,很多rom可以选择跟ios一样的单屏界面,所有的app都会显示。具体的没有操作过,因为我就一个手机。而创建快捷方式的方法一般是在所有程序的界面中按住app图标不放,然后拖动到想要的位置。很多时

2017-01-09 19:50:48 1077

原创 Android 笔记 imagebutton 点击水波纹背景效果

很多时候需要设置imagebutton或者其他类似组件的背景,图像也好,动画也好,颜色也好。但是有一点。自定义之前,可以看到可点击元素有点击水波纹效果。自定义以后,就没有了。其实,这个效果是在style里面定义的,当自定义了background了以后,就覆盖了style里面的定义了。可以简单的设置背景为selector的drawable,可以让使用者确认是否点击成功。但是我还是希望能实现原始的水波纹

2016-12-30 00:12:38 5968 1

原创 Android 笔记 屏幕亮度最大/常亮

屏幕亮度最大/常亮似乎找到一个更简单,更有效的方法来实现屏幕亮度最大化。之前有一个方法,也是网上不知道哪里找来的,但是设置起来相当麻烦,我都不想提,以后如果没有笔记甚至都不知道怎么下手。今天又找到一个简单的设置办法。Window是android的一个抽象类,用来描述当前应用的窗口。 可以像普通的view一样获得window的layoutParams,然后设置里面的属性,然后设置到window里面去

2016-12-29 02:05:27 2684

原创 JAVA/Android 笔记 Atomic / ExcuterService

Atomic普通情况需要线程安全我们会选择用synchronized。但是这样有时候会因为程序错误造成死锁,或者根本就没有用对地方导致根本就没有同步。所以使用synchronized的时候需要仔细的测试。JAVA 1.5以后提供了一个新的包 java.util.concurrent,里面有很多为线程并行程序提供支持的类。 而这个包下面还有一个包:java.util.concurrent.atom

2016-12-18 03:06:26 647

原创 Android/JAVA 笔记 同步操作/synchronized / wait()/ notify()

synchronized编写程序离不开多线程操作。而多线程又离不开同步操作。这是很重要的。java语言有一个关键词synchronized可以应多同步操作。之前学习的时候我没有怎么去理解这个东西。最近在研究延迟操作和animator的时候顺便把这个弄清白了,就在这里记录一下。可以对一个方法标记,那么每次就只有一个线程能进入这个方法对一个代码块标记,同上。而且对代码块标记的时候会指定一个对象,是为

2016-12-17 03:31:17 793

原创 JAVA/Android 笔记 定时/循环任务以及动画(Animator)

定时任务/循环任务在研究程序的时候,我经常会考虑一个问题,就是 : 如何有效率的执行一个定时任务。初学的时候,书上提到过一些这样的情况,然后会告诉我使用一些什么API来执行这样的任务。 1. 使用Thread.sleep(long time)。这个很好理解,就是新开一个线程,然后让这个线程sleep一段时间,再执行,这就是最好理解的定时执行。 2. 使用Timer.schedule(),然后置

2016-12-16 13:18:01 1894

原创 Android 笔记 linearlayout 属性 layout_weight

Linearlayout 属性 layout_weight有这么一个属性layout_weight,可以为子组件更容易的分配空间一些时候我们需要设置按照比利分配空间,比如在appwidght中,或者一个占满一行的组件中防止子组件, 一个textview和两个button,如果直接设置他们的width恐怕不容易获得更好的效果,比如需要精确的按照3:1:1分配3个组件的宽度。这时候可以使用lay

2016-12-08 23:02:45 333

原创 Android 笔记 permissions 之 shouldShowRequestPermissionRationale()

permissions在6.0时代,需要在程序运行时获取相关权限,展开一个对话框询问是否授予该程序相应权限。从第二次开始运行的时候,会增加一个选项框,“以后不再询问”,如果选择了这个选项,那么以后程序不会再询问是否授予权限了。这时候选择了确认倒还好,之后倒方便了。 如果选择了拒绝,那之后也不会显示对话框,但是权限一直是拒绝的。这样是非常不好的体验,不知道的还以为程序崩溃了。所以,我们需要在这个时候

2016-11-23 16:46:42 14025 6

原创 Android 笔记 RecyclerView的简单使用

RecyclerView创建列表与卡片 显示一列项目一般会使用基本的ListView或者GridView。后来在supper library里面增加了一个RecyclerView,里面封装了更全面的功能,官方教程更推荐使用这个新的显示列表项目的组件。在一本书《Android编程权威教程》里面介绍RecycleView的时候是这么讲的。假如一个列表有100项,每个项目包括1个TextView,那我们

2016-11-05 18:01:57 382

原创 Android 笔记 通知/notifications

通知 / notifications官网–通知 通常应用会在通知栏显示一些通知,提示任务进度,提示信息,或者推送什么的。Android有个组件叫Notification就是创建这样的通知。通知区域就是常见的任务栏,可以下拉显示详细内容,可以点击,也可以收起来忽略之。创建可以像一般的类一样创建通知 Notification notif = new Notification(int icon,

2016-10-27 23:44:19 456

原创 Android 笔记 设定/sharedPreference

APP设定大部分时候开发出来的APP需要有个性化的设定,以适应用户的不同需求。按照一般情况,肯定是在APP的私有文件夹下放置一个设定档文件,然后往里面写入数据。如果需要在卸载以后保存设定,以便下次安装以后依然可以使用原有设定的话,就应该放在公共目录的对应APP名字的文件夹下。(因为私有文件夹会在卸载的时候被删除,external storage下面的私有文件夹也会被删除,只有public stora

2016-10-25 03:19:22 366

原创 Android 笔记 surfaceView textureView

SurfaceViewAndroid有一个组件叫SurfaceView,是一个单独的组件,但是并不是和其他常见组件一样提供特别的功能(比如图片浏览,输入字符等等),就是一个空组件。那么这个有什么用呢。一般情况下,系统开始的时候会创建一个主线程,称之为UI线程,简单任务可以直接在这个线程里面完成,一些复杂任务,比如网络读取等等,在主线程允许的话,系统会报错,说,这类任务不能在主线程完成。所以,一些比较

2016-10-19 16:18:48 2494

原创 Android 笔记 JAVA 的 WeakReference

WeakReference在计算机编程的时候,一个特别需要注意的事情就是关于内存使用的。如果程序不注意内存使用状况,很可能会造成内存泄漏,时间越长内存占用越多,造成性能下降。C和C++语言需要程序员手动清空不需要使用的对象,所以编程较复杂。 JAVA语言的一个好处就是,虚拟机可以自动清理对象,也就是说Camera camera = new Camera();camera = null;只要第二行

2016-10-13 22:27:13 351

原创 Android 笔记 ViewPager的滑动与子view内部滑动事件的冲突问题

ViewPager 与子view的滑动冲突在上一次笔记中建设了一个可以滑动的photoView,显示图片,可以放大,滑动大部分时候这个自定义View会和ViewPager一起使用。也就是我们通常看到的相册里面的效果,滑动可以显示不同的图片。而在单页中,很多时候也需要滑动。这时候会和ViewPager产生冲突。最后的结果就是,横向滑动并不会滑动子view里面的内容,而是切换ViewPager的页面。

2016-10-13 14:14:43 3387

原创 Android 笔记 ImageView 显示大图遇到的问题 以及 无损显示大图 的解决方案

ImageView制作一个显示图片的activity,类似相册那样的,可以移动图片,多点触控的时候放大缩小图片等功能一般就是用BitmapFactory来解码bitmap,然后设置imageView.setImageBitmap() 但是遇到了一个问题,就是图片过大的时候(也没多大,也就是手机摄像头拍的照片,4128x3096,13M像素),真机运行会显示空白,什么都没有 但是模拟器运行正常,就

2016-10-08 14:39:44 10065 4

原创 Android 笔记 exif信息 uri信息

exif信息在解析并显示图像的时候,会需要orientation数据,来得到图片的旋转角度,如果显示的时候不设置角度,那么有orientation信息的图片就方向不对。orientation在exif信息中,exif是保存在图片中的一系列拍摄信息 有可能不同厂家在里面保存的信息多少有点区别,但是有些公用的信息都有,比如光圈,快门,拍摄模式,白平衡,或者还有一些版权信息等等。手机保存的jpeg文件里

2016-10-08 00:47:19 527

原创 Android 笔记 motionEvent 处理触摸事件

定义触摸事件在处理触摸事件的时候,主要有两种启动方式 1,view.setOnTouchListener() 2,在自定义view/activity的时候覆盖一个方法onTouchEvent() 这两种方法基本上等效,自定义的时候用方法2,其他时候用方法1。注意一点,假如在activity里面设置onTouchEvent(),有时候会不触发。因为如果此activity的子view能处理触摸事件

2016-10-07 12:57:13 1333

原创 Android 笔记 读取style文件的属性

读取style文件属性有时候需要用代码的方法读取style文件的属性,用来动态设置状态int[] attrs = new int[]{R.attr.(属性名)};TypedArray typedArray = context.obtainStyledAttributes(attrs);int backgroundResource = typedArray.getResourceId(0, 0);

2016-10-04 13:22:35 3765

原创 Android 笔记 popupMenu 显示图标

popupMenu多数时候,我们需要设置popupMenu,这样可以在点击的时候显示菜单,可操作性比系统菜单,toolbar菜单强,所以用处更加广泛。popupMenu的菜单实际上和toolbar上的是一样的,设置内容的方法类似,都可以从xml文件创建,或者动态添加项目。但是有一点,就是没有图标。 toolbar上的菜单可以设置图标,但是只有选项直接显示在toolbar上的时候才有图标(显示图标的

2016-10-03 02:52:52 8603 1

原创 Android 笔记 intent打开文件的方法

打开文件这里只介绍最基本的intent打开文件的方法Intent intent = new Intent(Intent.ACTION_VIEW);intent.setDataAndType(uri,"image/jpeg");if (intent.resolveActivity(getPackageManager()) != null) { startActivity(inten

2016-10-01 03:14:04 795

原创 Android 笔记 camera.takePicture(),使用flashMode,改变focusMode,continuous-picture中遇到的问题

takePicture()的问题在摄像头旧API的使用中,如果要保存全尺寸图像,只能通过takePicture() 分别是shutterCallback,pictureCallback,pictureCallback 第一个是快门键按下以后,第二个是RAW图像(如果支持的话)生成以后,第三个是jpeg图像生成以后 一般情况,在第三个Callback里面操作保存jpeg的动作,然后操作其他动作,

2016-09-23 14:37:51 10902 2

原创 Android 笔记 传感器(Sensor)

Sensor数据的获得首先要明确的一点就是,获得的传感器数据都是原始数据,即便有一些便利方法,但是也需要获得很多原始数据参数来计算。因此,很多时候需要自己编写函数来通过这些原始数据计算出自己需要的内容。比如照片的方向。照片的方向的问题在正常竖屏的状况下,CAMERA传感器的角度是90度,在设置里面设置一个orientation值就可以在显示的时候将照片转过来。但是,横屏拍摄以后,照片角度会保持成横屏

2016-09-13 15:57:45 633

原创 Android 笔记 关于camera2使用的一些问题

camera2使用的一些问题、这几天一直在研究camera2,但是实际测试的时候发现一些很令人头疼的问题。分辨率的设置。我希望能设置不同的预览分辨率,然后对应不同的照片分辨率,其实主要就两种,一个是16:9的宽屏,一个是4:3的普通。其他实际可用的分辨率也只有最低档的两个,比例也是4:3,在某些情况下可以用,其他的分辨率大可不用理会。但是我发现设置最高的4:3分辨率,把textureView也设置成

2016-09-09 13:50:38 6421

原创 Android 笔记 camera2 新api

android.hardware.camera2 API 21,

2016-09-07 01:47:08 8485 1

原创 Android 笔记之 camera的控制---旧API

Camera的控制

2016-09-02 03:39:06 874

原创 Android 笔记之 设置应用的权限

设置应用的权限

2016-08-31 01:10:46 2537

Python Cookbook(第3版)中文版

Python Cookbook(第3版)中文版

2016-09-01

Swift Programming Language中文版-老码团队发布[20150124]

Swift Programming Language中文版-老码团队发布[20150124]

2016-06-25

Android Programming A The Big Nerd Ranch Guide (2nd Edition) android编程权威指南 第二版

Android Programming A The Big Nerd Ranch Guide (2nd Edition) - 2015[Bill Phillips, Chris Stewart, Brian Hardy, Kristin Marsicano] Android权威编程指南 第二版 英文版。 中文版在图灵社区有电子版出售,可自行购买。

2016-06-25

Swift Programming Language中文版

Swift Programming Language中文版-老码团队发布[20150124]

2016-06-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除