自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (1)
  • 收藏
  • 关注

原创 HeadFirst设计模式部分源码

HeadFirst设计模式部分源码,按照《HeadFirst设计模式》的内容一步一步编写出的,可成功编译执行。GitHub下载:https://github.com/one-by-two/HeadFirst-Pattern.gitCSDN下载:https://download.csdn.net/download/lbw9368/10925225...

2019-01-18 11:18:03 460

原创 《第一行代码Android》学习总结第十三章 Android编程技巧

一、全局获取Context技巧。        在项目任何地方都轻松获取Context。        Android提供了一个Application类,每当程序启动时,系统会自动将这个类进行初始化,我们可以定制一个自己的Application类,以便管理程序内的一些全局状态信息,比如Context。1、创建一个MyApplication类继承自Application。publi...

2018-12-14 17:04:45 365 2

原创 《第一行代码Android》学习总结第十二章 Material Design

        它是由谷歌设计师基于传统优秀的设计原则,结合丰富的创意和科学技术所发明的一套全新的界面设计语言,包括了视觉、运动、互动效果等特性。一、Toolbar(一)创建Toolbar         Material控件中的一个控件,类似于ActionBar。1、将res/values/styles.xml文件中的parent属性改为Theme.AppCompat.Light...

2018-12-13 19:22:58 487

原创 《第一行代码Android》学习总结第十一章 基于位置的服务

        基于位置的服务,简称LBS。它的工作原理就是利用无线电通讯网络或GPS等定位方式来确定出移动设备所在的位置。通常有两种技术方式可以实现:        1、通过GPS定位,主要工作原理是基于手机内置的GPS硬件直接和卫星交互来获取当前经纬度信息,这种定位方式精确度非常高,但缺点是只能在室外使用,室内基本无法接收到卫星信号。        2、通过网络定位,主要工作原理是...

2018-12-10 15:01:43 1604

原创 《第一行代码Android》学习总结第十章 Service实践——下载功能示例

1、在app/build.gradle文件,dependencies闭包中添加依赖。compile 'com.squareup.okhttp3:okhttp:3.4.1'2、定义DownloadListener回调接口,用于对下载过程中的状态进行监听和回调。public interface DownloadListener { void onProgress(int pro...

2018-12-07 10:57:41 610

原创 《第一行代码Android》学习总结第十章 服务Service

一、定义一个服务。1、新建ServiceTest项目,右击com.launcher.servicetest→New→Service→Service。Exported属性表示是否允许除了当前程序外其他程序访问这个服务。Enabled属性表示是否启用这个服务。2、重写Service的如下方法。public class MyService extends Service { ...

2018-12-07 10:18:14 501

原创 《第一行代码Android》学习总结第十章 Android多线程

一、Handler异步消息处理机制        Android提供了一套异步消息处理机制,让子线程去执行一些耗时任务,然后根据任务的执行结果来更新相应的UI控件。Message        是线程之间传递的消息,它内部可以携带少量信息,用于在不同线程之间交换数据。可以使用what字段,arg1与arg2字段携带整型数据,obj字段携带Object对象。Handler    ...

2018-12-06 16:19:34 311

原创 《第一行代码Android》学习总结第九章 Android数据解析

        一般我们都会在网络上传输一些格式化后的数据,这种数据具有一定的结构规格与语义,当另一方收到数据消息之后就可以按照相同的结构规格进行解析,从而取出需要的内容。搭建简单的Web服务器1、下载Apache服务器并安装。2、在Apache\htdocs目录下,新建get_data.xml文件,并加入如下内容:<apps> <app> ...

2018-12-04 16:52:42 203

原创 《第一行代码Android》学习总结第九章 Android网络技术

一、WebView的用法    WebView控件,借助它我们可以在自己的应用程序里嵌入一个浏览器,从而轻松的展示各种网页。1、修改activity_main中代码,加入WebView控件用于显示网页。<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:...

2018-12-04 15:26:44 297

原创 《第一行代码Android》学习总结第八章 播放多媒体文件

一、播放音频        Android中播放音频一般使用MediaPlayer类来实现。一般分为以下几个步骤:1)创建一个MediaPlayer对象。2)调用setDataSource()方法设置音频文件路径。3)调用prepare()方法使MediaPlayer进入准备状态。4)调用start()方法开始播放音频。5)调用pause()方法暂停播放。6)调用r...

2018-11-30 11:26:33 541

原创 《第一行代码Android》学习总结第八章 使用摄像头与相册

一、调用摄像头拍照1、新建CameraAlbumTest项目,修改activity_main.xml文件,添加一个Button用于打开摄像头进行拍照,添加ImageView用于将图片显示出来。<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orienta...

2018-11-30 11:02:12 525

原创 《第一行代码Android》学习总结第八章 通知(Notification)

        当某个应用程序希望向用户发出一些提示信息,而该应用程序不在前台运行时,就可以借助通知来实现。        通知可以在Activity、Service与BroadcastRecevier中创建。通知的使用步骤:1)通过Context的getSystemService()方法获取NotificationManager对通知进行管理。getSystemService()方法...

