自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(110)
  • 资源 (3)
  • 收藏
  • 关注

原创 字符串的排序-剑指OFFER28题

输入一个字符串,打印出其所有的排序    public static void main(String[] args) {        // TODO Auto-generated method stub        String str = "abc";        char[] array = str.toCharArray();        permutation

2016-07-17 11:03:39 447

转载 Android camare 的使用

/*作者yanzi1225627,欢迎加QQ1927067685进行android开发交流*/package yan.guoqi.rectphoto;import java.io.BufferedOutputStream;import java.io.File;import java.io.FileOutputStream;import java.io.IOExceptio

2016-05-28 14:33:01 1347

原创 改变图片背景色

ThemeManagerpublic Drawable getTintDrawable(int drawableResId, int colorResId){ int colorId = getColorId(colorResId); Drawable drawable = getDrawable(drawableResId); drawable = ViewUtil.tin

2016-05-27 10:58:48 863

原创 画只有底边,抹掉其他三边的矩形

xml version="1.0" encoding="utf-8"?>layer-list xmlns:android="http://schemas.android.com/apk/res/android"> item android:id="@+id/edit_text_bg" android:left="-2dp" android:

2016-05-19 21:14:06 856

原创 画圆

xml version="1.0" encoding="utf-8"?>shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" android:useLevel="false"> gradient android:startColo

2016-05-19 09:47:44 364

原创 做dialog布局中碰到的问题

1 listview头部与尾部增加分割线,一开始直接在布局上加一个带背景色的view,后来给listview添加了setHeader方法,会崩,因为系统会把add的header当作第一个item,当系统拿到所谓的第一个item进行操作,当然就崩了。2 设置圆角后又设置底部button,导致底部的圆角被覆盖3 popupwindow弹出来距离顶部没有距离,以为android:layout_m

2016-05-13 16:51:59 810

转载 UML时序图

一、时序图简介(Brief introduction)       二、时序图元素(Sequence Diagram Elements)角色(Actor)对象(Object)生命线(Lifeline)控制焦点(Focus of Control)消息(Message)自关联消息(Self-Message)Combined Fragments    三、时序

2016-05-09 20:23:24 237

原创 Android事件分发机制

我们在MainActivity中注册一个Button按钮,分别为它设置onClick和onTouch事件         setContentView(R.layout.activity_main);        button = (Button)findViewById(R.id.dispatch_button);        button.setOnClickListene

2016-04-24 16:27:00 327

原创 recyclerview显示的宽度只有屏幕的一部分

今天使用recyclerview.setadapter的时候,出现了item只占据屏幕的一部分,需要在Adapter中的onCreateView中在inflate之后加上viewparent和false两个参数

2016-04-18 17:07:41 3072

原创 Android studio切换分支

今天切换分支,工程里面空了什么都没有了,办法是:点击version control 的Local Changes,对第一个文件右键revert,然后点击toolbar上的Syn project with gradle file,改变配置

2016-04-18 13:22:35 2085

原创 调试中经常出现的错误

1 resourse no found,经常发生在TextView设置值的时候,tv.setText(int),该控件接受int的值,会崩

2016-04-17 15:51:15 379

转载 java反射机制详解 及 Method.invoke解释

AVA反射机制JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。Java反射机制主要提供了以下功能: 在运行时判断任意一个对象所属的类;在运行时构造任意一个类的对象;在运行时判断任意一个类所具有的成员变量和方法;在运行时调用任意一个对象

2016-04-13 14:23:02 408

转载 Java中的垃圾回收与对象生命周期

Java中的垃圾回收与对象生命周期1. 垃圾回收    垃圾回收是Java程序设计中内存管理的核心概念,JVM的内存管理机制被称为垃圾回收机制。   一个对象创建后被放置在JVM的堆内存中,当永远不再引用这个对象时,它将被JVM在堆内存中回收。被创建的对象不能再生,同时也没有办法通过程序语句释放它们。即当对象在JVM运行空间中无法通过根集合到达(找到)时,这个对象被

2016-04-10 20:15:09 308

原创 开发过程中遇到的异常

1 数组越界异常,mFiles是个null的值,但是调用mFile.get[0]会出现数组越界异常2 类强制转换异常 ClassCastException,把context强制转换成activity出现错误

2016-04-06 11:03:56 408

原创 面试中遇到的问题

1 缓存,内缓存与外缓存怎么实现,外缓存相对简单,在SD卡的目录下面创建一个文件夹,放置缓存文件,内缓存可以在某个类使用一些数据结构,比如hashmap就能存放缓存的内容,只要能够找到该缓存应用。2 详细新闻图文混排方法:1)使用TextView的 fromHtml方法 2)自定义View(不知道怎么处理) 3)使用WebView,加载Html网页,Html中的网页图片的点击事件处理需要Htm

