自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 实践--SlidingMenu简单实例

实现的逻辑就是主界面我是用一个FrameLayout布局,我点击侧滑菜单的不同的选项,我就同时切换相应的Fragment来加载到主界面的布局就可以了。再有就是在相应的Fragment中添加相应的控件,添加相应的点击事件的逻辑处理等,特别注意,我在一个界面添加了一个ViewPager来显示东西,这里ViewPager必须使用PagerAdapter,我用那个FragmentPagerAdapter

2016-04-28 19:56:16 298

原创 SlidingMenu--导入开源库及简单使用

先来看效果图 导入开源库1、下载SlidingMenuhttps://github.com/WangZhuangIT/SlidingMenu2、新建AS项目,把SlidingMenu-master中的library文件夹(我把这个文件夹重命名为sliding_menu)拷到新建项目文件夹中与app文件夹同级3\在settings.gradle文件中添加 include ‘:sliding_menu’

2016-04-28 08:54:20 1100

原创 传感器--光照和加速度传感器

使用简介第一步,获取传感器的SensorManager实例SensorManager sensorManager= (SensorManager) getSystemService(Context.SENSOR_SERVICE);第二步,调用相应的传感器类型这里以光照传感器为例 Sensor sensor=sensorManager.getDefaultSensor(Sensor.TYPE_LI

2016-04-27 10:39:54 568

原创 实践--天气预报应用实例

主要功能省市县三级列表展示城市,按选择查询对应城市的当天天气和近期天气情况可以手动的切换城市可以手动更新天气以及后台的自动更新天气自定义折线图显示近期的温度变化桌面小组件实时显现天气和时间效果图如下 这个小应用开发过程中用到的自定义View–折线图和实践–桌面小组件之天气小组件在前面的博客中都有讲解,如有疑惑,请前往查看。数据的获取http://www.weather.c

2016-04-26 19:05:43 5152

原创 Android位置服务--百度定位,获取自己的位置

使用百度的定位API,首先我们要在官网下载相应的定位API包 在然后的环境配置可以参考官方的说明第一步-将so文件的压缩文件解压出来,把对应架构下的so文件放入开发者自己APP的对应架构下的文件夹中(建议全部放入以提高程序兼容性),将locSDK_6.X.jar文件拷贝到工程的libs目录下,这样您就可以在程序中使用百度定位SDK了。 使用eclipse开发的开发者,只需要将SO的文件夹放到li

2016-04-26 16:57:47 3173

原创 实践--ViewPager实现App引导页

效果图,这个效果图看着很撇脚,我在我手机上运行就挺合适的,可能是图片和这个模拟器不对付吧,大家凑合看下吧,汗! 基本功能就是第一次开启程序,我们就加载引导页,当滑倒最后一个引导页,只要我们点击最后一张引导页,就会进入下一个界面了。下次再进入程序,就不会在加载引导页了。我们先来看布局文件,其实这里是应用了FrameLayout的布局特点我们的父布局是一个FrameLayout,这就保证了我们可以重

2016-04-24 22:05:37 561

原创 实践--桌面小组件之天气小组件

首先感谢这篇博客的博主,通过他的博客才学会的如何使用小组件。效果图如下 关于小组件的原理已经在 UI控件–桌面小组件(1)介绍过了,又需要的自行去浏览。1.在res/xml下创建配置文件appwidget_provider.xml<?xml version="1.0" encoding="utf-8"?><appwidget-provider xmlns:android="http://sch

2016-04-24 21:19:41 4743 4

原创 UI控件--桌面小组件(1)

我们手机上安装的软件一般都会带一些小组件,这些小组件一般可以增加用户体验,更好的将自己的服务呈现给用户,我们就来看看最简单的小组件的使用。所谓桌面小控件,就是能之间显示在Android系统桌面的小程序。 桌面小控件的实现是基于Broadcast的形式实现的,因此,每一个桌面小控件都对应于一个BroadcastReceiver类。Android系统提供了一个AppWidgetProvider类(它

2016-04-23 17:30:06 2190

原创 自定义View--折线图

最近写一个天气的软件练手,需要用到折线图显示天气,效果图如下自定义View步骤 现在我们来使用Canvas类自定义一个View控件。自定义控件步骤如下: 1. 自定义View,首先定义一个MyView类继承View类。2.重写View的两个构造器。  View是包含四个构造器的,我们必须重写MyWidgetView(Context context, AttributeSet attrs)构

2016-04-23 11:32:49 811

转载 自定义View--Canvas和Paint详解

转自http://blog.csdn.net/to_be_designer/article/details/48500801 Android给我们提供了大量的View控件,但这还是远远满足不了我们的要求,有时候开发所需要的控件形式是在Android提供的控件中是不存在,这就需要我们自己去定义一个。那么如何自定义控件?   学习自定义控件,首先要先掌握Canvas类的使用。 Canvas

2016-04-23 09:34:22 603

原创 线程补充

有时候,我们在程序中运行完毕,获取数据之后,需要及时的更新UI,这个时候除了异步消息处理机制之外,我们还可以用myHandler.postDelayed(new Runnable() { @Override public void run() { imageView.se

2016-04-22 16:55:01 283

原创 UI控件--SwipeRefreshLayout

下拉刷新的控件,我们先来看效果图! public class MainActivity extends AppCompatActivity implements SwipeRefreshLayout.OnRefreshListener{ private SwipeRefreshLayout swipeRefreshLayout; private TextView textView;

2016-04-22 16:32:18 274

原创 Android位置服务--BaiduMap的使用(2)

这篇博客是在上一篇博客Android位置服务–BaiduMap的使用(1)的基础上实现的,如果有疑问,不妨先把上一篇博客看明白。这里我们实现的功能是能根据相应的地理位置名称,将其转化为坐标,同时在地图上相应的点上标记出来,同时可以将这些点通过折线连接在一起。 总体的代码如下public class MainActivity extends AppCompatActivity impl

2016-04-17 21:49:33 499

转载 Android位置服务--BaiduMap的使用(1)

本博客参考自 http://blog.csdn.net/kezhongke/article/details/42678077和http://blog.csdn.net/to_be_designer/article/details/48662227先上效果图 这里实现了简单的地图显示,同时自带了放大和缩小按键,下面我们就来看如何实现的吧。如何获得BaiduMap SDK  要使用百度地图,首先我

2016-04-17 21:13:34 617

原创 Android位置服务--用户定位Location

安卓中,用自带的位置服务,可以查看自己目前的经纬度信息,不过在此之前我们需要声明相应的权限信息。 <uses-permission android:name="android.permission.INTERNET"></uses-permission> <uses-permission android:name="android.permission.ACCESS_FINE_LOC

2016-04-17 20:42:29 731

原创 网络编程--观察者模式

网络请求无论在程序哪里发起,我们都是那些代码,只是参数不同罢了,所以我们可以封装一个HttpUtils类,在其中将重复的代码都写好,只需要我们传入的参数不同,我们就可以发起不同的网络请求了。其实就是网络请求一般都是耗时操作,所以我们需要另开线程去访问网络,但是如果我们在访问网络的方法中开启新的线程,我们就不得而知这个新开的线程是否获取的数据,可能在数据还没返回之前,我们访问网络的方法就已经执行完毕

2016-04-16 18:12:14 593

原创 网络编程--JSON数据解析

JSON格式的数据有两种解析方式,一种是使用JSONObject,这种解析方式在 IO处理这篇博客中已经详细的讲解过了,如果有疑问可以去这篇博客中学习。这里我们只讲解第二种方式GSON方式GSON使用GSON需要导入第三方的包 解析的数据如下所示[ {"name":"rose","age":"25"}, {"name":"jack","age":"20"}, {"na

2016-04-16 17:27:00 497

原创 网络编程--xml数据解析

xml数据解析共有三种解析方式SAX,DOM和PULL。其中的SAX和DOM解析在IO处理这篇博客中进行了详细的解释,这里就不再重复了。我们重点讲解一下PULL解析PULL解析xml其实PULL解析xml和DOM解析非常的相似要解析的数据如下<?xml version="1.0" encoding="utf-8"?><apps> <app> <id>1</id>

2016-04-16 12:10:09 310

原创 实践--音乐播放器

话不多说,先上效果图这里由于模拟器的适配不太好,一些显示的细节并不如意,在我的手机上就都能实现功能比如我每次打开软件是一张图片,后台执行筛选音乐文件,模拟器上却不显示图片我每次放歌都有个Notification告诉我在放哪一首,然后消失,模拟器上却也不不显示基本细节就是这些吧,这个软件运行在手机上效果更理想一些。基本思路音乐播放器其实就是应用了Activity,Service和Broadc

2016-04-16 09:34:07 3328 2

原创 网络编程--HTTP协议访问网络

使用HttpURLConnection主要代码如下,布局文件就不再贴出,代码逻辑就是点击按钮,使用HttpURLConnection访问百度首页,并获取百度首页的源码当获取到源码的时候,通过消息处理机制,更行TextView显示的内容public class MainActivity extends AppCompatActivity implements View.OnClickListe

2016-04-15 23:44:06 546

原创 网络编程--WebView

程序逻辑就是当我点击按钮的时候,webView去访问百度的首页,并且展示出来同时会有网页加载进度的进图条实时显示进度网页能够回退之前访问的网页布局代码<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xm

2016-04-15 23:11:26 257

原创 UI控件--RecyclerView(2)

RecyclerView还有网格布局,和瀑布布局,基本写法都和UI控件–RecyclerView(1)这篇博客的写法大同小异,可能以为放置的控件不同,我们在适配器中的代码略有区别,大体思路是一致的。- 唯一的区别在于,我们设置的相应的布局管理器实例不同。瀑布布局瀑布布局就是相应的控件交替排放,不会像网格布局那样整齐排列MysecAdapter adapter2 = new MysecAdapt

2016-04-15 22:59:59 305

原创 UI控件--RecyclerView(1)

要使用这个控件需要导入两个包 水平排放效果图 布局很简单,仅仅是添加了一个RecyclerView,代码如下:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertica

2016-04-15 19:02:38 523

原创 UI控件--CardView

要使用这个控件需要导bao 布局代码如下:<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" //这一句必须要自己

2016-04-15 18:28:21 301

原创 UI控件--TabLayout

Android 5.0给TableLayout加入了新的特性,所以TableLayout又开始被使用了/简单的TableLayout使用这个控件,首先我们要点击File–>Project Sturucture–>app来进行导包然后在布局文件中使用之前,需要在父布局中添加这句话xmlns:tab="http://schemas.android.com/apk/res-auto"布局文件的代码

2016-04-15 09:42:32 378

原创 四大组件之Service 前台服务

前台服务和通知十分相似,典型的前台服务,比如天气软件通常会在系统状态栏显示当前的天气信息,这就是应用了前台服务。前台服务的实现代码十分简单主活动代码如下:public class MainActivity extends AppCompatActivity implements View.OnClickListener{ private Button button_start,butto

2016-04-12 23:52:28 406

原创 全局获取Context的技巧

原理是这样的,Android提供了一个Application类,每当应用程序启动的时候,系统就会自动将这个类进行初始化,。而我们可以定制一个自己的Application类,以便于管理程序内的一些全局的状态信息,比如说全局的Context。首先我们自定义的Application类代码如下:public class MyApplication extends Application { pr

2016-04-12 23:31:02 387

转载 四大组件之Service 生命周期(3)

参考自http://blog.csdn.net/to_be_designer/article/details/48338123服务的生命周期  服务的生命周期我们要分两种介绍:启动类型服务周期和绑定类型服务周期。我们可以先看下图:    启动类型服务的周期   一个组件调用startService()方法创建服务,然后服务无限期的运行,并且必须通过调用stopSelf()方法来终止自己。其他

2016-04-12 21:22:55 311

原创 四大组件之Service 与Activity通信(2)

活动和服务之间进行通信还记得上一篇博客中的Binder方法吗,对这个方法进行合理的使用,我们就可以实现活动与服务之间的通信,并通过此活动可以指定服务去执行什么动作。活动和服务之间进行通信需要将活动和服务绑定在一起才可以我们先来看自定义的Service中的代码public class MyService extends Service { private MyBinder myBind

2016-04-12 21:10:51 288

原创 四大组件之Service(1)

启动和停止服务首先我们要定义一个自己的服务public class MyService extends Service { MyBinder myBinder=new MyBinder(); class MyBinder extends Binder{ public void start(){ Log.d("MyBinder","start方

2016-04-12 20:35:23 193

转载 AsyncTask的缺陷和问题

本篇博客转自(http://blog.csdn.net/goodlixueyong/article/details/45895997)在Android开发中,AsyncTask可以使得用户避免直接使用Thread类和Handler 来处理后台操作,适用于需要异步处理数据并将数据更新到界面上的情况。AsyncTask适用于后台操作只有几秒的短时操作。但是AsyncTask本身存在很多糟糕的问题,如果使

2016-04-12 20:12:34 219

原创 Android多线程--AsyncTask

安卓中开启多线程的博客在这里Android多线程–Handler 这里只讲解一下AsyncTaskAsyncTask其实AsyncTask就是用安卓中的消息处理机制进行封装好的一个类,可以在其中特定的方法中修改ui界面主线程逻辑代码主线程中,仅仅写了一个点击按钮,同时开启一个AsyncTask的任务,并无其他复杂的操作public class MainActivity extends Ap

2016-04-12 20:10:30 239

原创 Android多媒体--音视频播放

音频播放MediaPlayersetDataSource()设置播放音频文件的位置,也可以设置网上音视频的url来进行播放prepare()在开始播放之前调用这个方法完成准备工作start()开始或继续播放音频pause()暂停音频播放reset()将MediaPlayer对象重置到刚刚创建的状态seekTo()从指定位置开始播放音频stop()停止播放音频,调用这个方法

2016-04-12 19:58:41 1068 2

原创 UI控件--Fragment

碎片的使用,不仅仅限于平板和手机之间的适配的问题,很多的手机软件中也使用了碎片。比如手机qq和微信,底部的联系人,设置,最近消息的切换等就是典型的碎片的使用。碎片的生命周期 有关于碎片的知识点都已经整合到下面的两篇博客中。 UI控件–ViewPager详解使用Fragment实现ViewPager滑动(4)UI控件–ViewPager详解带Tab交互的ViewPager(5)

2016-04-10 23:10:08 299

原创 UI控件--Gallery

Gallery是画廊控件,通常在我们的手机相册预览的时候,手机屏幕底部会出现一排图片的预览,我们可以滑动这排预览来点击自己想要查看的图片,就是Gallery来实现的功能。效果图 自定义Adapterpublic class GalleryAdapter extends BaseAdapter { private List<ImageView> dataListPic; priva

2016-04-10 22:46:17 314

原创 UI控件--ListView补充:包含多个子项布局的列表

效果图 首先分别定义三个不同的子项item布局布局一<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="

2016-04-10 22:36:35 1074

原创 实践--应用广播收发短信

接收短信接收短信的Action为android.provider.Telephony.SMS_RECEIVEDpublic class MainActivity extends AppCompatActivity { private TextView textView_msgNum,textView_msgContent; private MyMsgReceiver myMsgRe

2016-04-07 18:00:48 438

原创 实践--Notification实现Music状态栏

在使用手机的一些音乐软件的时候,当我们播放音乐的时候,音乐软件都会在手机的状态栏生成一个快捷的工具栏,会显示当前播放的歌曲信息,以及对歌曲的播放/暂停,上一曲,下一曲等操作。我们就是用Notification实现这个工具栏效果图布局文件的简单实现 <?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://s

2016-04-07 17:31:28 829

原创 UI控件--Notification

最简单的NotificationNotification就是程序不是在后台运行的时候,有新的消息需要用户处理的时候,用来让用户看到的一种任务栏的提示信息。最常见的就是QQ消息等。 Notification.Builder builder=new Notification.Builder(this); builder.setSmallI

2016-04-06 16:49:44 314

原创 Content Provider实现跨程序数据共享

自定义Content Provider本次项目代码在实践–升级数据库最佳写法这篇博客的基础上增加的。需要自定义Content Provider的代码如下:public class MyDatabaseProvider extends ContentProvider { public static final int BOOK_DIR=0; public static final

2016-04-05 23:34:10 509

空空如也

空空如也

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

TA关注的人

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