自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Android——PullToRefresh上拉加载下拉刷新

现在不论是微博还是什么,很多app都有上拉加载和下拉刷新,这个效果PullToRefresh就可以实现。下拉刷新:上拉加载:这个东西不仅仅是ListView,很多都可以适用。只要把这些都当作你正常的ListView,GridView使用就好了。全包名:< com.handmark.pulltorefresh.library.PullToRefreshListView 需要导入第三方library,产

2017-03-31 17:18:16 985

原创 Android——Slidingmenu互挤抽屉(QQ)应用

相比较之前DrawerLayout的抽屉效果,这个SlidingMenu显得更加的简单,效果也更为好看,不会遮挡主内容区域。Slidingmenu是单标签,不能添加其他控件,也就意味着不能作为Fragment的窝。。不能与Fragment配合。Slidingmenu是独立于Activity的,设置menu之后与Activity绑定即可。需要导入第三方library,产生依赖,项目中属性中设置。这个可

2017-03-31 16:58:48 490

原创 Android——DrawerLayout抽屉效果

做一个这样的项目,通过获取左边抽屉的新闻标题,在主界面内容区显示对应的内容。效果图:这里也要用到第三方包v4包下面的DrawerLayout,可以设置主内容,左抽屉,右抽屉,但是必须都在< android.support.v4.widget.DrawerLayout >标签内,第一个是必须主内容区域,剩下两个为左右抽屉,设置android:layout_gravity=”left”便是左抽屉,rig

2017-03-31 16:17:33 407

原创 Android——ViewPager和底部导航的配合

ViewPager之前已经说过,微信左右滑动的效果就是ViewPager的效果,但是人家的滑动和底部导航是一块变化的,所以我们来实现这个效果。先来做底部导航,实际上是需要8张图片,选择的图片和未被选择到的图片,这些需要存放在资源包下面。整体用LinearLayout布局,上面一个ViewPager,下面导航一个LinearLayout。xml:<LinearLayout xmlns:android=

2017-03-31 15:50:08 693

原创 Android——BitMap的使用

BitMap代表一张位图,扩展名可以是.bmp或者.dib。位图是Windows标准格式图形文件,它将图像定义为由点(像素)组成,每个点可以由多种色彩表示,包括2、4、8、16、24和32位色彩。例如,一幅1024×768分辨率的32位真彩图片,其所占存储字节数为:1024×768×32/8=3072KB位图文件图像效果好,但是非压缩格式的,需要占用较大存储空间,不利于在网络上传送。jpg格式则恰好

2017-03-31 15:16:29 418

原创 Android——距离传感器(PROXIMITY)的应用

