自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 收藏
  • 关注

原创 Android工程目录结构 Android四大组件 ContentProvider、Activity、BroadcastReceiver和Service

Android工程目录结构:« 熟练掌握Android四大组件,常用的布局文件Android中4大组件是:ContentProvider、Activity、BroadcastReceiver和Service一、清单文件:1、所有的应用程序必须要有清单文件在manifest节点下需要声明当前应用程序的包名2、包名:声明包的名字,必须唯一如果两个应用程序的包名和签名都相同,后安装的会覆盖...

2019-11-25 15:13:11 354

原创 java 多线程基础知识

三、多线程–à进程和线程:1)进程是静态的,其实就是指开启的一个程序;而线程是动态的,是真正执行的单元,执行的过程。其实我们平时看到的进程,是线程在执行着,因为线程是作为进程的一个单元存在的。2)同样作为基本的执行单元,线程是划分得比进程更小的执行单位。3)每个进程都有一段专用的内存区域。与此相反,线程却共享内存单元(包括代码和数据),通过共享的内存单元来实现数据交换、实时通信与必要的同步...

2019-11-22 17:42:36 134 2

原创 IO流

二、IO流1、结构:字节流:InputStream,OutputStream字符流:Reader,WriterReader:读取字符流的抽象类BufferedReader:将字符存入缓冲区,再读取LineNumberReader:带行号的字符缓冲输入流InputStreamReader:转换流,字节流和字符流的桥梁,多在编码的地方使用FileReader:读取字符文件的便捷类。W...

2019-11-22 16:07:44 115 1

原创 Collection Map 对比

