自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 问答 (1)
  • 收藏
  • 关注

原创 在Android Studio中使用Git

简单的git命令里我们介绍了常用的git命令,这里介绍如何在Android Studio中使用Git。 1、首先在项目所在目录中打开Git,即Git Bash Here,并通过$ git init建立本地仓库。 2、建立远程仓库并与本地仓库相关联,举例如下$ git remote add origin https://github.com/xxx/xxxx.git3、配置Git路径,Fil

2017-12-22 14:50:45 12810 1

原创 简单的git命令

1、设置用户名,邮箱git config --global user.name "name"git config --global user.email "xxxx@xx.com"2、创建目录,并把该目录变成可以管理的仓库 cd D: cd xxuxe mkdir learngit git init3、 把工作区的readme.txt添加进仓库,或者将readme

2017-12-21 17:52:31 341

原创 TargetAPI和SuppressLint

TargetAPI作用@TargetApi(版本号)@TargetApi(版本号) 是一个注解,用来兼容不同版本的开发。他指定了下面的一个方法与某个版本对应(大于minSdk),忽略指定的minSdk。例如高版本API需要实现某种功能,而低版本则不需要,可以这样写, @TargetApi(23) private void getPersimmions() { if (Bu

2017-12-20 16:29:17 573

转载 多线程同步的一些方法(转)

进程中线程同步的四种常用方式: 1、 临界区(CCriticalSection) 当多个线程访问一个独占性共享资源时,可以使用临界区对象。拥有临界区的线程可以访问被保护起来的资源或代码段,其他线程若想访问,则被挂起,直到拥有临界区的线程放弃临界区为止。具体应用方式: 1、 定义临界区对象CcriticalSection g_CriticalSection; 2、 在访问共享资源(代码或变量)

2017-03-08 21:48:55 311

转载 os的进程调度(读书笔记)

在多进程、多线程并发的环境里,从概念上看,有多个进程或者多个线程在同时执行,具体到单个CPU级别,实际上任何时刻只能有一个进程或者线程处于执行状态;因此OS需要决定哪个进程执行,哪些进程等待,也就是进程的调度。 一、调度的目标 1、首先要区分程序使用CPU的三种模式:IO密集型、计算密集型和平衡型。对于IO密集型程序来说,响应时间非常重要;对于CPU密集型来说,CPU的周转时间就比较重要;对于平

2017-03-07 15:47:13 402

原创 新浪SDK集成

1.新建自己的APP,并导入sdk,也就是 2.将应用安装到手机 这里我出现一个错误 Error:Error converting bytecode to dex:Cause: com.android.dex.DexException: Multiple dex files define Landroid/support/v4/accessibilityservice/Accessibilit

2017-01-05 11:31:18 721

原创 UrlConnection连接和Socket连接的区别

1.Socket 的连接是有状态的,一旦两边连接上了,将一直保持连接,除非人为断开。一般用于游戏,需要持续的网络畅通2.URLConnection和HttpURLConnection使用的都是java.net中的类,属于标准的java接口。 HttpURLConnection继承自URLConnection,差别在与HttpURLConnection仅仅针对Http连接。 HttpURLConn

2016-12-23 10:17:05 538

原创 接口传递数据

我们定义一个Activity A和一个类B和一个接口I,通过接口类B向Activity A传递数据;public class B{public interface ii;public int j; public B(){} public void setOnListener(I ii ){ this.ii=ii; } ii.fun(int j); public interfac

2016-12-08 17:40:04 1037 1

转载 canvas.save() canvas.restore() 作用

暂时先看此博客,待以后再研究 这里canvas.save();和canvas.restore();是两个相互匹配出现的,作用是用来保存画布的状态和取出保存的状态的。这里稍微解释一下, 当我们对画布进行旋转,缩放,平移等操作的时候其实我们是想对特定的元素进行操作,比如图片,一个矩形等,但是当你用canvas的方法来进行这些操作的时候,其实是对整个画布进行了操作,那么之后在画布上的元素都会受到影

2016-11-30 11:16:41 272

转载 View绘制流程

一、measure()过程 measure函数原型为 View.java 该函数不能被重载public final void measure(int widthMeasureSpec, int heightMeasureSpec) { //.... //回调onMeasure()方法 onMeasure(widthMeasureSpec, heightMe

2016-11-30 10:08:26 285

原创 getApplicationContext()、getBaseContext()、getContext()

[View.getContext()][1]: Returns the context the view is currently running in. Usually the currently active Activity.[Activity.getApplicationContext()][2]: Returns the context for the entire applica

2016-11-29 10:27:30 551

原创 单链表的递归实现

可以将单链表看成是递归定义的,每个结点的next域指向由后诸结点组成的一条子单链表,最后一个结点的next域指向空链表。此时可以将单链表写成递归算法。 1、构造空链表public class LinkedRecursion<T> { public Node<T>head; //构造函数,构造空链表 public LinkedRecursion(){

2016-11-25 20:54:03 4466

转载 【数据结构】LinkedList原理及实现学习总结

一、LinkedList实现原理概述LinkedList 和 ArrayList 一样,都实现了 List 接口,但其内部的数据结构有本质的不同。LinkedList 是基于链表实现的(通过名字也能区分开来),所以它的插入和删除操作比 ArrayList 更加高效。但也是由于其为基于链表的,所以随机访问的效率要比 ArrayList 差。二、LinkedList类定义public class Lin

2016-11-18 20:47:55 337

原创 【数据结构】单链表的实现(Java语言描述)

单链表是有一个个结点组成的有序表。以下定义单链表的结点类和单链表类来描述单链表。 1、单链表结点类Node声明如下://自引用类public class Node<T> { public T data; public Node<T> next; public Node(T data,Node<T>next){ this.data=data;

2016-11-17 22:48:54 1507

原创 获取对话框的控件

当我们要获取弹出对话框的某一个控件或者其值时,比如要获取Eiedtext的内容,可以这样操作: final View layout= (LinearLayout) getLayoutInflater().inflate(R.layout.lable_input,null); AlertDia

2016-11-01 21:41:09 660

转载 android listview更新数据

要使listView的列表项发生改变时及时显示在UI中,就要更新listView的数据。 两种方法: 方法一: 数据直接在adapter上修改,adapter.add().等方法 方法二: 本质上是listview绑定Adapter,Adapter关联List,因此List变化后导致Adapter同步变化;再通过调用adapter.notifyDataSetChanged();方法使得li

2016-11-01 21:36:20 1509

转载 也谈layout_gravity和gravity的用法

相信对于Android的初学者来说,大家都曾经被layout里这两个极其相似的属性迷惑过。简单使用一下搜索工具,我们就不难找到下面这样的答案:layout_gravity 表示组件自身在父组件中的位置 gravity 表示组件的子组件在组件中的位置 看似很简单嘛~)貌似大伙瞅一眼就明白了。今天我要说的就是这貌似瞅一眼就明白的道理。 为什么这么简单的道理,总有同学会发

2016-10-21 21:19:43 463

原创 文章标题

ContentProvider向我们提供了我们在应用程序之前共享数据的一种机制,而我们知道每一个应用程序都是运行在不同的应用程序的,数据和文件在不同应用程序之间达到数据的共享不是没有可能,而是显得比较复杂,而正好Android中的ContentProvider则达到了这一需求,比如有时候我们需要操作手机里的联系人,手机里的多媒体等一些信息,我们都可以用到这个ContentProvider来达到我们所

2016-10-12 20:23:25 251

原创 使用HttpURLConnection

HttpURLConnection继承了URLConnection,差别在与HttpURLConnection仅仅针对Http连接。他在URLConnecion的基础上提供了一些便捷的方法。 使用的步骤: 1.创建URL对象 URL url = new URL(path);2.创建HttpURLConnection对象 HttpURLConnection conn = (HttpURLConne

2016-10-09 20:50:48 522

转载 http 请求头字段

Accept: text/html, image/* 客户机支持的数据类型 Accept-Charset: ISO-8859-1 客户机采用的编码 Accept-Encoding: gzip,compress 客户机支持的数据压缩格式 Accept-Language: en-us,zh-cn 客户机的语言环境 Host: localhost:80 访问的主机名 If-Modifi

2016-10-09 20:32:29 363

原创 Android之File

数据的存储有多种方式,比如数据库存储、SharedPreferences存储、文件存储等; 这里我们将要介绍最简单的文件存储方式; 文件存储简单的来说就是一般的JAVASE中的IO流,只是把他应用于Android手机中而已; Context提供两个方法来打开应用程序的数据文件夹里的IO流: FileInputStream openFileInput(String name):打开应用程序的数

2016-10-04 14:59:39 338

转载 ExpandableListView

关于ExpandableListView用法的一个简单小例子 喜欢显示好友QQ那样的列表,可以展开,可以收起,在android中,以往用的比较多的是listview,虽然可以实现列表的展示,但在某些情况下,我们还是希望用到可以分组并实现收缩的列表,那就要用到android的ExpandableListView,今天研究了一下这个的用法,也参考了很多资料动手写了一个小demo,实现了基本的功能,但界

2016-09-26 15:21:16 279

转载 GPS邻近警告

前面介绍过LocationManager有一个addProximityAlert(double latitude,double longitude,float radius,long expiration,PendingIntent intent)方法,该方法可用于添加临近警告。其参数说明如下:latitude:指定固定点的经度。longitude:指定固定点的纬度。radius:指定半径长度。ex

2016-09-22 22:11:42 443

原创 BroadcastReceiver

在Android中,Broadcast是一种广泛运用的在应用程序之间传输信息的机制。而BroadcastReceiver是对发送出来的 Broadcast进行过滤接受并响应的一类组件。由于BroadcastReceiver本质上也是一种监听器,一次实现BroadcastReceiver只要重写其onReceive(Context context, Intent intent) 方法就可以了。 实现

2016-09-22 22:03:04 306

原创 GPS开发

Android SDK为GPS提供了很多API,其中LocationManager类是这些API的核心。LocationManger是一个系统服务类,所有与GPS相关的操作都由LocationManager对象及其派生的子对象完成。 locationManager=(LocationManager) getSystemService(Context.LOCATION_SERVICE);获取Loca

2016-09-21 16:29:39 314

原创 传感器

安卓中常见传感器的种类: 安卓传感器框架中的主要类和接口 SensorManager 允许你访问设备的感应器。通过传入参数SENSOR_SERVICE参数调用Context.getSystemService方法可以获得一个sensor的实例。永远记得确保当你不需要的时候,特别是Activity暂定的时候,要关闭感应器。忽略这一点肯能导致几个小时就耗尽电池,注意当屏幕关闭时,系统不会自

2016-09-18 22:37:27 430

原创 android中sharedPreferences的用法

SharedPreferences介绍:做软件开发应该都知道,很多软件会有配置文件,里面存放这程序运行当中的各个属性值,由于其配置信息并不多,如果采用数据库来存放并不划算,因为数据库连接跟操作等耗时大大影响了程序的效率,因此我们使用键值这种一一对应的关系来存放这些配置信息。SharedPreferences正是Android中用于实现这中存储方式的技术。SharedPreferences的使用非常简

2016-09-17 21:41:00 553

转载 Android开发:LayoutParams的用法

LayoutParams继承于Android.View.ViewGroup.LayoutParams. LayoutParams相当于一个Layout的信息包,它封装了Layout的位置、高、宽等信息。假设在屏幕上一块区域是由一个Layout占领的,如果将一个View添加到一个Layout中,最好告诉Layout用户期望的布局方式,也就是将一个认可的layoutParams传递进去。

2016-09-17 21:03:29 340

转载 Android Fragment用法详解(2)--动态添加Fragment

Android Fragment用法详解(2)–动态添加Fragment在上一篇文章《Android Fragment用法详解(1)–静态使用Fragment》我们讲解了Fragment的最简单的用法。这次我们来说一说Fragment复杂一丢丢的用法。在代码中动态添加Fragment,让其实现类似微信主页面效果。也就是点击底部的按钮来动态改变中间内容页面。我们先来看看效果图吧。说明一下,为了方便大家

2016-09-09 20:29:40 747

空空如也

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

TA关注的人

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