自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Vue入门(五)—— 前端路由

路由的概念路由的本质就是一种对应关系,比如说我们在url地址中输入我们要访问的url地址之后,浏览器要去请求这个url地址对应的资源。那么url地址和真实的资源之间就有一种对应的关系,就是路由。路由分为前端路由和后端路由后端路由是由服务器端进行实现,并完成资源的分发前端路由是依靠hash值(锚链接)的变化进行实现后端路由性能相对前端路由来说较低,所以,接下来主要讲解的是前端路由。前端路由的基本概念根据不同的事件来显示不同的页面内容,即事件与事件处理函数之间的对应关系前端路由主要做的事

2021-02-20 11:26:43 405

原创 Vue入门(四)—— 前端交互

接口调用方式原生 ajax基于 jQuery 的 ajaxfetchaxios异步JavaScript 的执行环境是「单线程」所谓单线程,是指JS引擎中负责解释和执行 JavaScript 代码的线程只有一个,也就是一次只能完成一项任务,这个任务执行完后才能执行下一个,它会「阻塞」其他任务,这个任务可称为主线程异步模式可以一起执行多个任务JS中常见的异步调用定时任何(setTimeout 和 setInterval)ajax事件函数(回调函数)promise主要解

2021-02-18 11:12:05 436 1

原创 Vue入门(三)—— 组件化开发

组件组件 (Component) 是 Vue.js 最强大的功能之一组件可以扩展 HTML 元素,封装可重用的代码组件注册全局注册Vue.component(‘组件名称’, { }) 第1个参数是标签名称,第2个参数是一个选项对象全局组件注册后,任何vue实例都可以用组件基础用法<body> <div id="example"> <!-- 2、 组件使用 组件名称 是以HTML标签的形式使用 --> <my-compo

2021-02-15 14:18:52 311

原创 Vue入门(二)—— 常用特性

表单基本操作1.获取单选框中的值<body> <div id="app"> <!-- 1、 两个单选框需要同时通过 v-model 双向绑定一个值 2、 每一个单选框必须要有 value 属性且 value 值不能一样 3、 当某一个单选框选中的时候 v-model 会将当前的 value 值 改变 data 中的 数据 gender 的值就是选中的值,我们只需要实时监控它的值就可以了 -->

2021-02-05 17:48:52 213 1

原创 Vue入门(一)—— 模板语法

Vue.js 是什么?Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。什么是渐进式框架?渐进式框架就是用你想用或者能用的功能特性,你不想用的部分功能可以先不用。VUE不强求你一次性接受并使用它的全部功能特性。使用Vue将Hello World渲染到页面上<body> <div id="app"> <div>{{msg}}</di

2021-02-02 13:11:42 708 1

原创 Android动画:View动画

简介:View动画的作用对象是View,它支持4种效果,平移、缩放、旋转、透明度。动画可以定义在xml中和直接在java代码中定义动画的xml文件放在res/anim目录下透明度动画效果图:java代码: AlphaAnimation alphaAnimation = new AlphaAnimation(0.1f, 1f); // 此处表示透明度从10%~100%显示 ...

2019-11-21 18:21:06 210

原创 ListView加载多布局