有了之前加速传感器的知识,距离传感器也是一样的。来做一个通过距离传感器来记录你靠近它的次数。public class MainActivity extends Activity { private TextView tv; private Sensor sensor; private SensorManager sm; private SensorEventListe

2017-03-31 08:48:50 3821 4

原创 Android——加速传感器(ACCELEROMETER)的应用

加速传感器可以实现摇一摇的功能,通过你速度的变化来对它进行设置监听。和之前获得传感器的方法类似,不过多了监听而已。1、SensorManager sm=(SensorManager) getSystemService(Context.SENSOR_SERVICE);获得传感器服务。2、Sensor sensor=sm.getDefaultSensor(Sensor.TYPE_ACCELEROMETE

2017-03-31 08:44:24 3546

原创 Android——获得自己手机内部的传感器

每一部手机都有很多传感器来完善手机的各个功能,加速传感器通过速度的变化来统计数据(记步),重力传感器、距离传感器(打电话自动锁屏)等等很多。如何获取自己手机内一共有多少个 传感器呢?1、SensorManager sm=(SensorManager) getSystemService(Context.SENSOR_SERVICE);获得传感器服务2、List< Sensor > list = sm.

2017-03-31 08:26:22 1140

原创 Android——关于Fragment的使用

关于Fragment的使用,总结几个要点:1、创建Fragment类,需要Fragment。用周期方法中的onCreateView方法,通过参数inflater.inflate将自己定义的Fragment布局转换成View,一个Fragment对应一个布局。inflater.inflate(R.layout.home_fragment, null)2、在mainactivity中布局给Fragmen

2017-03-30 21:32:07 481

原创 Android——属性动画(ObjectAnimator)

上次ValueAnimator也是属性动画的一种,有些人可能会问,动画可以组合并行执行,能不能串行一个一个来呢(既然你诚心诚意的请教了,那我就大发慈悲的告诉你,,当然是阔以的啦)ObjectAnimator的功能非常强大,可以设置动画的串行并行,也更加简洁、方便的使用动画。1、创建动画集合set(组合动画时)AnimatorSet set=new AnimatorSet();2、制造自己指定的动画O

2017-03-30 21:15:02 600

原创 Android——属性动画(ValueAnimator)

属性动画,顾名思义是关于属性值设定的动画,长度,高度的随意拉伸,屏幕的随意移动等待。属性动画分两种:ValueAnimator和ObjectAnimator。ValueAnimator是关于设定一系列值的动画,给他变化的关键值(offloat.)给他一个时间 setDuration、给他一个加速器 SetsetInterpolator你能得到无数个变化过程中的值,该动画就是在这些值中随意

2017-03-30 20:45:51 424

原创 Android——Animation动画

动画分Tween Animation和属性动画animator。动画大致分四种:translate平移动画、scale缩放动画、alpha透明度动画、rotate旋转动画。设置动画属性值一般有这么5个:1.起始状态 from2.目标状态 to3.时间 duration4.动画终了的状态 fillafter5.加速度的问题 插值器interpolator常用xml实现,当然代码也可以,这里用xml来

2017-03-30 17:35:22 783

原创 Android——MediaRecorder录音

MediaRecorder是来进行录音,同样和MediaPlay用法大同小异,必须依据状态图来操作。1、MediaPlayer recorder=new MediaRecorder();创建对象2、recorder.setAudioSource(MediaRecorder.AudioSource.MIC);设置录音来源设备为麦克。3、recorder.setOutputFormat(MediaRec

2017-03-30 16:44:12 502

原创 Android——MediaPlayer音频播放

关于MediaPlay播放,是调用底层的播放器,只需要按照Mediaplay的状态图一步步写就没问题了。eclipse里选择MediaPlayer这个类名,在下面的javadoc中会显示这个图。1、先把play对象new 出来。MediaPlayer play=new MediaPlayer();2、现在达到了Idle状态,调用setDataSource到达Initialized。play.setD

2017-03-30 15:58:55 504

原创 Android——如何检测自己手机是否联网

想要看自己手机是否联网,需要三步:这里直接写成一个方法:private boolean isNetWork(){ ConnectivityManager cm=(ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo info=cm.getActiveNetwor

2017-03-23 16:47:15 1002

原创 Android——写一款属于自己的天气预报

直接上图:在这里,先来提供天气接口:http://wthrcdn.etouch.cn/weather_mini?city=在city后面需要查询的城市即可,这是JSON数据,需要解析自己需要的信息。上次已经说到了如何解析,现在直接附代码:package com.example.weathertest2;import java.io.IOException;import java.io.Unsupp

2017-03-23 16:43:02 2479

原创 Android——JSON解析数据

JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式。通俗一点就是说类似于XML文件格式,用来交换数据,但是要比xml更加轻巧,简单地说 ,JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在网络或者程序之间轻松地传递这个字符串,并在需要的时候将它还原为各编程语言所支持的数据格式,任何支持的类型都可以通过

2017-03-23 16:20:56 467

原创 Android——网络通信(OkHttp)

和之前的HttpUrlConnection相比较,OkHttp显得更加的方便,同样也是分get和post请求。get请求需要这几步:导入okhttp、okio包(导入到项目中lib下面)网盘下载1.OkHttpClient(创建客户端)2.Request.builder(造请求)builder.get()builder.url()builder.build()3.Call call=client.n

2017-03-23 14:56:51 367

原创 Android——网络通信(HttpUrlConnection)

Android的网络通信,由于版本的废弃,现在大体分以下两种:1、HttpUrlConnection2、OkHttpAndroid网络通信无非就是发送请求、获得应答、解析应答。请求方式有两种:get和post请求。1、get请求是一种以明文方式追加在URL后面形式,不安全,但是使用起来方便。2、post请求是以暗文显示的,如果连账号,密码这样的私密信息都在网址(URL)中显示就太不安全了,适用 要比

2017-03-23 09:39:58 731

原创 Android——多线程(AsyncTask封装)

讲另一种Android多线程技术——AsyncTask封装,这个可以说是把Handler进一步封装,条理更加清晰,同样地,使用起来又稍微复杂一些。附图:在new的时候,AsyncTask类中有四个方法:onPreExecute()——>doInBackground()——>onProgressUpdate()——>onPostExecute()。分别对应着准备前的资源工作——>耗时操作(子线程)——

2017-03-22 12:39:35 585

原创 Android——多线程(Handler机制)

Android的多线程技术,大致分两种:Handler机制和AsyncTask封装。在这里要提到一点,在Mainactivity中运行的是属于UI线程,1.UI线程运行界面 里面不能放耗时操作(耗时操作要放在子线程)2.子线程无法访问UI线程 只有UI线程能访问 界面耗时操作,顾名思义需要通过时间才能达到的效果的操作。先来说Handler,来看张图:在这里,Handler通过子线程发送消息,将一个

2017-03-22 11:02:13 354

原创 Android——动态广播实例

通过一个Activity发出改变背景颜色的广播,另一个Activity接收广播来改变自己的背景。效果图:小的类似于dialog其实是一个Activity,只是这个Activity的主题样式改为了Dialog的形式。在Activity的标签中,有android:theme="@android:style/Theme.Dialog"便可将这个Activity变为dialog样式的Activity。里面只

2017-03-15 18:34:40 2847

原创 Android——接收广播(静态注册)

静态注册广播是针对整个手机,只要你安装了此app,它都可以接收到发来的广播,并不是仅仅局限于一个Activity,一个应用内部。静态注册需要将发送方和接收方各自创建一个Android项目:发送方:只需要发送广播sendBroadcast(Intent),通过参数intent设置广播的action标识就好啦。接收方:1.一个类继承broadcastreceiver2.mainifest中注册MyRec

2017-03-15 11:15:54 1872

原创 Android——接收广播(动态注册)

Android中的广播,类似我们现实生活中,村里面那种大广播,大喇叭,一吆喝,全村人都会得知该消息。例如app中经常有设置夜间模式和白天模式,通过点击将所有模块进行变更,这就是在发送广播,各模块接收广播后改变自己的颜色。如果说一个个获得那么多View的对象,通过对象设置其color,那么,这样显得有点繁琐且麻烦了。广播同时也是为了降低耦合,各自管理各自的控件。下面来谈一下Android广播,实现组件

2017-03-14 21:39:53 2712

原创 Android——Notification通知

通知大家应该都不陌生了,类似qq通知消息,点消息会跳转到对应聊天界面。我们现在通过按钮来自己发送一个通知,这里明确一点,通知不是依附于Activity,及时所在的Activity没启动也可以发通知,是整个app。来看效果图:类似dialog的设置,有标题,图标,title等等的设置。代码:Notification.Builder builder=new Builder(this);

2017-03-13 16:42:33 345

原创 Android——Menu菜单

这里讲两种菜单,OptionsMenu选项菜单和ContextMenu上下文菜单。什么是optionsMenu菜单呢?右上角点击会有菜单出现,这个就是选项菜单。那上面是ContextMenu呢?通过长按某个item会出现这个,当然,这个是自定义的,这种几Ius上下文菜单。先来说选项菜单OptionsMenu。有两个方法:onCreateOptionsMenu和onOptionsItemSelecte

2017-03-13 16:21:10 442

原创 Android——使用contentprovider获取内容

contentprovider内容提供者,是Android的四大组件之一,可以获得你手机内部的信息,提供给你的app。这里写一个获得手机所有音频文件及音频信息,点击播放,大概有这么几步:1.获得ContentResolver2.query查找3.使用mainactivity:package com.example.audiotest;import android.app.Activity;impo

2017-03-13 15:51:54 1723

原创 Android——数据库sqlite存储数据

一些数据并不希望像配置文件那样明文显示不太安全,一些重要的数据还是需要放入数据库中。Android系统是自带嵌入式的数据库,并不需要额外去安装数据库,并且这种嵌入式数据库sqlitedatabase是小型,轻量级的,并不像sql,Oracle那样庞大。数据库文件存储位置:data/data/packagename/databases/xxx.dbsqlite数据库存储分几步:1、创建一个类继承sql

2017-03-13 14:48:11 670

原创 Android——SdCard数据存储

SDcard存储,一般是用来存一些比较大的文件,类似图片,音频,视频等等。QQ接收的文件一般存放tecent/filerev文件夹下,也是一种sdcard存储。既然是访问sdcard,那么必定要涉及权限问题。在maneifest文件中设置sdcard的读取,挂载权限。<!-- 在SDCard中创建与删除文件权限 --> <uses-permission android:name="andr

2017-03-13 11:52:29 552

原创 Android——sharepreference的实例

这里做一个很有趣的项目:通过自己设置自己app中TextView的背景颜色, 下次打开该app时候TextView背景颜色就是上次选的颜色。通过sharepreference配置文件就可以实现这样的功能:先上效果图:下次打开时候:未选择下面颜色时,也是默认绿色。我们来打开配置文件看看:废话不多说,直接上代码:mainactivity:package com.example.textsharepre;

2017-03-13 11:32:55 436

原创 Android——文件存储

文件存储该文件的存储目录:/data/data/packagename/files/xxx.1、写入文件数据通过openFileOutput(String name, int mode)方法获取写入流,通过java的写流进行操作。 FileOutputStream fos =openFileOutput("name.txt", Context.MODE_PRIVATE)

2017-03-13 11:14:28 270

原创 Android——SharePreference数据存储

SharePreference存储,是Android中的设置存储,存一些配置信息,很多app有一些用户的个人设置,通过第一次设置一些属性,下次打开该app时会按照用户指定的设置打开,例如用户切换个人主题。其存储在“data/data/packagename/shared_prefs目录下。打开该配置文件,是以key—value的键值对形式存储的。里面我只存入了一条name记录。1、要想操作它,需要获

2017-03-13 10:56:47 435

转载 Android——属性动画的基本用法

在开发中属性动画是很常用的功能,下面我把属性动画的基本用法记录一下,供他人学习,也逐渐积累自己的知识。 单个动画效果: //创建动画对象,后面的参数依次为:动画效果的目标组件,需要改变的该组建的属性(必须有对应的get和set方法就可以),后面三个参数写变化过程对应数值。 ObjectAnimator animator= ObjectAnimator.ofFloat(textView, “TextS

2017-03-03 18:48:41 384

原创 Android——展开导航的设计...

我们来看看效果:未展开之前:展开以后:这个就和手游中的+那个图形效果一样的,玩过手游的人应该知道。布局文件采用framelayout:(层叠布局)<?xml version="1.0" encoding="utf-8"?><FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layou

2017-03-03 18:46:40 344

原创 Android——跑马灯效果

跑马灯效果:文字会慢慢走,这就是所谓的跑马灯效果。需要在布局文件中添加几个属性:<TextView android:id="@+id/tv" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="世界上最远的距离,不是爱,不是恨,而是熟悉的人,渐渐变得

2017-03-03 18:15:35 483

空空如也

空空如也

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

TA关注的人

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