单列集合Collection 双列集合mapCollection(单列集合,只有set 要求元素唯一,数据结构针对元素)和Map(双列集合,键唯一,值可以重复,数据结构针对键)CollectionList:有序的;元素可重复,有索引(add(index, element)、add(index, Collection)、remove(index)、set(index,element)、g...

2019-11-22 15:26:38 176

原创 MVP架构

项目的划分,如果只有一个模块 那所有的木块代码都混在一起,当有一个模块需要复用的时候。没法复用。而且每个模块的资源文件,甚至 图片都 通过Module的方式做了划分。单个模块的划分MVP架构设计分治法各自负责各自的功能M - P - V因为传统的MVC的设计思想,三角形每层都可以互相方位,分层比较模糊。例如人们经常会把获取数据的部分给写到C层中。造成代码混乱M模型V视图...

2018-07-02 19:04:17 316 1

原创 android中getLocationInWindow和getLocationOnScreen的区别

View.getLocationInWindow(int[] location) 一个控件在其父窗口中的坐标位置View.getLocationOnScreen(int[] location) 一个控件在其整个屏幕上的坐标位置 getLocationInWindow是以B为原点的C的坐标getLocationOnScreen以A为原点。start = (Button) findViewBy

2017-10-18 20:42:18 562

原创 Android中getDimension,getDimensionPixelOffset和getDimensionPixelSize 区别

getDimension 获取某个dimen的值,如果是dp或sp的单位,将其乘以density,如果是px,则不乘 返回floatgetDimensionPixelOffset 获取某个dimen的值,如果是dp或sp的单位,将其乘以density,如果是px,则不乘 返回intgetDimensionPixelSize 则不管写的是dp还是sp还是px,都会乘以densti

2017-10-18 20:19:36 1064

原创 第三方MiPush框架上线:既保证推送,又无需应用挂后台

开发者Trumeet在GitHuib上线了MiPushFramework项目,该项目可以实现在任何非MIUI的安卓设备上体验小米系统级推送。 第三方MiPush框架上线:既保证推送,又无需应用挂后台 什么是小米系统级推送 在带有Google服务框架的Android手机上,有个系统级别的推送服务,叫GCM,凭借此服务,应用无需在后台停驻进程,即可实现消息的推送。 MiPush服务则类似于G

2017-09-05 00:31:59 3183

翻译 Retrofit详解

在目前的开发环境下,相信Retrofit这个词大家已经非常熟悉了,就像之前volley刚出来的时候大家都一起去使用volley,研究volley源码,进行再次封装使用到自己的项目中;那我也不例外,在之前封装过volley网络框架的基础下也来研究研究retrofit到底有什么比较独特的之处,不过大家要知道retrofit是对okhttp再做了一层封装,你只需要简单的进行一些配置就能顺利使用retrof

2017-08-11 13:26:55 362

原创 Android图片中的三级缓存,问什么要三级缓存,有哪些好处

Android图片中的三级缓存为什么要使用三级缓存如今的 Android App 经常会需要网络交互,通过网络获取图片是再正常不过的事了假如每次启动的时候都从网络拉取图片的话,势必会消耗很多流量。在当前的状况下,对于非wifi用户来说,流量还是很贵的,一个很耗流量的应用,其用户数量级肯定要受到影响特别是,当我们想要重复浏览一些图片时,如果每一次浏览都需要通过网络获取,流量的浪费可想而知所以提

2017-07-14 00:52:05 512

原创 Android 中图片和协议的三级缓存,图片的的三级缓存Lru和算法.协议的三级缓存策略.

协议协议的封装协议的缓存 持久化 sp中–>智慧北京file–>谷歌市场sqlite中非持久化–>存内存中着呢对本地缓存的一些思考针对图片缓存 url–>bitmap对象(100kb)耗时耗流量的bitmap–>转化为file进行存储其实sp中也可以寸图片,,转换成stringsqlite也可以存图片, 图片1以file存储更好操作取缓存的额时候 唯一的key–>唯一的

2017-07-14 00:32:28 330 1

原创 MVC的思想,画图分析LoadingPager :Controller和BaseFragment的抽取

分析加载界面有四种显示状态: LoadingPager -Controller 控制层中: 静态视图: 因为是静态视图,我们可以通过,定义几中不同的状态,来显示不同的视图 1. 加载中视图 2.空视图 3. erroe视图 4,成功视图: initSuccessVeiw():因为成功界面的视图中loadingPager的时候我们并不知道他是什么样子的,所

2017-07-09 13:08:20 348

原创 Fragment 基类的高级抽取,分析

MVCm:mode数据v:view 布局文件,空间 Fragment/activity–>view层c:contorller:将v和m进行结合:view是view , 数据是数据./** * 针对Fragment提供的视图进行分析 * 1,针对八色Fragment的子类,其实视图展示的情况.类型如下 * 只会4中视图类型(架子啊中,错误,空视图

2017-07-09 10:09:32 355

原创 Fragment 基类的常规抽取

Fragment 基类的抽取标配的类Fragemt –>basefragmenactivity –>baseactivitybaseadapter –>mybaseadapteractivity或者fragmeng中经常定义几个放发 inti 除书画 initview初始化视图 initdate出事话视图 initlistenre()一个方法可以从来年改革角度方法是干什么的方法

2017-07-09 10:04:23 510

原创 PagerSlidingTabStrip源码分析

/** * 这个方法可以为某一个值 * 赋值 */DisplayMetrics dm = getResources().getDisplayMetrics();scrollOffset = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, scrollOffset, dm);indicatorHeight = (

2017-07-08 22:50:31 249

原创 UC浏览器主界面滑动折叠效果 使用自定义behavior实现 难度五颗星*****

思路:!!!!!!!!!!!RcycleView上的HeadScrollBehavior 思路:1。让recycleview居于头部的下方---方案:重写layoutDependsOn  让当前recycleview去依赖头部视图重写onDependentViewChanged 获取到依赖的头部视图的高度,给recycleview设置setTranslationY

2017-07-07 00:01:52 1696

原创 安卓复杂滑动案例 自定义behavior源码分析 实现头布局图片的缩放透明度变化,RecycleView的滑动布局,坐标变化

安卓复杂滑动案例 自定义behavior源码分析 实现头布局图片的缩放透明度变化,RecycleView的滑动布局,坐标变化

2017-07-06 13:11:55 573

原创 安卓复杂滑动案例 自定义behavior源码分析 实现头布局图片的缩放透明度变化,RecycleView的滑动布局,坐标变化

**#复杂滑动案例 * 上方图片放大, * 透明 * 输入框,不断增大 * 变色 * 滑动的时候,条目不会改变. * 再滑的时候,条目滑动 1,让rv居于头部的下方 方案?:1,重写layoutDependsOn 让当前rv去以来头部视图2,获取都以来的头部视图的高度onDependentViewChanged 设置给rv 设置setTranslationY2,

2017-07-06 13:00:51 611

原创 文章标题

shape 图片效果<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" ><!--上面指定圆角矩形 有四种- ->可以制定某个角的半径<!--下面 圆角半径,四个角斗一样

2017-05-21 10:03:59 257 2

转载 Installation failed with message INSTALL_FAILED_NO_MATCHING_ABIS.

在Android模拟器上安装apk的时候出现INSTALL_FAILED_NO_MATCHING_ABIS这个错误提示的解决办法。是由于使用了native libraries 。该native libraries 不支持当前的cpu的体系结构。INSTALL_FAILED_NO_MATCHING_ABIS is when you are trying to install an app that h

2016-09-18 11:01:45 408

原创 自定义View 获取焦点

第一步 <view.FocusedTextView android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginBottom="5dp" android:layout_marginTop="5dp"

2016-07-23 11:20:09 2132

原创 Android Studio如何快速生成get,set,tostring,构造函数

有两种方式: 方式一:Code–>Generate 方式二:通过快捷键Alt+Insert 这时,在弹出的对话框中就可以选择你所需要的对应的东东了。Alt Enter回车 自动修复 Ctrl p提示 = ctrl + alt +空格 类似于alt +/ Ctrl d复制这一行 Ctrl y删除这一行 Ctrl alt + o 优化导包,没用的都删掉

2016-07-23 11:08:54 255

原创 GridView

第一步<GridView android:id="@+id/gv_home" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" android:numColumns="3"//一排有三个

2016-07-22 18:45:56 258

原创 安卓 不让用户点返回

builder.setCancelable(false);

2016-07-22 15:28:39 329

原创 不显示状态栏

//设置不显示手机状态栏 requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

2016-07-22 14:35:45 374

原创 ImageView充满屏幕

ImageView充满屏幕

2016-07-22 14:19:39 647

原创 android应用去掉标题栏的方法

android应用去掉标题栏的方法

2016-07-22 14:15:44 265

原创 Android代码的组织结构

根据功能模块划分(Android开发推荐此方法)- Activity com.itheima.mobilesafe.activty- 后台服务 com.itheima.mobilesafe.service- 广播接受者 com.itheima.mobilesafe.receiver- 数据库 com.itheima.mobilesafe.db.dao- 对象(java bean) com.

2016-07-22 14:10:53 468

原创 SharedPreferences 保存零散数据 用户名密码

//使用SharedPreferences来保存用户名密码 //路径在data/data/com.—-.—-/share SharedPreferences sp = getSharedPreferences(“info”,MODE_PEIVATE); //拿到sp的编辑器 Editor ed = sp.edit(); ed.putString(“name”,name); ed.putS

2016-07-20 19:56:18 264

原创 AndroidStudio生成全局变量的快捷键

没错就是Ctrl+Alt+Shift+T,接下来: 然后选择Filed就可以了。。。各位亲赶紧试试吧!!!或者:ctrl+alt+F也是可以。。。

2016-07-20 08:47:59 3096

原创 drwxrwxrwx 安卓权限代表意思

d:文件夹 -:表示文件第一组 rwx :表示文件拥有者(owner)对文件的权限 r:read,读 w: write x : execute 执行 第二组 rwx :表示的是跟文件拥有者属于同意用户组的用户的权限 第三组 rwx :其他用户对文件的权限

2016-07-19 21:44:01 3342

原创 android判断当前系统版本的等级

if(Build.VERSION.SDK_INT >= 18){ //版本号大于等于18:4.3 }else{ }

2016-07-19 21:27:48 2016

原创 获取sd卡的真实路径,判断sd卡是否可用

File file = new File(Environment.getDownloadCacheDirectory(),”info.txt”); //获取SD卡的真实路径 File file = new File(getFilesDir(),null); //获取本地文件的真实路径

2016-07-19 14:57:23 654

原创 简单文件输出流

//文件输出流new一个File对象指定路径 File file = new File(“data/data/com.example.huaqing.a05/info.txt”); //文件输出流 try { FileOutputStream fos = new FileOutpu

2016-07-19 09:35:09 309

原创 CheckBox判断是否勾选

CheckBox cb = (CheckBox) findViewById(R.id.cb);//cb是CheckBox的id //判断选框是否被勾选 if (cb.isChecked()){ //true 执行 }

2016-07-19 08:46:58 3221

原创 相对布局 竖直居中

android:layout_centerVertical=”true” 竖直居中

2016-07-18 22:22:57 841

原创 线性布局

layout_gravity=”right”右对齐 center_hor...水平居中有一个布局方向,水平或者竖直布局 在竖直布局下:左对齐。右对齐,水平居中生效 在水平布局下:顶部对其,底部对齐,竖直居中生效权重:layout_weight="1"分几份每一个站几分:按比例分配平,屏幕的剩余 宽度或者高度

2016-07-18 09:32:37 341

原创 AndroidStudio Error running app: Instant Run requires 'Tools | Android | Enable ADB integration'

Android Studio Error running app: Instant Run requires 'Tools | Android | Enable ADB integration' to be enabled.

2016-07-18 08:51:43 352

原创 Button 简单按钮点击事件

ButtononClick方法假如三个按钮onClick方法一样public void bt_3(View v){ System.out.println("没有设置ID的按钮");}//View:系统会把出发这个方法的那个阻击蓝蓝路的对象作为view对象穿进来 通过这个view对象 的判断。就可以知道用户点击的到底是哪一个按钮 public void bt_3(View v){

2016-07-18 08:32:28 346

转载 EditText布局

布局输入框灰色提示hint=“请输入文字”:灰色提示 inputType=“phone”或者number gravity=”top”字在输入框的上面

2016-07-16 10:46:19 236

空空如也

空空如也

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

TA关注的人

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