2016-04-04 16:16:06 303

原创 AsyncTask与Thread的区别

AsyncTask(异步)和Thread(线程)的使用与对比一、①AsyncTask的使用    当一个异步任务被执行,任务经过四各步骤:1.onPreExecute(),在UI线程上调用任务后立即执行。这步通常被用于设置任务,例如在用户界面显示一个进度条。2.doInBackground(Params...),后台线程执行onPreExecute()完后立即调用,这步被用

2016-03-31 00:14:34 1070

原创 蘑菇街面试题目

图片加载策略,缓存策略,url长的改变成短的,EditText实现策略Viewgroup,跟踪Android源码,

2016-03-29 21:01:23 437

原创 OSI七层框架对应协议

2016-03-27 14:52:22 296

转载 七层协议详解

TCP/IP是一个协议族,是因为TCP/IP协议包括TCP、IP、UDP、ICMP、RIP、TELNETFTP、SMTP、ARP、TFTP等许多协议,这些协议一起称为TCP/IP协议。以下我们对协议族中一些常用协议英文名称和用途作一介绍:  TCP(Transport Control Protocol)传输控制协议  IP(Internetworking Protocol)网间网协议 

2016-03-27 14:13:20 666

转载 把本地的int类型的图片转换成drawable、Bitmap

获取本地图片Bitmap decodeResource = BitmapFactory.decodeResource(context.getResources(), R.drawable.ic_default_user_bg_34);把本地的int类型的图片转换成drawableDrawable drawable = context.getResources().getDraw

2016-03-25 21:04:10 1925

转载 使用java.nio类库实现的Socket

前面几篇文章介绍了使用java.io和java.net类库实现的Socket通信,下面介绍一下使用java.nio类库实现的Socket。java.nio包是Java在1.4之后增加的,用来提高I/O操作的效率。在nio包中主要包括以下几个类或接口:* Buffer:缓冲区,用来临时存放输入或输出数据。* Charset:用来把Unicode字符编码和其它字符编码互转。* Ch

2016-03-25 15:58:10 292

转载 JAVA SOCKET使用

1.基本概念:  a.DatagramPacket与DatagramSocket位于java.net包中  b.DatagramPacket表示存放数据的数据报,DatagramSocket表示接受或发送数据报的套接字  c.由这两个类所有构成的网络链接是基于UDP协议,是一种不可靠的协议。  之所以不可靠是因为发送方不负责数据是否发送成功,接收方收到数据时也不会   向发送方反馈成功消息,容易导

2016-03-23 14:38:23 303

转载 TCP与UDP在socket编程中的区别

TCP与UDP在socket编程中的区别 一、TCP与UDP的区别 基于连接与无连接   对系统资源的要求(TCP较多,UDP少)   UDP程序结构较简单   流模式与数据报模式   TCP保证数据正确性,UDP可能丢包   TCP保证数据顺序,UDP不保证   部分满足以下几点要求时,应该采用UDP 面向数据报方式 网络数据大多为短消息   拥有大量

2016-03-23 14:13:28 367

原创 工厂方法

