自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

知道这个有什么用?

做一名优秀的程序员

  • 博客(34)
  • 资源 (1)
  • 问答 (2)
  • 收藏
  • 关注

原创 音频播放系列:测试用免费音乐链接

感谢原文:mp3在线测试地址/mp4在线测试地址mp3在线测试地址http://downsc.chinaz.net/Files/DownLoad/sound1/201906/11582.mp3http://downsc.chinaz.net/files/download/sound1/201206/1638.mp3http://downsc.chinaz.net/Files/DownLoad/sound1/201906/11582.mp3...

2021-05-31 19:11:34 3492

原创 音频播放系列:MediaPlayer简单实现音乐播放

添加网络权限:<uses-permission android:name="android.permission.INTERNET"/>MainActivity.java代码:public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInst

2021-05-31 17:39:45 253

原创 Git系列:查看某个分支的创建时间

实际开发中,在小公司经常会遇到多个项目切换的情况。比如项目A开发了一个月,遇到某个需求,要参考项目B,在项目B上做整理,再引入到项目A。这毫无疑问要新建分支,而项目B上的当前分支是做什么的,已经记不得了。可以查看分支创建时间来做初步判断,和回忆当时创建分支的目的。git reflog show --date=iso <branch name>例如:git reflog show --date=iso simple_version...

2021-05-31 10:05:45 7416

原创 ConstraintLayout系列:ConstraintLayout实现左右均分布局

效果图:关键代码:android:layout_width="0dp",0dp在ConstraintLayout中的含义是match_constraint。完整代码:<?xml version="1.0" encoding="utf-8"?><androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:a

2021-05-28 12:28:49 1886

原创 ConstraintLayout系列:ConstraintLayout实现局部垂直居中

又发现ConstraintLayout一个优点,先看效果图:上方的绿色区域,固定高度400dp,所以在不同的设备屏幕上,下方所剩的区域高度就是不固定的。要想下方的红色区域始终垂直居中,用LinearLayout和RelativeLayout都需要套两层才能实现。用ConstraintLayout只需要添加几个属性就好了。核心代码: app:layout_constraintTop_toBottomOf="@id/rl_top" app:layout_constrai.

2021-05-28 12:02:19 1628

原创 RecyclerView系列:GridLayoutManager的构造函数中的orientation理解

