android 个人使用总结
android 中button控件去除阴影背景
style="?android:attr/borderlessButtonStyle"
android 中输入账号和密码是做判断处理有两种方法(个人认为)
1:利用正则表达式进行检验用户输入的账号和密码(博客中已有检验工具类)
2:直接在布局文件添加属性 (比如账号只可以输入数字) 此方法比较 low ,当比较实用喽
android:digits="0123456789"
android 使用 Glide 加载圆形图片显示在Imageview上
Glide.with(getApplicationContext()).load(uploadData.getData().getFile()).bitmapTransform(new CropCircleTransformation(getApplicationContext())).into(imageView_Head);
高德地获取两点之间的距离
//传入自己位置的经纬度信息
2 LatLng serverlatLng = new LatLng(Double.parseDouble(lat), Double.parseDouble(lon));
//传入获取位置的经纬度信息
LatLng UserlatLng = new LatLng(Double.parseDouble(take_lat), Double.parseDouble(take_lng));
接下来才是真正的获取两点之间的距离值(单位:米)
float distance = AMapUtils.calculateLineDistance(serverlatLng, UserlatLng);
但一般我们显示单位为千米(KM),并且保留小数点后两位值方法如下;
float v = distance / 1000; java.math.BigDecimal bd = new BigDecimal(v); BigDecimal bigDecimal = bd.setScale(2, BigDecimal.ROUND_FLOOR);
Activity A 与Activity B 之间如何进行数据传递
Activity A
Bundlebundle =new Bundle(); bundle.putString("voiceString", voiceString.toString()); Intent intent =new Intent(); intent.putExtras(bundle); intent.setClass(this, BActivity.class); startActivity(intent);
Activity B
String voiceString = getIntent().getExtras().getString("voiceString"); Log.e("我是Activity A 传过来的值:"+voiceString);
Activity与Fragment实现简单传值
public StringvoiceString; //从上一个界面传过来的数据 voiceString = getIntent().getExtras().getString("voiceString"); Log.e("monkey" +voiceString); public String getVoiceString() { return voiceString };
Fragment接收从Activity中传来的数据
private StringvoiceString; @Override public void onAttach(Activity activity) { super.onAttach(activity); voiceString = ((MasuoActivity) activity).getVoiceString() };
加载圆形图片控件
1.在Gradle中添加
1 dependencies {
2 ...
3 compile 'de.hdodenhof:circleimageview:2.1.0'
4 }
2.在布局中使用即可
1 <de.hdodenhof.circleimageview.CircleImageView
2 android:layout_width="100dp"
3 android:layout_height="100dp"
4 android:src="@drawable/bg" />
3.效果最后效果图如下
Android 横屏设置
设置横屏分为两种方法:
一种是在AndroidMainfest.xml里面修改:
android:screenOrientation="landscape"
另一种是使用代码的方式:
if(getRequestedOrientation()!=ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE){
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
}
android中判断一个字符串是否已某个字母开头
int m = substring.indexOf("m");
if (m == 0) {
//当m == 0 时表示已 m 开头
}else {
//则反之
}
android中 ToastUtils 工具类
public class ToastUtils { public static void showToast(Context context, String message) {
Toast.makeText(context, message, Toast.LENGTH_LONG).show();
} public static void showToast(Context context, int message) {
Toast.makeText(context, message, Toast.LENGTH_LONG).show();
}
}
每天都会更新...
android 个人使用总结的更多相关文章
- 【原】Android热更新开源项目Tinker源码解析系列之三:so热更新
本系列将从以下三个方面对Tinker进行源码解析: Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Android热更新开源项目Tinker源码解析系列之二:资源文件热更新 A ...
- 配置android sdk 环境
1:下载adnroid sdk安装包 官方下载地址无法打开,没有vpn,使用下面这个地址下载,地址:http://www.android-studio.org/
- Android SwipeRefreshLayout 下拉刷新——Hi_博客 Android App 开发笔记
以前写下拉刷新 感觉好费劲,要判断ListView是否滚到顶部,还要加载头布局,还要控制 头布局的状态,等等一大堆.感觉麻烦死了.今天学习了SwipeRefreshLayout 的用法,来分享一下,有 ...
- Android Studio配置 AndroidAnnotations——Hi_博客 Android App 开发笔记
以前用Eclicps 用习惯了现在 想学学 用Android Studio 两天的钻研终于 在我电脑上装了一个Android Studio 并完成了AndroidAnnotations 的配置. An ...
- Android请求网络共通类——Hi_博客 Android App 开发笔记
今天 ,来分享一下 ,一个博客App的开发过程,以前也没开发过这种类型App 的经验,求大神们轻点喷. 首先我们要创建一个Andriod 项目 因为要从网络请求数据所以我们先来一个请求网络的共通类. ...
- 【原】Android热更新开源项目Tinker源码解析系列之一:Dex热更新
[原]Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Tinker是微信的第一个开源项目,主要用于安卓应用bug的热修复和功能的迭代. Tinker github地址:http ...
- 【原】Android热更新开源项目Tinker源码解析系列之二:资源文件热更新
上一篇文章介绍了Dex文件的热更新流程,本文将会分析Tinker中对资源文件的热更新流程. 同Dex,资源文件的热更新同样包括三个部分:资源补丁生成,资源补丁合成及资源补丁加载. 本系列将从以下三个方 ...
- Android Studio 多个编译环境配置 多渠道打包 APK输出配置
看完这篇你学到什么: 熟悉gradle的构建配置 熟悉代码构建环境的目录结构,你知道的不仅仅是只有src/main 开发.生成环境等等环境可以任意切换打包 多渠道打包 APK输出文件配置 需求 一般我 ...
- JS调用Android、Ios原生控件
在上一篇博客中已经和大家聊了,关于JS与Android.Ios原生控件之间相互通信的详细代码实现,今天我们一起聊一下JS调用Android.Ios通信的相同点和不同点,以便帮助我们在进行混合式开发时, ...
- Android UI体验之全屏沉浸式透明状态栏效果
前言: Android 4.4之后谷歌提供了沉浸式全屏体验, 在沉浸式全屏模式下, 状态栏. 虚拟按键动态隐藏, 应用可以使用完整的屏幕空间, 按照 Google 的说法, 给用户一种 身临其境 的体 ...
随机推荐
- vs+qt 运行过程出现cannot run rc.exe
刚开始,我按照网上的一堆教程在qt creator中设置了各种东西,设置完以后,运行时出现cannot run rc.exe,根据百度,将C:\Program Files (x86)\Windows ...
- css 样式控制文本过长实现省略号
css 样式控制文本过长实现省略号 .topicTitle{ text-overflow: ellipsis; max-width: 75%; overflow: hidden; white-spac ...
- py-day2-4 python 集合
# 集合是由 { ,} 组成 test = {1,2,8,9,7,5} print(test) {1, 2, 5, 7, 8, 9} # 集合的结果是 去重的,且排序是 无序的 test = {1,2 ...
- anaconda 在内网中代理配置
修改anaconda的配置文件,位置在c:\User(或“用户”)\current_user(当前用户)\.condarc,将以下内容拷贝进去, 替换原有内容, 修改 http://proxy.you ...
- scoping作用域,anonymous function匿名函数,built-in functions内置函数
作用域练习1 def test1(): print('in the test1') def test(): print('in the test') return test1 res = test() ...
- CLOSE_WAIT状态的原因与解决方法
https://blog.csdn.net/Windgs_YF/article/details/83513696 netstat -nat|awk '{print $6}'|sort|uniq -c| ...
- SPI、I2C、UART、I2S、GPIO、SDIO、CAN 简介
转自http://sanwen.net/a/fmxnjoo.html SPI.I2C.UART.I2S.GPIO.SDIO.CAN,看这篇就够了 总线 总线,总要陷进里面.这世界上的信号都一样,但是总 ...
- Make a plan, and stand for it!
我发现博主本人善于事前做计划,事后做总结.但是不善于坚持自己的计划.就拿10.1这个假期来讲,放假前看多许多的攻略,计划了很多条的自驾出行的路线,但是好像一条也没坚持,最后选择了一条临时的线路,而且临 ...
- django之用户表的继承
有这样一个场景,之前已经设计好了用户的信息表,但是再设计另外一个业务表的时候,信息有点重复,如何重新设计呢? 可以采用表的继承,让一个表作为基类,业务表就可以继承它 要注意以下几点 1 作为基类的表使 ...
- Java序列化机制原理
Java序列化就是将一个对象转化为一个二进制表示的字节数组,通过保存或则转移这些二进制数组达到持久化的目的.要实现序列化,需要实现java.io.Serializable接口.反序列化是和序列化相 ...