要得到一个对象,不用new ,而是通过工厂方法得到目标对象的实例public class ISample {}public class SampleA extends ISample{}public class SampleB extends ISample{}public class Factory {    public static ISample c

2016-03-22 13:56:48 223

原创 Studio如何导入JAR包 快传导入glideJAR包出问题

今天想要导入glide包进入Studio,但是不知道怎么导入,项目结构有点奇怪,后来经过解决,解决办法如下把JAR包直接复制到项目目录下面的lib目录下面,然后在Studio中Syn project with gradle file,最后在app modul中加入依赖第三方JAR包的代码dependencies { compile fileTree(dir: '../../libs

2016-03-21 16:06:36 3245

原创 Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant)

今天碰到了这么一个问题, Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.不知道什么原因,在Manifest文件中该对应Activity加上android:theme="@style/AppThem

2016-03-20 23:00:20 5209

转载 Aplication的作用

学习android挺长时间了,但是对于Appliction还不是很了解。今天花一些时间研究了一下Application。 What is ApplicationApplication和Actovotu,Service一样是android框架的一个系统组件,当android程序启动时系统会创建一个 application对象,用来存储系统的一些信息。通常我们是不需要指定一个Appli

2016-03-19 09:53:56 466

原创 Android Studio依赖其他工程

今天在github上下了一个项目,可以正常RUN,想直接加到自己的项目中去,但是不能像eclipse一样直接导入workspase然后添加isLibrary,根据鹏哥的说法是1 在app module中的build.gradle中添加compile project(':AnyShareOfAndroid-master')2 在setting.gradle中添加include ':A

2016-03-19 08:54:57 591

原创 用NFC建立蓝牙连接聊天软件

原理流程 NFC发送A的蓝牙地址给B,B接受到A的蓝牙地址并与之配对建立socket连接,通过socket传送文件package com.example.huanghanqing.testnfcbluetoothchat;import android.app.ActionBar;import android.app.Activity;import android.bluetoo

2016-03-03 15:39:09 1448

原创 用NFC简化蓝牙配对并互相发送对方的蓝牙的MAC地址

本文的实现过程如下Touch DeviceA发送DeviceA的MAC地址给DeviceB,DeviceB接收到DeviceA的MAC地址后,请求与之配对,配对成功后将DeviceB的MAC地址通过蓝牙发送给DeviceADevicA 发送本机地址@Overridepublic NdefMessage createNdefMessage(NfcEvent event) {

2016-03-01 22:40:47 4092

原创 Fragment的使用

Container类提供容器,本例在XML中提供了一个LinearLayout的container,然后调用getSupportFragmentManager().beginTransaction().add(R.id.container,new SecondActivity()).commit();把容器传递给想要启动的Fragment和想要启动的Fragment目标Fragment

2016-02-29 20:00:22 237

原创 项目的结构

HomePage和抽屉中的方法开启同一个类中相同的方法ToolKitBlock.java与ListAdapt_NewNav.java共同指向入口Activity-FileExloreActivity.java

2016-02-29 15:31:46 493

原创 Android蓝牙连接,传输数据

本篇文章介绍两部android手机之间如何通过蓝牙传输数据1 权限声明uses-permission android:name="android.permission.BLUETOOTH">uses-permission>uses-permission android:name="android.permission.BLUETOOTH_ADMIN">uses-permission>

2016-02-26 21:58:55 2464

原创 Android Service详解

首先介绍一下Service的两种启动方式,第一种是通过是startService方法启动服务,接受一个Inten的参数,首先调用service的onCreage犯法,再调用onStartCommond方法,与Activity类似第二种是通过 bindService方法启动服务,如果服务未启动,首先会执行onCreate方法,否则只执行onStartCommond方法,在客户端调用bindS

2016-02-24 22:41:02 318

原创 把字节流转化成bitmap对象,从Intent中获取Ndef对象,向手机根目录中写入文件

把字节流转换成bitmap对象public static Bitmap getPicFromBytes(byte[] bytes, BitmapFactory.Options opts) { if (bytes != null) if (opts != null) return BitmapFactory.decodeByteArray(by

2016-02-24 21:15:41 686

原创 <intent-filter>隐式intent的用法

1 action 与category设置intent的参数必须与在manifest中的引号里面的内容相等,这个String内容的东西可以随意写,但是处理的Activity必须含有一个默认的分类category android:name="android.intent.category.DEFAULT" />action与category类似,没啥好说,直接上代码intent-fil

2016-02-22 20:19:30 387

原创 filebrowser文件浏览器

1获取根目录下的文件 File file = new File(“/”);2把获取得的文件依次添加到ArrayAdapter中,然后setAdapter真是相当的简单3为listActivity设置监听器,并启动自己所在的activity,传过去的值为被点击的文件的pathOVER~package com.example.huanghanqing.filebrowser;

2016-02-20 21:39:28 2153

原创 内部存储

不罗嗦,上代码package com.example.huanghanqing.testinternalstorage;import android.content.Context;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;i

2016-02-20 15:50:45 199

原创 SharedPreference的使用

不废话,Sharedpreference就是一个存储在手机内存(路径为包名.shapredpreference的名称)的一个文件,它的形式就是键值对所以在Android中就有两个操作,存与取,存的步骤是1取得该文件的editor    Edit d = sp.edit(), 2使用putBoolean方法,放入键值对,3是提交commit,取的步骤是使用文件对象调用getBoolean的方

2016-02-19 20:45:19 286

原创 ContentProvider的用法与理解

ContentProvider是用来分享数据的一个标准接口,所以在使用上它分为3部分中间部分就是一个注册,在manifest中加provider,由主机名和路径组陈,表示全球唯一的一个继承了ContentProvider并实现了抽象方法的类ContentProvider部分就是向外部提供数据的部分,它提供了一些标准的方法让外部操作应用程序的数据 需要使用别的应用程序的使用者,get

2016-02-18 22:24:01 959

用NFC连接蓝牙实现IM即时通讯

用NFC连接蓝牙,通过蓝牙实现即时通讯

2016-03-08

sqlite数据库

sqlite数据库

2016-03-08

nfc传输文件

nfc传输文件

2016-03-08

空空如也

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

TA关注的人

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