2018-11-30 10:07:28 527

原创 《第一行代码Android》学习总结第七章 内容提供器ContentProvider

        主要用于在不同应用程序之间实现数据共享功能,它提供了一套完整的机制,允许一个程序访问另一个程序中的数据,同时还能保证数据的安全性。ContentProvider一共有两种用法:1、使用系统现有的ContentProvider来读取和操作相应程序中的数据。2、创建自己的ContentProvider给程序的数据提供外部访问接口。一、访问其他程序中的数据。Conte...

2018-11-26 21:19:50 591

原创 《第一行代码Android》学习总结第七章 运行时权限

一、Android 6.0以前的权限机制        为了保护用户的安全与隐私,Android从第一个版本开始就提出了权限机制。        当编程时,会存在一些功能需要访问用户的信息与隐私等问题。如因为访问系统的网络状态以及监听开机广播等涉及到用户设备的安全性。此时必须在AndroidManifest.xml文件中加入权限声明:<uses-permission andro...

2018-11-26 15:33:31 383

原创 《第一行代码Android》学习总结第六章 LitePal操作数据库

        LitePal是一款开源的Android数据库框架,它采用对象关系映射(ORM)的模式,并将平时开发常用的一些数据库功能进行了封装,使得不用编写一行SQL语句就可以完成建表和增删改查操作。对象关系映射(ORM):Java使用的编程语言是面向对象的语言,而使用的数据库则是关系型数据库,那么面向对象的语言与面向关系的数据库之间建立一种映射关系,这就是对象关系映射。一、配置Lit...

2018-11-24 17:38:28 422

原创 《第一行代码Android》学习总结第六章 SQLite数据库存储

        SQLite数据库是一款轻量级关系型数据库,运行速度很快,占用资源少,适用于移动设备,同时支持标准的SQL语法,支持数据库ACID事务。        SQLite数据库支持integer(整型)、real(浮点型)、text(文本型)与blob(二进制)等数据类型。一、创建数据库        SQLite使用SQLiteOpenHelper类实现对数据库的创建与升级...

2018-11-23 17:06:48 326

原创 《第一行代码Android》学习总结第六章 SharedPreferences实践——实现记住密码功能

         在上一章中BroadcastBestPractice项目基础上添加记住密码功能。博客地址:          https://blog.csdn.net/LBW9368/article/details/84135472     1、修改activity_login.xml中的代码,新建一个CheckBox复选框控件,用户通过点击进行选中或取消,表示是否需要记住...

2018-11-19 20:20:55 400 1

原创 《第一行代码Android》学习总结第六章 Android持久化技术——文件储存与SharedPreferences存储

瞬时数据:         指存储在内存当中,有可能因为程序关闭或其他原因导致内存回收而丢失的数据。数据持久化:        指将那些内存中的瞬时数据保存在存储设备中,保证即时在手机或电脑关机时这些数据仍然不会丢失,数据持久化技术提供了一种机制让数据在瞬时状态和持久状态之间进行转换。        Android提供了文件存储、SharedPreferences存储以及数据库存储...

2018-11-19 19:59:14 245