GridLayoutManager的构造函数如下: public GridLayoutManager( Context context, int spanCount, @RecyclerView.Orientation int orientation, boolean re.

2021-05-28 10:45:38 869

原创 标题栏系列:自定义沉浸式标题栏(一)

先看设计图要求(涉及到隐私或者版权的打个马赛克):隐藏标题栏,设置theme: android:theme="@style/Theme.AppCompat.Light.NoActionBar"引入Android轮子哥的github库getActivity/TitleBar:allprojects { repositories { google() jcenter() maven { url 'https://jitpack.io'

2021-05-26 11:03:04 918 8

原创 开关Switch系列:CheckBox加图片实现Switch

为什么不用RadioButton?因为RadioButton选中后,再点击还是选中。Switch选中后再点击,就变成未选中了。为什么不用Swicth+ 图片方式 直接实现?因为Switch只能自定义滑块(thumb)和滑道(track),切图给的两个状态图都不能作为滑块或者滑道。用Switch+自定义xml方式有什么问题?滑块和滑道存在比例关系,根据上篇文章:开关Switch系列:Switch修改滑块(thumb)和滑道(track)的颜色(一),当滑块高度符合设计稿要求时,滑道长度比设计稿要.

2021-05-25 21:26:37 328

原创 透明度系列:蓝湖百分比透明度对应的16进制数

蓝湖设计稿显示的不透明度是百分比,如下:需要转为16进制。百分比16进制数float值四舍五入值50%80127.512870%B3178.5179

2021-05-25 15:33:03 677

原创 开关Switch系列:Switch修改滑块(thumb)和滑道(track)的颜色(一)

看设计稿:这尼玛咋弄呀?先显示文字,参考上一篇:开关switch系列:android Switch显示文字修改滑块(thumb)的颜色,在drawable文件夹下新建switch_custom_thumb.xml文件,颜色和宽高都是设计图给的,如下:<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" andro.

2021-05-24 21:36:14 1463

原创 开关switch系列:android Switch显示文字

上效果图:显示文字,核心三行代码: android:showText="true" android:textOff="中" android:textOn="EN"文字的大小、颜色在values/styles.xml文件中定义: <style name="SwitchTextAppearance" parent="@android:style/TextAppearance.Holo.Small"> <i

2021-05-24 21:35:59 3479

原创 状态栏系列:ImmersionBar实现状态栏沉浸效果

怎么实现上面这种状态栏效果?先隐藏ActionBar,在AndroidManifest.xml的application标签下,加入: android:theme="@style/Theme.AppCompat.Light.NoActionBar"在application标签下加入的目的是保证所有Activity 默认都是没有ActionBar的。布局如何进入状态栏下面了?推荐一个第三方库:ImmersionBar,导入依赖: // 基础依赖包,必须要依赖 api 'com...

2021-05-24 21:35:32 775

原创 阴影系列:YcCardView实现不同颜色的阴影(带圆角)

上效果图。引入依赖implementation 'com.zyp.cardview:cardview:1.0.1'核心代码 app:ycCardCornerRadius="12dp" app:ycCardElevation="6dp" app:ycStartShadowColor="#ff0000" 完整布局代码<?xml version="1.0" encoding="utf-8"?><LinearLayout

2021-05-21 14:47:38 538 2

原创 阴影系列:CardView实现圆角阴影效果

效果图。核心代码 app:cardCornerRadius="12dp" app:cardElevation="12dp" app:cardPreventCornerOverlap="true" app:cardUseCompatPadding="true" app:cardBackgroundColor="#ffffff"先引入CardView依赖包 implementation 'androidx.cardview:c

2021-05-21 14:47:26 330 1

原创 RecyclerView系列:RecyclerView嵌套RecyclerView(BaseRecyclerViewAdapterHelper实现)

看效果图:先导入依赖包: 导入BaseRecyclerViewAdapterHelper和RecyclerView把RecyclerView整到布局activity_main.xml中去。<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.and

2021-05-21 10:28:48 3621 13

原创 RecyclerView系列:RecyclerView中多布局简单实现(一)

上效果图:多布局常见于通信软件的聊天页,会显示图片、视频、聊天、日期、头像昵称。引入BaseRecyclerViewAdapterHelper和RecyclerView, 引入Gson。实际开发中,json数据一般是后端返回。这里,自己准备json数据{ "sale":[ { "id":"2", "name":"东风标致308" } ], "preSale":[ {

2021-05-20 18:57:12 380 1

原创 Json系列:Gson简单使用,把json字符串转为java对象。

引入Gson库 implementation 'com.google.code.gson:gson:2.8.6'准备json字符串{"name":"怪盗kidou","age":24,"emailAddress":"ikidou@example.com"}手敲一个TestBean.java,先不用GsonFormat插件。public class TestBean { public String name; public String age; public St.

2021-05-20 15:38:07 363

原创 事件分发机制:长按事件onLongClickListener返回值的意义

ivTest.setOnLongClickListener(new View.OnLongClickListener() { @Override public boolean onLongClick(View v) { return false; } });设置为false。长按会执行onLongClick,手指抬起时会执行onClick。点击只执行onClick。测试一.

2021-05-19 20:21:06 1194

原创 Android Studio系列:解决开启android studio后,不显示项目窗口。

我的Android studio版本是4.0.2,今天双击android studio图标,突然不显示项目窗口了。打开环境变量,新建用户变量JDK_HOME,值为jdk的安装路径。新建用户变量,不要新建系统变量,系统变量需要重启才有效。...

2021-05-19 12:19:07 2923

原创 gradle.properties系列:解决Android studio 打包生成apk文件时产生超大.hprof文件

在项目根目录下的gradle.properties下,添加:systemProp.http.proxyHost=mirrors.opencas.orgsystemProp.http.proxyPort=80org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=4096m -XX:+HeapDumpOnOutOfMemoryErrororg.gradle.daemon=trueorg.gradle.parallel=trueorg.gradle.configu

2021-05-18 12:14:20 515

原创 Toast系列:解决小米手机Toast前面包含app名称的问题

测试机型号:MI 5,MIUI 10.2, Android 版本 8.0.0解决方案:Toast toast = Toast.makeText(this,null,Toast.LENGTH_SHORT);toast.setText("test");toast.show();

2021-05-18 09:57:07 315 3

原创 ScrollView系列:ScrollView自动滑动到底部的bug

复现bug,把下面的代码复制,运行下,就会发现ScrollView自动滑动到底部了。把WebView换成RecyclerView也是一样的。<?xml version="1.0" encoding="utf-8"?><ScrollView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:l.

2021-05-14 16:58:28 219

原创 TextView系列:TextView设置滚动

上效果。一行代码就够了 tv.setMovementMethod(new ScrollingMovementMethod());有需求,也可以再加个滚动条,android:scrollbars="vertical"完整布局文件<?xml version="1.0" encoding="utf-8"?><androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.an

2021-05-13 10:25:33 2363

原创 录音系列:java运算符

在pcm转wav,就是在原来的byte[]前面增加header,header是一个长度为44的字节数组。 byte[] header = new byte[44]; header[0] = 'R'; // RIFF/WAVE header header[1] = 'I'; header[2] = 'F'; header[3] = 'F'; header[4] = (byte) (totalDataLen & 0x.

2021-05-13 09:17:37 152

原创 Activity系列:startActivityForResult的用法

模拟一个使用场景,从MainActivity跳转到ChangeNameActivity,修改客户姓名后,把修改的结果返回给MainActivity。MainActivity代码public class MainActivity extends AppCompatActivity { private static final String TAG = "xx"; @Override protected void onCreate(Bundle savedInstanceState

2021-05-13 09:14:20 92

原创 EventBus系列:EventBus3.0 简单使用

上效果:先引入EventBus依赖:implementation 'de.greenrobot:eventbus:3.0.0-beta1'需要接受信息的Acitivity, 注册EventBus,并在onDestroy()中解除。public class MainActivity extends AppCompatActivity { TextView tvName; @Override protected void onCreate(Bundle savedIn

2021-05-13 09:05:40 156

原创 WPS 系列:∑求和

水平一行数据,求和。选中多个单元格,点击“开始”-》“自动求和”。垂直一列数据,求和。选中多个单元格,点击“开始”-》“自动求和”。同上。

2021-05-12 09:58:14 489

原创 ImageView系列:设置图片圆角和圆形图片

效果图,如下:使用NiceImageView,github地址:SheHuan/NiceImageView在项目根目录下的build.gradle文件中,增加gradle地址:allprojects { repositories { google() jcenter() maven { url "https://jitpack.io" } //增加这行 }}在app的module下,build.gradle文件中,增加依赖:i

2021-05-11 20:28:24 2447 3

原创 ImageView系列:同一张图片在不同设备上显示的像素一样吗?

ImageView具体设置如下,同一张图片在不同设备上显示的像素一样吗?<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.androi.

2021-05-08 18:55:09 815

原创 图片处理系列:如何从原图片中裁剪出指定像素的图片?

用win10 自带的画图3d打开。打开后,点击“裁剪”,会显示如下,剩下的不用说了。

2021-05-08 18:03:59 4075

原创 ImageView系列:ImageView会不会自动调整高度?

不同手机屏幕宽度不同,假设ImageView宽度铺满,高度自适应,然后scaleType为fitXY,那么这张图片是不是就会自适应了?<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xml.

2021-05-08 17:59:44 84

原创 TextView系列:英语字母之间间距letterSpacing设置

先看一个bug字母f和i靠的太近了,要解决这个bug,用android:letterSpacing="0.03"就好了。不过这个属性不会在Android Studio的预览窗口显示效果,就是说设置、不设置、设置任意值,在Android Studio 4.0.2上都看不出来效果。必须在真机上运行项目 才能看到设置的效果。...

2021-05-08 17:00:59 355

原创 ConstraintLayout系列:设置高度百分比

这个高度百分比是占父布局的百分比,要看具体代码的写法来定。要实现同一个效果,父布局不同,设置的值也不一样。代码:app:layout_constraintHeight_percent="0.21",使用如下:<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.andro.

2021-05-08 10:33:18 3275

原创 装箱拆箱系列:java中的Integer装箱实例

多数程序员或者学生,在平时开发中或者学习中,也就写个 int sum = 0;或者int i=0; i++;,没出什么bug,也不会关心这些多,这么细。讨论装箱,当然还是因为面试造火箭。所以先看看具体的面试题,运行下面的代码,看执行结果,引出疑问,最终了解Integer的装箱。public class IntegerPackageTest { public static void main(String[] args) { Integer value1 = -128; //

2021-05-01 14:20:54 410 2

《Software Architecture Design Patterns in Java》原版PDF 下载

《Software Architecture Design Patterns in Java》PDF 下载,本来是想0分的,但最低只能设置2分。

2017-12-08

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

TA关注的人

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