-
cnbzlj
-
今天,简单讲讲android如何保留运算结果为浮点数时,保留两位小数显示。这个其实很简单,最近做一个功能时,获取到文件的大小为B的数据,在界面上需要显示为MB,这是需要转换才可以1MB=1024*1024B,所以需要进行触发运算,但是运算结果为整数不好,需要为浮点数并且显示小数点后两位数据。当时居然不知道怎么办,所以在网上查找资料,最终解决了问题,这里记录一下。android 保留两位小数5种方法
-
cnbzlj
-
今天,简单讲讲android如何使用Parcelable接口传递数据。这个其实也很简单,之前我写过博客将关于Serializable接口传递对象,实现Parcelable接口也是为了传递对象,但效率更高,所以在网上查找了相关的资料,这里记录一下。想要在两个activity之间传递对象,那么这个对象必须序列化,android中序列化一个对象有两种方式,一种是实现Serializable接口,这个非常
-
cnbzlj
-
在开发android的应用中,有时候需要限制横竖屏切换。只需要在AndroidManifest.xml文件中加入android:screenOrientation属性限制。android:screenOrientation="landscape"是限制此页面横屏显示,
android:screenOrientation="portrait"是限制此页面数竖屏显示。android:scree
-
cnbzlj
-
今天,简单讲讲Android如何在电脑上配置jdk环境。因为最近换了工作,所以重新配置了电脑的jdk环境,发现自己不是很熟练,所以记录一下。进行下载并配置Java1、现在Java JDK到1.8了,去.oracle官网下载,下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
-
cnbzlj
-
今天,简单讲讲Android studio如何安装和配置好环境。昨天,讲了jdk环境的配置,如果没有配置好jdk,是不能安装Android studio的。如果已经配置好jdk环境,那么直接学习Android studio 的环境配置。这里提一下,自己昨天终于成功申请到专栏作家,感觉坚持写博客还是有回报的。下一个目标是CSDN的博客专家。1、首先必须安装Java JDK (Java JDK下载、安
-
cnbzlj
-
今天带给大家一个比较实用的轮播图框架,banner1.导入依赖Gradledependencies{
compile 'com.youth.banner:banner:1.4.10' //最新版本
}或者引用本地libcompile project(':banner')2.添加权限<uses-permission android:name="android.permissio
-
cnbzlj
-
今天,简单讲讲Android图片轮播功能。其实图片轮播功能就是使用ViewPager和Handler,网上查找了资料,把这个简单的问题写的很复杂。其实一个自定义控件完全可以解决。这里直接上代码,不在做过多的讲解了。有问题的可以提问,我看到后会尽量回复。一.定义相关变量private final int DELAY_TIME = 3000;//自动轮播时间
private List<Stri
-
cnbzlj
-
今天,简单讲讲Android圆角图片的使用。最近,感觉好忙,换了工作,新的APP要重新阅读,对我是一个考验。所有这段时间的博客可能不会很详细了,因为我比较忙,而且还有很多内容要写。这篇写完后,我会写一个系列的Android目前流行的框架的基本使用,最近也在看这些内容,需要记录一下。实现圆角图片的方法很多,网上讲原理的一大堆,我就直接上代码,还是一个自定义控件就可以完成功能。一.声明需要的变量/**
-
cnbzlj
-
这篇文章介绍EventBus的高级用法(线程模式,粘性事件,事件优先级),EventBus的基础用法,请移步到:
Android EventBus使用详解(一)
线程模式EventBus支持订阅者方法在不同于发布事件所在线程的线程中被调用。你可以使用线程模式来指定调用订阅者方法的线程。EventBus总共支持5种线程模式:
ThreadMode.POSTING 订阅者方法将在发布事件所
-
android
-
这个问题遇到过很多次,网上也有很多解决办法,但是好像都没有发现refreshing gradle project在做什么。可以再试试./gradlew --info看看详细信息。一般refreshing gradle project出现在打开一个新工程或者升级Android Studio之后,为什么需要refreshing呢?问题就出在gradle-wrapper.properties这个文件上,
-
android
-
概述Glide是一个Android的图片加载和缓存库,它主要专注于大量图片的流畅加载,Glide几乎可以胜任任何你需要使用到图片从网络拉取,压缩,显示的场景。本文主要基于Glide4.0版本介绍其基本使用方法。1 集成Github地址: https://github.com/bumptech/gliderepositories{
mavenCentral()
maven{url'htt
-
android
-
简单说一下学习okhttp的理由google在Android 6.0中删除了HttpClient的Api,采用的是则是okhttp高效的使用HTTP,使应用运行更快更省流量响应缓存数据避免重复网络请求无缝的支持GZIP来减少数据流量使用非常简单,请求和响应的Api具有流畅的建造和不变性,同时支持同步异步调用回调函数如果网络出现问题,它会从常见的连接问题中恢复如果服务器配置有多个IP地址,当第一个I
-
android
-
可能大家听都没有听说过这个框架,但是现在其实已经很火了。在面试时,很多公司要求面试者会使用这个库,所以在网上查找资料,学习了如何使用,这里记录一下。前言 RxAndroid是RxJava在Android上的一个扩展,大牛JakeWharton的项目。据说和Retorfit、OkHttp组合起来使用,效果不是一般的好。而且用它似乎可以完全替代eventBus和OTTO,这么牛的东西当然要研究研究了
-
android
-
Butter KnifeAttention: Development on this tool is winding down. Please consider switching toview binding in the coming months.Field and method binding for Android views which uses annotation processi
-
android
-
今天,简单讲讲Android studio编译报错:Failed to resolve: com.android.support:appcompat-v7:28.+的问题。这个问题其实之前遇到过,今天又遇到了。所以记录一下。总的来说,就是Android studio的SDK工具版本低于工程需要的SDK工具版本,SDK Build-Tools与工程所需的不一致。具体讲解如下:具体解决方案:1.既然是
-
android
-
虽然Android Studio自带了三种主题样式,但是如果对这些主题样式都不满意,又不想自己一个一个去设置主题样式。可以去网上下载自己喜欢的主题样式并导入。首先说一下Android Studio自带主题的切换。打开AS菜单栏File->Settings->Appearance&Behavior->Appearance界面,里面有Theme选项,里面有Darcula、In
-
android
-
今天,简单讲讲Android studio如何安装和配置好环境。昨天,讲了jdk环境的配置,如果没有配置好jdk,是不能安装Android studio的。如果已经配置好jdk环境,那么直接学习Android studio 的环境配置。这里提一下,自己昨天终于成功申请到专栏作家,感觉坚持写博客还是有回报的。下一个目标是CSDN的博客专家。1、首先必须安装Java JDK (Java JDK下载、安
-
android
-
今天,简单讲讲android studio导入工程时,出现报错Error:This Gradle plugin requires a newer IDE able to request IDE model level 3. For Andro。这个问题其实是由于android studio是2.x版本,而导入的工程是使用android studio 3.0创建的,所以会出问题。在网上找了解决的办法
-
android
-
今天,简单讲讲如何配置Android的adb命令环境。
之前,自己要使用Dos窗口的ADB命令,发现无法识别。很明显是ADB环境没有配置好。我这里Android studio的huan环境已经配置好了,于是在网上查找资料,很简单就解决了。
第一步,打开环境变量配置窗口。右击计算机,属性-高级系统设置-环境变量。
第二步,添加android系统环
-
android
-
废话不多说,直接上代码publicclassGps{
privatedoublewgLat;
privatedoublewgLon;
publicGps(doublewgLat,doublewgLon){
setWgLat(wgLat);
setWgLon(wgLon);
}
publicdoublegetWgLat(){
returnwgLat;