原创 《第一行代码Android》学习总结第四章 广播机制实践——强制下线功能

        强制下线功能需要在任何一个界面上弹出一个对话框,让用户必须点击对话框中的确定按钮,关闭所有活动,然后回到登录界面即可。          1、创建ActivityCollector类用于管理活动。public class ActivityCollector { public static List<Activity> activities = ne...

2018-11-16 10:59:39 266

原创 《第一行代码Android》学习总结第五章 详解广播机制

一、广播机制简介        Android提供了一系列API,允许程序自由的发送和接收广播,同时每个程序都可以对自己感兴趣的广播进行注册,该程序便可以只接受来自于系统或其他应用程序的自己关心的广播内容。标准广播:        一种完全异步执行的广播,在广播发出后,所有广播接收器会在同一时间接收到该广播消息。它们之间没有任何先后顺序,因此这种广播的效率很高,但无法被截断。有序广...

2018-11-16 10:06:57 277

原创 《第一行代码Android》学习总结第四章 Fragment应用实践

Fragment应用实践-----简易新闻应用布局(可同时兼容手机与平板)1、在app/build.gradle添加依赖库compile 'com.android.support:recyclerview-v7:26.0.0-alpha1'2、新建News新闻实体类public class News { private String title; //新闻标题...

2018-11-13 17:16:11 289 1

原创 《第一行代码Android》学习总结第四章 Fragment的运行状态与生命周期

一、Fragment四种状态1、运行状态当一个Fragment是可见的,同时它所关联的Activity正处于运行状态,则该Fragment也处于运行状态。2、暂停状态当一个Activity处于暂停状态,与它关联的可见碎片就会处于暂停状态。3、停止状态    Fragment不可见,有可能被系统回收。1)当一个Activity处于停止状态,与它关联的可见碎片就会处于停止状...

2018-11-13 16:10:59 483 1

原创 《第一行代码Android》学习总结第四章 Fragment的简单介绍

        碎片(Fragment)是一种可以嵌入在活动当中的UI片段,他能让程序更加合理与充分的利用屏幕空间。一、Fragment的简单使用1、新建左侧Fragment布局left_fragment.xml与右侧Fragment布局right_fragment.xml。<LinearLayout xmlns:android="http://schemas.android....

2018-11-13 15:40:28 256

原创 《第一行代码Android》学习总结第三章 编写聊天界面实践

1、用通过Nine-Patch制作好的气泡图片作为图片资源。2、在app/build.gradle中添加依赖库,使用RecyclerView。compile 'com.android.support:recyclerview-v7:26.0.0-alpha1'3、编写activity_main.xml文件,放置用于显示聊天内容界面,EditText用于输入消息,Button用于输入消...

2018-11-10 17:24:58 413

原创 《第一行代码Android》学习总结第三章 Nine-Patch的使用

         普通图片作为资源时,有时由于宽度不足整张图片会被均匀的拉伸,这种效果非常不好,是用户不能容忍的,这时可通过Nine-Patch图片进行改善。1、Android SDK目录下tools文件夹下打开draw9patch.bat文件,来制作Nine-Patch图片。2、在导航栏点击File →Open 9-patch  将待制作图片加载进来。其中上边框与左边框绘制的黑线...

2018-11-10 17:02:46 321

原创 《第一行代码Android》学习总结第三章 ListView与RecyclerView

ListView一、定制ListView界面1、定义实体类Fruit类public class Fruit { private String name; //水果名字段 private int imageId; //水果对应图片字段 public Fruit(String name, int imageId) { this.nam...

2018-11-10 16:28:01 847

原创 《第一行代码Android》学习总结第三章 自定义布局与控件

1、View是Android中最基本的组件,它可以在屏幕上绘制一块矩形区域,并在这块区域内响应各种事件。所有控件都直接或间接继承自View。2、ViewGroup是一种特殊的View,可以包含很多子View和子ViewGroup,是一个用于放置控件和布局的容器。所有布局都直接或间接继承自ViewGroup。 一、引入布局1)新建xml布局文件title.xml,并编写需要的布局...

2018-11-09 16:27:17 236

原创 《第一行代码Android》学习总结第三章 常用布局使用方法

      布局是可以放置许多空间的容器,同时布局内部可以放置布局,进行布局的嵌套。1、LinearLayout线性布局     控件会在布局的线性方向依次排列。android:orientation属性    1)vertical:垂直方向排列    2)horizontal:水平方向排列(默认)android:layout_gravity与android: gravit...

2018-11-09 15:57:40 207

原创 《第一行代码Android》学习总结第三章 常用控件使用方法

1、TextView match_parent:表示让父布局决定当前控件大小,当前控件大小与父布局大小一样。wrap_content:表示让空间内容决定当前控件大小让当前控件大小能够刚好包含住控件内的内容。        对控件指定固定大小可能会在不同手机适配方面出现问题。android:gravity属性:指定TextView中文字的对齐方式。2、Button      ...

2018-11-07 17:27:36 163

原创 《第一行代码Android》学习总结第二章 Acitivity的生命周期与启动模式

一、返回栈    Android中使用Task任务来管理活动,一个任务就是一组存放在返回栈中的活动Activity的集合。    系统总是将栈顶的Activity显示给用户。二、Acitivity的四种状态1、运行状态    位于返回栈栈顶的活动Activity处于运行状态。2、暂停状态    活动Activity不在处于栈顶,但仍然可见。不可交互3、停止状态 ...

2018-11-06 17:32:50 219

原创 《第一行代码Android》学习总结第二章 Activity创建与相关设置

一、id标签如果在XML文件中引用一个id,则使用@id/id_name;如果在XML文件中定义一个id,则使用@+id/id_name。二、程序中设置主活动在AndroidMaifest.xml中设置<intent-filter>       <action android:name="android.intent.action.MAIN" />...

2018-11-05 17:29:30 256 1

原创 Android知识点总结(一)

1、android:layout_weight 属性的意义1、权重的值指的是每个部件所占剩余空间的大小,该值与同级部件所占空间大小有关。2、例如,我们定义一个权重为 2 的 View,另一个 View 的权重是 1,那么总数就是 3;这时第一个 View 占据 2/3 的空间,第二个占据 1/3 的空间。如果再加入第三个 View,权重设为 1,那么第一个 View(权重为 2 的)会占据...

2018-10-31 17:24:53 240 2

HeadFirst设计模式源码(部分)

HeadFirst设计模式部分源码,按照《HeadFirst设计模式》的内容一步一步编写出的,可成功编译执行。

2019-01-18

空空如也

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

TA关注的人

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