android学习记录
主要围绕android学习和相关的技术进行学习和分享
mirfang
积溪流成江河
展开
-
使用Kotlin和java实现内存开销对比
ListView使用Kotlin和java实现内存开销对比ListView使用Kotlin和java实现内存开销对比前言一、java实现的listview二、内存消耗对比前言前几天学习了一下kotlin,实现了listview,突发奇想,使用java编写一样的代码,它们的内存消耗,谁的多?带着这个问题编写了2套代码。使用kotlin实现的listview,这里...原创 2018-09-06 09:00:01 · 2469 阅读 · 0 评论 -
Kotlin学习之ListView
Kotlin学习之ListViewKotlin学习之ListView前言一、创建xml二、创建ListView的adapter三、在mainactivity中设置listview的adapter前言kotlin一直都被宣称将要替代java在android中的地位,很多国外的开发者,纷纷使用kotlin进行开发,在国内还很少,大部分还是偏向于使用java,ja...原创 2018-09-04 16:43:23 · 2528 阅读 · 0 评论 -
kotlin学习之创建Android项目
kotlin学习之创建Android项目kotlin学习之创建Android项目前言一、安装kotlin插件1.1插件安装1.2创建一个普通android项目1.3使用kotlin插件转换java项目为kotlin项目二、Anko使用2.1Anko是什么2.2Anko插件依赖三、输出helloworld前言很久没做android项目了,最近...原创 2018-09-04 15:53:02 · 496 阅读 · 0 评论 -
Android Studio导入项目非常慢的解决办法
Android Studio导入项目非常慢的解决办法来源:网络 编辑:admin问题 Android Studio目前已经更新到2.0 Preview 6了,作为Google大力推崇的开发工具,相对于Eclipse ADT有着不可比拟的优势。然而在实际使用时,依然有不少不爽的地方。Android Studio原生支持使用Gradle来构建项目本是个不错的想法转载 2016-03-03 11:43:20 · 464 阅读 · 0 评论 -
Android Studio 调试过程中快捷查看断点处变量值(Ctrl+Shift+I无效)?
当你在做Keymap到Eclipse后,在debug过程中,在Eclipse中我们很喜欢用Ctrl+Shift+I去查看一个运算或者调用的结果,这样用起来很方便。但是keymap到Eclipse后,你会发现这个快捷键不能使了。啥原因呢,原因我们一个个排除:1、是否快捷键映射失败,2、映射成功了,你看了快捷键也发现是正常的,那就再查看是否快捷键冲突。3、如何是快捷键冲突,那解转载 2016-07-25 15:21:18 · 2987 阅读 · 0 评论 -
Android Studio常用快捷键
(会持续更新)这边讲的常用快捷键是指做完Keymap到Eclipse后的,不是纯Android Studio的,这边主要讲下比较常用的一些快捷键:Ctrl+G / Ctrl+Alt+Shift+G:查询变量或者函数或者类在哪里被使用或被调用,后者是前者的复杂表现,可以选择查询范围等。Alt+H:查找功能,全局查找F4:查看类继承关系F2:查看文档说明(函数使用说明)转载 2016-07-27 09:17:08 · 241 阅读 · 0 评论 -
eclipse 项目转移到android studio乱码问题解决
最近将一些旧的android项目,从eclipse转移到android studio上,其中遇到很多问题,这是其中的一个。Error:(11, 8) 閿欒: 缂栫爜UTF-8鐨勪笉鍙槧灏勫瓧绗?看到这个问题,我就知道是乱码问题,以前eclipse上经常遇到,于是我先打开了android studio的setting看了看,是否编码,和我的eclipse上项目编码一致,发现不一致,然后改为一致,还原创 2016-08-09 17:04:34 · 3955 阅读 · 0 评论 -
AndroidStudio导入项目一直卡在Building gradle project info解决方案
AndroidStudio导入项目一直卡在Building gradle project info,实际上是因为你导入的这个项目使用的gradle与你已经拥有的gradle版本不一致,导致需要下载该项目需要的gradle版本,不知是被墙了还是什么原因,反正就是会一直卡住,直至下载完成(如果能下载完成的话)网上也提供了方法,就是去官网下载gradle的版本,然后放到本地,我就不在这里介绍了,我的解决方转载 2016-08-19 14:22:07 · 267 阅读 · 0 评论 -
android studio svn配置
AndroidStudio 的SVN 安装和使用方法与我以前用的其他IDE 都有很大差别,感觉特麻烦,网上相关资料很少,貌似现在 Git 比较流行,之前有用过 github 但是他只能是开源项目免费,下面总结最近自己安装和使用 SVN 的一些经验总结:如果遇到 ignore 或其他设置无效等意外情况,可以尝试重启 androidstudio 或执行下 svn 的 update 试试转载 2016-09-18 09:52:28 · 260 阅读 · 0 评论 -
android studio svn忽略项设置
AS的SVN操作和Eclipse还是有很多不同的地方,如果你刚从Eclipse转过来,可能需要花一点时间去研究,尤其是以前在SVN上都用Team菜单里的内容,可能现在你都找不到这个Team选项,那么现在我就来详细说一下SVN在AS的使用工具/原料Android StudioMac新建项目转载 2016-09-18 09:55:29 · 667 阅读 · 0 评论 -
关于Android studio无法显示import的提示问题
Android studio原创 2017-05-27 20:01:52 · 2975 阅读 · 2 评论 -
Android广播BroadcastReceiver
Android 系统里定义了各种各样的广播,如电池的使用状态,电话的接收和短信的接收,开机启动都会产生一个广播。当然用户也可以自定义自己的广播。既然说到广播,那么必定有一个广播发送者,以及广播接收器。系统广播的发送者为系统,自定义广播当然是用户定义的了。我们可以定义一个广播接收器,用来接收我们感兴趣的广播,不论是系统广播还是用户自定义广播。这个广播接收器必须继承至BroadcastReceiver。转载 2016-04-06 10:07:15 · 341 阅读 · 0 评论 -
android fragment取消预加载
大家开发Android的APP的时候,应该都是用过Fragment。 Fragment使用起来非常方便,灵活。在ViewPage中PageAdapter来管理所有的Fragment即可。 但是大家都会遇到一个问题,就是在加载一个Fragment的时候,会自动缓存左右几个(默认是一个)页面,此时也会调用到正常的生命周期函数,onCreate,onCrateView,onResume.可是这样给原创 2016-04-13 10:48:19 · 5353 阅读 · 0 评论 -
@SuppressLint("NewApi")和@TargetApi()的区别
在Android代码中,我们有时会使用比我们在AndroidManifest中设置的android:minSdkVersion版本更高的方法,此时编译器会提示警告,解决方法是在方法上加上@SuppressLint(“NewApi”)或者@TargetApi()。 那他们之间有什么区别呢,很简单, @SuppressLint(“NewApi”)屏蔽一切新api中才能使用的方法报的android l转载 2016-08-30 08:46:31 · 530 阅读 · 0 评论 -
Android命令Monkey测试学习(一)
一、Monkey程序介绍 1) Monkey程序由Android系统自带,使用Java语言写成,在Android文件系统中的存放路径是:/system/framework/monkey.jar; 2) Monkey.jar程序是由一个名为“monkey”的Shell脚本来启动执行,shell脚本在Android文件系统中的存放路径是:/system/bin/monkey;二、Monkey命令的简原创 2016-09-08 15:57:53 · 256 阅读 · 0 评论 -
关于overridePendingTransition的使用
这是一篇关于android基础的文章,最近做一个项目,在一个activity的标题左右分别有1个按钮,点击左边的按钮,新的activityA从左边进来,旧的activity从右边出去,返回时activityA从左边出去,原来activity从右边进入;点击右边的按钮,新的activityB从右边进来,从左边出去,返回时activityB从右边出去,原来activity从左边出来。于是查看了一些博客的原创 2016-10-20 17:16:33 · 1733 阅读 · 0 评论 -
android之interpolator的用法详解
Android:interpolatorInterpolator 被用来修饰动画效果,定义动画的变化率,可以使存在的动画效果accelerated(加速),decelerated(减速),repeated(重复),bounced(弹跳)等。android中的文档内容如下: AccelerateDecelerateInterpolator 在动画开始与结束的地方速率改变比较慢,在中间的时候加速Acc转载 2017-02-07 17:06:15 · 292 阅读 · 0 评论 -
android DefaultLocale: Implied default locale in case conversion
最近使用link的检查时,发现有这个警告,记录一下这个警告的解决办法。 ../../src/main/java/com/fm/view/KeyboardUtil.java:140: Implicitly using the default locale is a common source of bugs: Use toLowerCase(Locale) instead 137 138 p原创 2017-02-17 17:14:44 · 1273 阅读 · 0 评论 -
android--sqlite数据库创建的真正时候
最近项目不忙,打算自己封装android 数据库的操作。以前都是把别人的代码copy下来就用,今天意识到自己不亲手写一遍,东西始终是别人的。 如果想要在android中使用数据库,使用SQLite是一个非常好的选择,因为它是android内置的数据库,提供了很多支持。我们先手动创建一张表继承SQLiteOpenHelperpublic class SQLH原创 2015-11-10 16:10:58 · 2877 阅读 · 1 评论 -
android 仿美团、大众点评滑动viewpager菜单栏
android 仿美团、大众点评滑动viewpager菜单栏部分图片没有找到,就随便替代了一下,功能上面和美团类似,各位需要的可以在git上下载。原创 2016-03-09 14:17:49 · 3689 阅读 · 1 评论 -
android listview+RatingBar的那些坑
看到美团的商家页面感觉很好,自己于是打算做一个玩玩,刚写了个listview,自定义adapter时,就遇到一坑。 由于原生的RatingBar,ui不太美观,所以自己拿了两个星星的图片,打算自定义背景,先写个style,集成父类的style,<style name="roomRatingBar1" parent="@android:style/Widget.RatingBar">原创 2016-03-17 09:46:12 · 1772 阅读 · 0 评论 -
Android观察者模式Observable的学习(一)
最近做项目,闲来无聊打算自定义一个listadapter,一般常用的是继承baseadapter来实现里面的方法。我打算自己定义一个adapter深入学习adapter. 点开adapter的api文档,发现里面有一个void registerDataSetObserver(DataSetObserver observer);方法,遂跟下去看看DataSetObserver点开发现, pu原创 2016-03-21 17:06:00 · 670 阅读 · 0 评论 -
android Ui适配
转载一篇屏幕适配基础知识的博客转载 2016-08-04 10:45:49 · 612 阅读 · 0 评论 -
关于PorterDuffXfermode的学习
最近想要模仿qq的头像上传,其中涉及到一个知识点,PorterDuffXfermode,所以就专门花时间学习了一下。1. 先简介一下PorterDuffXfermode 图像合成,是将两幅退昂放在一起的动作,它使得我们能够同时看到两幅图像的特征。我们可以首先在Canvas对象上绘制一个位图对象,然后再相同的Canvas对象上绘制第二个位图对象的方式来实现合成。不过这里在绘制第二幅图像的时候,需原创 2016-11-10 11:25:58 · 251 阅读 · 0 评论 -
Android中从一个Activity跳转到另一个Activity经历的生命周期?
最近在看android的书,引起了一些启发和回忆起以前的面试经历,那是我进入第一家公司的面试官问我的问题,虽然我回答错了,但是依然被录取了,非常高兴,也非常荣幸。后来又对这个知识点进行了学习。现在看了书,再一次对比起来,发现有新的理解。这里先列举2个Activity分别为:ActivityA和ActivityB,我们要点击ActivityA的启动ActivityB按钮,来启动ActivityB,然后原创 2016-12-19 17:56:33 · 14122 阅读 · 2 评论 -
Android <service>属性值含义翻译
英文不太好,看的文档时间长了,总会忘记,以免自己忘记了,这里还是记录下来吧。同时分享给各位看英文,又爱忘记的开发者,本文主要借助google翻译,如有不对,请谅解。 介绍和属性都是我个人参照文档和平时开发经验的理解。如有不对,请提醒我修正。谢谢大家。(1)先简要翻译一下它的各个属性吧<service android:description="string resource" an原创 2016-12-29 13:41:18 · 2265 阅读 · 0 评论 -
Android Service之bindService
本文主要是记录关于bindService的用法的翻译和记录。 先看英文介绍一、关于方法介绍boolean bindService (Intent service, ServiceConnection conn, int flags)Connect to an application service, creating it if原创 2017-01-06 17:41:01 · 2649 阅读 · 0 评论 -
Android应用程序安装位置
之所以写这篇文章,是因为原来开发的一项目,被一位老奶奶说安装包太大,她的内存空间不够。明明只有10几兆,她就是不愿意装进内部存储里面。没办法,只好解决一下。百度了一番,看到博客上很多都说在 文件中添加android:installLocation=”auto”属性。然后我就兴冲冲的加上去了。问题也解决了。 原来看官网的不多,后来看了官网的api讲解,发现原来很多博客是误解。我翻译了一下官网的英文,原创 2017-01-11 10:28:38 · 2950 阅读 · 0 评论 -
android 返回键实现退回手机主页面(moveTaskToBack方法)
大家好,欢迎大家浏览此篇博客,本篇主要讲解,如果用返回键实现退回手机主页面的方法 Activity中的moveTaskToBack方法。先介绍一下,我遇到这个问题的场景。在做一款app时,平时在app的主页都喜欢做成连续点击2下返回键就退出应用。于是就按照这样做了,结果客户是个不懂技术的人,他要求就是我在首页,点击返回键就要和点击home键一样。于是找到moveTaskToBack这个方法。 然原创 2017-01-17 09:25:47 · 10666 阅读 · 2 评论 -
Android AsyncTask工作原理分析
Android AsyncTask工作原理分析闲来无事又看了一下android多线程的部分源码,由于自己经常会忘记一些知识,用博客记录一下,也算加强记忆,同时也分享自己的一些理解,以此来相互学习。本文源码主要基于android 8.0,也就是api26,如发现版本不一致的,可切换到该版本下,查看。一、AsyncTask概述二、AsyncTask的工作流程一、AsyncTa原创 2018-03-08 11:05:24 · 439 阅读 · 0 评论 -
Android页面布局优化之ConstraintLayout
本文不讲怎么使用ConstraintLayout,具体使用可参考我分享的连接,只记录一些过度绘制的基本概念。什么是过度绘制怎么查看过度绘制优化过度绘制一、什么是过度绘制过度绘制:屏幕上某一像素点在一帧中被重复绘制多次,就是过度绘制。 依据过度绘制的层度可以分成: - 无过度绘制(一个像素只被绘制了一次) - 过度绘制x1(一个像素被绘制了两次) - 过度绘制x2(一...原创 2018-03-13 10:26:35 · 426 阅读 · 0 评论 -
关于Android handler内存泄漏问题的测试与解决
项目已经完工,今天无聊看看博客,关于handler内存泄漏的问题,突然想起来,个人项目中也大量用了handler,但是也没有发生内存泄漏。到底是什么问题,下面我来深究一下。假如在一个activity中,我们使用了thread线程,10秒后来更新一个textview,代码如下:public class TestBaseActivity extends BaseActivity {priva...原创 2016-02-29 17:01:10 · 613 阅读 · 0 评论 -
android 银行卡四位加空格
EditText et_cardNum = (EditText) findViewById(viewId); spaceDivide(et_cardNum);/*** 设置监听事件*/private void spaceDivide(final EditText mEditText) {mEditText.addTextChangedListener(new Text...转载 2016-03-04 09:09:33 · 1940 阅读 · 0 评论 -
Android流媒体研究之一台手机录制,另一台手机播放
最近无聊,做一下android音视频方面的学习和研究。网上有很多案例值得我们去学习。我个人先去大概了解了一下音视频的一些基本概念,然后做了一个小demo,实现了一台手机录制,另一台手机实时播放。视屏录制采用的Camera,预览用的SurfaceView,把采集的视频压缩成bitmap,通过socket进行传输到另外一台手机上。这个demo只是用来学习android Camera,bitmap传输比较原创 2016-08-19 14:46:37 · 2395 阅读 · 3 评论 -
SDK的tools目录下没有Templates目录
由于最近公司要开发一款混合app,ios和android两端都需要,考虑到节约成本,大家选择了使用ionic进行开发,在搭建环境时也遇到了很多问题,这里只是描述一个关于编译的android项目时遇到的一些问题其中也遇到了很多问题:当我们搭建好环境后,开始编译一个android的demo时,突然弹出了这个提示:[ERROR] An error occurred while running cordov原创 2017-06-26 15:09:15 · 2533 阅读 · 0 评论