自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 图库相机版本2

1.动态权限if (Build.VERSION.SDK_INT>=Build.VERSION_CODES.M){ requestPermissions(new String[]{ Manifest.permission.READ_EXTERNAL_STORAGE,Manifest.permission.CAMERA ,Manifest.permission.WRITE_EXTERNAL_STORA

2021-06-01 15:36:58 103

原创 补充ViewPager滑到最后一页自动进入详情页面

https://blog.csdn.net/XHui_Lin/article/details/73194919?spm=1001.2014.3001.5506补充ViewPager滑到最后一页自动进入详情页面class MyAdapter extends PagerAdapter { @Override public int getCount() { return Layouts.length+1; } @O.

2021-04-28 14:39:03 143

原创 Banner轮播图

轮播图1.导入Banner依赖、Glide依赖和Okgo依赖(清单文件网络请求权限)uses-permission android:name=“android.permission.INTERNET” 网络请求权限implementation ‘com.youth.banner:banner:1.4.10’//轮播图implementation 'com.github.bumptech.glide:glide:4.11.0’Glideimplementation ‘com.lzy.net:ok

2021-04-08 13:39:12 113

原创 动态注册发送广播

动态注册发送广播1.新建一个类继承BroadcastReceiver重写onReceive方法public class Receiver3 extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { if (intent.getAction().equals("myBroadCast")) { //接收到广播,取出里面携

2021-04-08 13:22:28 192

原创 补间动画与帧动画

补间动画与帧动画属性插值器列表动态创建动画组合动画帧动画属性插值器列表动态创建动画//动态创建动画 public void btn(View view) { TranslateAnimation translateAnimation = new TranslateAnimation(0, 300, 0, 300); translateAnimation.setDuration(3000); translateAnimation.setAni

2021-04-08 13:17:09 79

原创 图库相机换头像

图库相机换头像全部代码全部代码//xml代码<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_

2021-03-30 11:18:21 97

原创 EventBus

EventBus一、什么是EventBus前言EventBus二、特点优势三、步骤四、三要素五、线程模型六、粘性事件一、什么是EventBus前言当我们进行项目开发的时候,往往是需要应用程序的各组件、组件与后台线程间进行通信,比如在子线程中进行请求数据,当数据请求完毕后通过Handler或者是广播通知UI,而两个Fragment之家可以通过Listener进行通信等等。当我们的项目越来越复杂,使用Intent、Handler、Broadcast进行模块间通信、模块与后台线程进行通信时,代码量大,而且

2021-03-03 14:08:19 178

原创 微信朋友圈布局

<?xml version="1.0" encoding="utf-8"?><!--协调者布局--><androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http

2021-03-03 13:54:49 508

原创 Martix

1,创建项目2,使用Martix完成Bitmip图片展示3,使用Martix 平移4,使用Martix 缩放5,使用Martix 旋转6,使用Martix 错切//创建MyMartix类继承Viewpackage com.example.day0010r;import android.content.Context;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.g

2021-03-02 20:25:52 547

原创 PickerView

PickerView1、PickerView是什么2、使用方式1.WheelView的使用2.TimePickerView的使用3.级联选择1、PickerView是什么仿iOS的PickerView控件,带有3D圆弧效果,并封装了时间选择和选项选择这两种选择器。WheelView —— 基础控件带有3D圆弧效果。支持文字、颜色、大小设置。支持背景颜色设置。支持item的分隔线设置。支持item间距设置。支持设置是否循环。OptionsPickerView —— 选项选择器支持一、

2021-03-02 20:22:00 216

原创 自定义ViewGroup实现宽度自动换行

自定义ViewGroup实现宽度自动换行代码xml中的使用代码package com.example.day0011;import android.content.Context;import android.graphics.Canvas;import android.util.AttributeSet;import android.util.Log;import android.view.View;import android.view.ViewGroup;import andro

2021-03-02 16:23:25 77

原创 ContentProvider 系统URI

ContentProvider 系统URI案例一,获取手机联系人,展现在ListView中并存储到数据库中案例二,获取手机短信案例三,获取手机所有的图片案例四,获取手机所有的图片案例五,获取手机所有的视频所有权限及接口明细案例六,手机联系人的增删改案例七,自动填写注册手机验证码案例一,获取手机联系人,展现在ListView中并存储到数据库中(1)添加获取手机联系人的权限 <uses-permission android:name="android.permission.WRITE_CONTACT

2020-12-22 08:39:57 109

原创 ContentProvider内容提供者

ContentProvider内容提供者一、ContentProvider 的介绍和使用1.ContentProvider介绍2.ContentProvider机制二、进程内数据共享自定义ContentProvider三、自定义权限1.权限是什么2.自定义权限使用一、ContentProvider 的介绍和使用1.ContentProvider介绍导入注解的包implementation ‘androidx.annotation:annotation:+’其实呢,内容提供者很好理解,就是给其他

2020-12-22 08:18:08 156

原创 Sqltie数据库

Sqltie数据库SQLite数据库介绍SQL语句数据库使用及两个核心类使用事务批量处理数据查询的扩展 (一个查询的案例)SQLite数据库介绍1.Android 系统中集成的轻量级的数据库2.特点:轻量级 只用一个动态的库, 是以单个文件的形式进行存取跨平台 支持多个操作系统零配置 无需安装, 直接使用嵌入式 内嵌到手机中3.在程序的内部可以通过数据库的名称访问, 其他应用不能访问4.路径: data/data/应用程序包名/database/ ****.db5.存放的类型:N

2020-12-20 20:17:21 327

原创 SharedPreferences存储+SD卡存储

SharedPreferences存储+SD卡存储SharedPreferences使用方式写数据读数据记住密码案例文件存储:内部文件存储openFileOutputopenFileInput外部文件存储(SD卡)代码案例SharedPreferencesSharedPreferences简称Sp(后面都会称Sp),是一种轻量级的数据存储方式,采用Key/value的方式 进行映射,最终会在手机的/data/data/package_name/shared_prefs/目录下以xml的格式存在。Sp

2020-12-20 20:03:14 131

原创 Fragment+ViewPager+TabLayout

Fragment+ViewPager+TabLayoutTabLayout的介绍案例TabLayout的介绍Tablayout继承自HorizontalScrollView,用作页面切换指示器,因使用简便功能强大而广泛使用在App中。官方介绍,TabLayout 是一个横向标签显示的布局,效果就是现在很多新闻客户端的那种顶部标签展示效果,并支持指示器、 ViewPager 联动TabLayout 的几个常用属性值:app:tabBackground 标签布局的背景色app:tabIndica

2020-12-17 08:30:04 287

原创 ViewPager的介绍和使用

ViewPager的介绍和使用一、ViewPager简介和用处简介用法1、 先在xml中引入一下.2、创建适配器3 、按照业务需求完善适配中的方法4、在activity中初始化viewPager和adapter5、运行效果二、viewPage的翻页动画自定义翻页效果代码自动翻页翻页监听1. 设置方法2. 翻页监听接口3. 重写方法三、ViewPager与Fragment结合使用 ( 重 点 )一、ViewPager简介和用处简介Viewpager,视图翻页工具,提供了多页面切换的效果。Android

2020-12-13 20:29:23 605 1

原创 Fragment高级进阶

Fragment高级进阶Fragment 回退栈Fragment 传值Fragment 回退栈import android.os.Bundle;import android.widget.LinearLayout;import android.widget.RadioButton;import android.widget.RadioGroup;import android.widget.Toast;import androidx.appcompat.app.AppCompatActivit

2020-12-11 11:16:09 122

原创 Fragment基础知识

Fragment基础知识一、Fragment 介绍Fragment为什么被称为第五大组件?Fragment的优势有以下几点:二、Fragment的生命周期三、Fragment的创建四、Fragment的两种加载方式静态加载动态加载五、案例一、Fragment 介绍Fragment是Android3.0后引入的一个新的API,他出现的初衷是为了适应大屏幕的平板电脑, 当然现在他仍然是平板APP UI设计的宠儿,而且我们普通手机开发也会加入这个Fragment, 我们可以把他看成一个小型的Activity,

2020-12-10 22:20:11 219

原创 双击退出,Notification 通知

双击退出,Notitfcation 通知一、双击退出二、Notitfcation 通知setSmallIcon() 与 setLargeIcon()发送一个简单的通知发送一个自定义的通知发送一个进度条通知通知分组大图通知一、双击退出实现的基本原理就是,当按下BACK键时,会被onKeyDown捕获,判断是BACK键,则执行exit方法。判断用户两次按键的时间差是否在一个预期值之内,是的话直接直接退出,不是的话提示用户再按一次后退键退出。import androidx.appcompat.app.Ap

2020-12-09 14:24:30 140

原创 Menu菜单和PopupWindow窗口

Menu菜单和PopupWindow窗口1.系统菜单OptionsMenu2.上下文菜单ContextMenu3.弹出菜单4,PopupWindow案列菜单显示菜单事件监听系统菜单onCreateOptionsMenuonOptionsItemSelected上下文菜单AlertDialog.Builder()setSingleChoiceItems()1.系统菜单OptionsMenu注意:一个Activity只有一个系统菜单1.在res下面创建一个men

2020-12-08 16:01:49 227

原创 Dialog对话框

一、常用对话框1.普通对话框AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("标题"); builder.setMessage("内容"); builder.setIcon(R.mipmap.ic_launcher);//图片 builder.setCancelable(false);//点击别处是否取消显示 buil

2020-12-07 16:29:22 2185 6

空空如也

空空如也

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

TA关注的人

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