效果图如下:ListView适配器代码如下:public class MyAdapter extends BaseAdapter { private Context mContext; private LayoutInflater inflater; /** * 三种布局所对应的标识,type的值必须从0开始 */ private stat...

2019-11-13 22:04:54 179

原创 Volley的简单使用

Volley简介Volley是2013年Google I/O大会上推出的一个新的网络通信框架,非常适合数据量不大,但通信频繁的网络操作,而对于大数据量的网络操作,Volley就不太合适了。简单使用不管是StringRequest、JsonRequest还是ImageRequest,都是以下三步曲:创建一个RequestQueue对象创建一个Request对象(StringRequest...

2019-11-13 19:04:45 187

原创 MPAndroidChart的使用:折线图

效果图如下:本图使用AndroidMPChart制作,要使用AndroidMPChart,首先要添加远程依赖,或者将AndroidMPChart的jar包导入到AndroidStudio中。其它文章:饼图柱状图(一)柱状图(二)水平柱状图代码如下:xml布局代码如下:<?xml version="1.0" encoding="utf-8"?><LinearL...

2019-11-11 14:13:26 803

原创 MPAndroidChart的使用:水平柱状图

效果图如下:水平柱状图与垂直柱状图的代码非常相似,将垂直柱状图中的x轴理解为水平柱状图中的y轴,将垂直柱状图中的y轴理解为水平柱状图的x轴就可以了。垂直柱状图的文章如下:柱状图代码如下:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.c...

2019-11-11 13:03:06 3391 2

原创 MPAndroidChart的使用:柱状图(二)

效果图如下:本图使用AndroidMPChart制作,要使用AndroidMPChart,首先要添加远程依赖,或者将AndroidMPChart的jar包导入到AndroidStudio中。添加远程依赖。1、 在Project目录下的build.gradle中添加如下所示的代码:allprojects { repositories { google() ...

2019-11-11 11:20:38 6528 2

原创 MPAndroidChart的使用:柱状图(一)

效果图如下:本图使用AndroidMPChart制作,要使用AndroidMPChart,首先要添加远程依赖,或者将AndroidMPChart的jar包导入到AndroidStudio中。这里我就介绍一下如何添加远程依赖。1、 在Project目录下的build.gradle中添加如下所示的代码:allprojects { repositories { goog...

2019-11-11 11:01:24 6145 6

原创 MPAndroidChart的使用:饼图

效果图如下:本图使用AndroidMPChart制作,要使用AndroidMPChart,首先要添加远程依赖,或者将AndroidMPChart的jar包导入到AndroidStudio中。这里我就介绍一下如何添加远程依赖。1、 在Project目录下的build.gradle中添加如下所示的代码:allprojects { repositories { goog...

2019-11-11 10:03:59 1184

原创 使用zxing开源库生成二维码和识别二维码

效果图:首先添加依赖: implementation 'com.google.zxing:core:3.3.3'MainActivity代码如下:public class MainActivity extends AppCompatActivity implements View.OnClickListener { private Button btn_create_qr;...

2019-10-31 16:27:22 680

原创 自定义ListView下拉刷新效果

实现思路就是自己写一个刷新效果的布局,然后把这个布局定义为ListView的头,监听手势的滑动效果,分别更新不同的UI。效果图如下:直接上代码,代码是完整的,除了那个箭头的图片需要你自己提供,其它的都可以用我的代码,然后你看懂之后,自己在改一下就好了,我写了很多注释。view_header.xml(自定义刷新的显示内容)此处一定要在顶层布局加上 android:gravity="bo...

2019-10-21 20:16:10 215

原创 下拉刷新

下拉刷新是使用SwipeRefreshLayout来实现的,我们只要把想要实现下拉刷新功能的控件放置到SwipeRefreshLayout中,就可以迅速让这个控件支持下拉刷新。为了简单起见,下面我将通过ListView实现下拉刷新功能,效果图如下:可以看到此处我给ListView添加了一个下拉刷新,还给下拉刷新设置了一个监听事件,下拉刷新更改ListView子项中的内容。布局代码如下:&...

2019-07-24 14:56:33 137

原创 可折叠式标题栏

效果图:布局文件如下:<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_...

2019-07-24 14:28:21 219

原创 将状态栏设置为透明色

这是一个主题,设置状态栏的颜色为透明色。<resources> <style name="TransparentTheme" parent="AppTheme"> <item name="android:statusBarColor">@android:color/transparent</item> </s...

2019-07-24 12:12:37 294 1

原创 卡片式布局

使用CardView实现卡片式布局,CardView是appcompat-v7库提供的,实际上CardView也是一个FrameLayout,只是额外提供了圆角和阴影等效果,看上去有立体感觉。效果图:为了充分利用屏幕,这里使用了RecyclerView来展示。这里我们要使用Glide来加载图片,所以要先添加一下依赖:implementation 'com.github.bumptech....

2019-07-24 10:26:55 1188

原创 SnackBar

SnackBar是可交互提示,用法与Toast类似,只不过可以额外增加一个按钮点击事件。效果图如下:因为布局文件就是一个按钮,我就不写了,直接看java代码部分,代码如下:public class MainActivity extends AppCompatActivity { private Button btn_del; @Override protecte...

2019-07-23 22:17:41 223

原创 悬浮按钮

悬浮按钮是Design Support库中的。<android.support.design.widget.FloatingActionButton android:layout_width="70dp" android:layout_height="70dp" android:layout_gravity="end|...

2019-07-23 21:07:37 425

原创 NavigationView

效果图:NavigationView分两部分,menu和headerLayout,menu是用来显示NavigationView中具体的菜单项,headerLayout是用来显示NavigationView中的头部布局。菜单项可以显示图标,这里为了简单就只用文字显示菜单项了。菜单部分,nav_menu.xml代码如下:<?xml version="1.0" encoding="utf...

2019-07-23 20:41:08 238

原创 滑动菜单

效果图:MainActivity的布局代码:<?xml version="1.0" encoding="utf-8"?><android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schema...

2019-07-23 19:59:18 308

原创 ToolBar

ToolBar继承了ActionBar的所有功能,而且灵活性很高。首先你要知道,任何一个新建的项目,默认都是会显示ActionBar(标题栏)的。既然我们要使用ToolBar,那我们先去除掉默认的ActionBar(标题栏)吧。打开res/values/style.xml文件,修改为以下内容:<resources> <!-- Base application ...

2019-07-23 18:13:57 176

原创 使用IntentService

其实IntentService和Service这两个类的用法都差不多,这两个类都可以定义服务,那么这两个类的区别是什么?我的理解是:使用IntentService定义的服务,要开启线程,只要重写一个onHandleIntent()方法就可以了,而且在运行完之后会自动停止,如果使用Service定义服务,则需要手动开线程和手动添加stopSelf()方法才能运行完之后自动停止。下面我们来使用In...

2019-07-20 20:49:38 309

原创 使用前台服务

前台服务和后台服务的最大区别就在于,它会一直有一个正在运行的图标在系统的状态栏显示,下拉状态栏后可以看到更加详细的信息,非常类似于通知的效果。先来看下程序的效果图:现在来看下代码:服务类的代码如下:public class MyService extends Service { @Override public IBinder onBind(Intent intent)...

2019-07-20 19:47:41 507

原创 服务的基本使用:活动和服务进行通信

怎么在活动中调用服务中的方法呢?有什么方法能让活动和服务关系更紧密一些呢?这是我们这篇文章需要考虑的问题,下面我们来看看代码:public class MyService extends Service { private DownloadBinder mBinder = new DownloadBinder(); class DownloadBinder extends Bi...

2019-07-20 15:53:49 414

原创 服务的基本使用:定义、启动和停止服务

定义一个服务我们来看下怎么在项目中定义一个服务,新建一个项目,右击包名,我这里的包名是com.example.lenovo.servicetest,然后选择New—>Service—>Service,会弹出如下所示的窗口:可以看到,我将服务命名为MyService,Exported属性表示是否允许除了当前程序之外的其他程序访问这个服务,Enabled属性表示是否启用这个服务。将两...

2019-07-20 11:28:09 699

原创 AsyncTask的简单使用

这里给出一个简单应用的实例,效果图如下:点击按钮然后下方的文本开始进行颜色变换我先来介绍一下AsyncTask这个类AsyncTask这是一个抽象类,所以如果我们要使用,就必须要创建一个子类去继承它。在继承时我们可以为AsyncTask类指定3个泛型参数,这三个参数的用途如下:params : 执行AsyncTask时需要传入的参数,可用于在后台任务中使用,也就是doInBackgrou...

2019-07-19 21:06:11 256

原创 Handler+Message异步消息处理机制

这里给出一个实例,效果图如下:点击按钮然后下方的文本开始进行颜色变换因为 比较简单,我就直接上代码了。MainActivity的布局代码如下:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" ...

2019-07-19 19:47:28 680

原创 封装HttpURLConnection和OkHttp

通常情况下,我们都将一些通用的网络操作提取到一个公共类里,并提供一个静态方法,当想要发起网络请求的时候,只需要简单的调用一下这个方法即可。将HttpURLConnection发送网络请求的操作封装在一个公共类中,代码如下:public class HttpUtil { public static void sendHttpRequest(final String address, f...

2019-07-19 15:41:02 508

原创 解析XML格式数据:Pull解析方式

因为要解析XML数据,首先要有一个XML数据的地址,为了演示效果,我这里自己配置了一个Web服务器,并在服务器的根目录下放了一个get_data.xml的文件,文件内容如下:<apps> <app> <id>1</id> <name>Baidu Maps</name> <version&gt...

2019-07-18 20:51:24 611 2

原创 使用GSON解析JSON数据

GSON是谷歌提供的一个开源库,可以用来解析JSON数据不过GSON并没有被添加到Android官方的API中,所以如果要使用这个开源库,我们就要先添加依赖,编辑app/build.gradle文件,在dependencies闭包中添加如下内容: implementation 'com.squareup.okhttp3:okhttp:4.0.1' implementation 'co...

2019-07-18 15:51:30 13700 4

原创 使用JSONObject解析JSON数据

JSONObject是官方提供用来解析JSON数据的。要解析JSON数据,首先我们得要有一个放有JSON数据的服务器地址,这里我自己配置了一个Web服务器,并且将JSON数据放在了上面。在浏览器输入JSON数据的服务器地址,出现的内容如下所示:从上图,我们可以看到,http://192.168.43.8/get_data.json 这个地址是JSON数据的服务器地址,当然这个是我自己配...

2019-07-18 11:29:51 3906

原创 使用OkHttp发送HTTP请求并显示返回的数据

准备工作:编辑 app/build.gradle文件,在dependencies闭包中添加以下内容: implementation 'com.squareup.okhttp3:okhttp:4.0.1'添加上述依赖会自动下载两个库,一个是OkHttp库,一个是Okio库,后者是前者的通信基础。其中4.0.1是我写这篇博客时的最新版本,你可以访问OkHttp的项目主页来查看当前的最新版本是多...

2019-07-16 11:00:01 13734 8

原创 使用HttpURLConnection发送HTTP请求并显示请求到的数据

这里的例子是点击按钮,发送请求并显示,效果如下:MainActivity的布局代码如下:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_...

2019-07-15 12:34:23 1667

原创 在Android中播放视频

这里我是用VideoView来进行播放视频注意:请事先在手机的SD卡的根目录下放一个名为movie.mp4的视频文件,因为等下我就是读取这个文件的路径并进行播放,暂停和重新播放的操作。首先我们在AndroidManifest.xml文件中添加以下内容:<uses-permission android:name="android.permission.WRITE_EXTERNAL_STO...

2019-07-10 17:43:50 481

原创 在Android中调用摄像头拍照并显示出来

Demo如下:

2019-07-10 14:41:37 6322 14

原创 Android中通知的简单使用

从Android 8.0系统开始,Google引入了通知渠道这个概念。

2019-07-09 12:34:11 327

原创 Git命令-版本控制工具进阶

Git工具下载地址https://gitforwindows.org/git status 查看文件修改情况git diff 查看文件更改内容git checkout 撤销未提交的修改git reset 取消添加使用git log 查看提交记录git log id -1 ...

2019-07-07 17:39:17 213

空空如也

空空如也

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

TA关注的人

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