Android实用代码
文章平均质量分 72
小毕先生
这个作者很懒,什么都没留下…
展开
-
Android通知栏-Notification(通知消息)
1.概述当应用程序在后台运行,希望向用户发出一些提示学习,就需要借助Notification(通知)来实现。在发出一条通知后,手机最上方的状态栏会显示一个通知的图标,下拉状态栏后就可以看到通知的详细内容。1.1 视图分类Notification有两种视觉风格,一种是标准视图(Normal View),另外一种是大视图(Big view)。标准视图在Android中各版本是通用的,但是对于大视图而言,仅支持Android4.1+的版本。1.2 标准视图从官方文档了解到,一...转载 2021-04-20 08:32:49 · 1485 阅读 · 0 评论 -
Fragment详解(二) ----之实现懒加载
一,阐述: 1,我们在做应用开发的时候,一个Activity里面可能会以viewpager(或其他容器)与多个Fragment来组合使用。而ViewPager默认会缓存三页数据. 2,即:Viewpager每加载一个Fragment,都会预先加载此Fragment左侧或右侧的Fragment。 3,而如果每个fragm...原创 2018-09-27 19:00:01 · 332 阅读 · 0 评论 -
Android中的Bitmap
Bitmap位图简介位图文件(Bitmap),扩展名可以是.bmp或者.dib。位图是Windows标准格式图形文件,它将图像定义为由点(像素)组成,每个点可以由多种色彩表示,包括2、4、8、16、24和32位色彩。位图文件是非压缩格式的,需要占用较大存储空间。例如,一幅1920X1080分辨率的32位图片,其所占存储字节数为:1920×1080×32/(8*1024)=8100KB=7....转载 2018-09-28 10:34:27 · 279 阅读 · 0 评论 -
Android高效加载大图、多图解决方案,有效避免程序OOM
优秀文章:1,Android中的Bitmap2,android之Bitmap详解转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/9316683本篇文章主要内容来自于Android Doc,我翻译之后又做了些加工,英文好的朋友也可以直接去读原文。http://developer.android.com/training...转载 2019-02-22 18:05:45 · 132 阅读 · 0 评论 -
Android在开发中的使用技巧之解决ScrollView嵌套RecyclerView出现的系列问题
相信大家都遇到过ScrollView嵌套RecyclerView或者RecyclerView嵌套RecyclerView来使用, 也会遇到一堆奇奇怪怪的问题, 比如滑动卡顿、数据加载不完、数据加载完后没有停留在顶部等问题今天我们就来写一篇RecyclerView嵌套版本的解决方案 今年六月份的IO大会把Kotlin用做Android开发的一级语言, 也让这个语言在Android开发圈子里...转载 2019-03-18 19:12:09 · 189 阅读 · 0 评论 -
BaseRecyclerViewAdapterHelper详细介绍(一)
相关文章:BaseRecyclerViewAdapterHelper详细介绍(二)----实现嵌套功能BaseRecyclerViewAdapterHelper详细介绍(三)----实现点击事件,添加头布局,脚布局一,拥有功能: 1,上拉加载 2,下来刷新 3,添加头布局,脚布局 4,列表嵌套...原创 2019-06-19 15:32:05 · 4037 阅读 · 0 评论 -
BaseRecyclerViewAdapterHelper详细介绍(二)----实现嵌套功能
相关文章:BaseRecyclerViewAdapterHelper详细介绍(一)BaseRecyclerViewAdapterHelper详细介绍(三)----实现点击事件,添加头布局,脚布局一,有两种方式实现嵌套功能1,第一种实现方式 继承BaseMultiItemQuickAdapterpublic class OpenRecordAddapter extends...原创 2019-06-19 15:37:25 · 2342 阅读 · 0 评论 -
BaseRecyclerViewAdapterHelper详细介绍(三)----实现点击事件,添加头布局,脚布局
相关文章:BaseRecyclerViewAdapterHelper详细介绍(一)BaseRecyclerViewAdapterHelper详细介绍(二)----实现嵌套功能一,点击条目openRecordAddapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() { ...原创 2019-06-19 15:42:07 · 3098 阅读 · 0 评论 -
提高studio编译速度
1,加大分配的内存打开studio的 bin\studio64.exe.vmoptions文件夹.(studio.exe.vmoptions是32位的电脑需要配置的)二,找到studio的bin目录下的idea.properties文件,添加disable.android.first.run=true(避免每次启动Android Studio都要fetching An...原创 2019-06-20 11:34:22 · 1133 阅读 · 0 评论 -
shortcut详解
一,阐述Shortcuts功能跟随着 Android7.1 Nougat 一起诞生,其主要目:在于用户可以定义一些常用的操作路径,以快捷方式的形式存在。这些快捷方式展示在可以支持的设备上,帮助用户快速启动常用或者推荐的页面和行为。二,展示方式1,一种通过长按应用 icon,此时会弹出列表弹窗.(对于没有配置快捷方式的应用,一般都是手机厂商给的默认功能)...原创 2019-07-03 17:54:41 · 32121 阅读 · 0 评论 -
非Activity的类,跳转到Activity中
一,在工具类中跳转到Activitypublic static void startIt(Context activity) { Intent intent = new Intent(activity, RechargeActivity.class); if (!(activity instanceof Activity)) { intent.setFlags...原创 2019-07-10 11:04:03 · 575 阅读 · 0 评论 -
实现Android应用图标的上的数字角标
在做一些推送服务的时候,想在应用图标上添加未读消息,Android桌面角标的适配确实是非常坑爹的需求。原生系统根本就没有这个功能,国内很多厂家效仿ios都自己定义了该功能。现在就为大家介绍部分机型添加角标的代码。1、华为手机上显示角标:(已通过)//添加权限<uses-permission android:name="com.huawei.android.launch...转载 2019-09-16 10:20:12 · 954 阅读 · 0 评论 -
TabLayout使用详解
上图是简书Android端的主页Tab,在其他的App中Tab也是很常见的,它的实现方式也有很多:TabHost,自定义控件(第三方库),RadioGroup等等。这里主要介绍Android Design库中的TabLayout的使用。优秀文章:TabLayout高端用法(一) 一.什么是TabLayout在源码中给出了TabLayout的定义:TabLayout pro...转载 2018-09-27 11:09:35 · 402 阅读 · 0 评论 -
android之Bitmap详解
一、在说Bitmap之前先说个是,之前一直忘记说了,由于Android的2D渲染现在可以比较好的支持硬件加速了,但是在自定义控件进行绘制是还是有很多api不兼容的,所以在自定义控件的时候,在你不能100%确认你使用的api支持硬件加速的话,最好把硬件加速关闭了,否则有可能出现一些莫名其妙的问题:1、硬件加速关闭方法在清单文件的application节点下进行关闭或者打开,这种方式是作用于整个...转载 2018-09-25 17:08:26 · 1956 阅读 · 0 评论 -
Fresco和Glide的区别
Glide 与 Picasso对比:https://inthecheesefactory.com/blog/get-to-know-glide-recommended-by-google/en项目中使用Fresco已经一年多了,碰到了一些坑, 但总体来说还是很强大。我参考了上面的对比方式,将Fresco与Glide做了类似比较Fresco vs Glide功能要从功能上来说...转载 2018-08-07 21:35:59 · 6965 阅读 · 0 评论 -
PendingIntent概述
一,区别1,PendingIntent一般用于跳到应用内部,常和NotificationManager配合使用, Intent一般跳转到指定的activity,service等 2, pendingIntent的执行不是立刻的,延时的. 而Intent是立刻执行的,所在的activity 消失而消失.3,PendingIntent可以理解为Intent的封装包,简单的说就是在Intent...原创 2018-01-05 17:03:03 · 386 阅读 · 0 评论 -
获取手机联系人姓名,电话
- 1,添加权限 - 2,代码,跳转 Intent intent3 = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI); startActivityForResult(intent3, REQUEST_ADDPH原创 2017-09-15 14:52:15 · 449 阅读 · 0 评论 -
activity无法直接跳转到fragment中
- (一),解决方式: 1,从activityA跳转到fragment所在的activityB中的onResume(onStart()也可以试试),然后再activityB中选中你要找的fragment. 但:这个有问题,返回的时候,activityB会为空 2, a,从activityA跳转到fragment所在的activityB中的onNewInten原创 2017-06-22 11:21:45 · 779 阅读 · 0 评论 -
listview条目的数据都一样,肿么办
- 原因:- 1,bean对象在for循环外面创建了,导致只能给一个bean赋值- 2,如果有2个for循环,第二个for循环使用的还是i,而不是j原创 2017-06-03 21:37:54 · 291 阅读 · 0 评论 -
getFragmentManager()和getSupportFragmentManager()的区别
前提 : Fragment是android3.0以后才出来的,那如果是android3.0以前的版本,怎么使用Fragment呢,就是通过getSupportFragmentManager()android3.0以后的版本,就用getFragmentManager();原创 2017-05-20 09:35:09 · 1029 阅读 · 0 评论 -
Framwork之各种Manager
一,PackageManager, 可以获取系统应用的相关信息,也可以获取当app的应用名字,包名,应用图标,权限versionName,vertionCode等各种消息.1,获取本应用的相关信息:try { PackageManager pm = this.getPackageManager(); PackageInfo info = pm.ge...原创 2018-05-23 12:33:33 · 214 阅读 · 0 评论 -
ExpandableListView的基本使用
一,在Activity中让子条目全部展开//Group左边会默认有以上下切换的图标,假如你有强迫症可以通过mListView.setGroupIndicator(null)去除。mExpandableListView = (ExpandableListView) findViewById(R.id.exp_listview);mExpandableListView.setAdapter(new...原创 2018-05-23 17:39:23 · 252 阅读 · 0 评论 -
软键盘相关属性
一,软键盘相关属性:我们知道,在Activity中如果要让布局不被软键盘遮挡,方法一般是在清单文件中配置windowSoftInputMode属性, windowSoftInputMode是Android1.5以后的一个新特性,主要是对软键盘操作的,主要有以下属性:1. stateUnspecified:软键盘的状态并没有指定,系统将选择一个合适的状态或依赖于主题的设置2. stateUnchan...原创 2018-06-01 17:10:49 · 288 阅读 · 0 评论 -
拍照
一,执行拍照/** 开始拍照* */public void takePhoto() { Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); //照片保存目录 file = new File(Environment.getExternalStorageDirectory(), STORAGE_PICTU...原创 2018-07-12 15:12:52 · 156 阅读 · 0 评论 -
软键盘相关知识
一,点击按钮,控制软键盘,如果是打开的则关闭,如果是关闭的则打开private void hideOrOpenKeyBoard() { InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); if (imm.isActive()) { ...原创 2018-07-13 11:05:34 · 137 阅读 · 0 评论 -
Popupwindow,Dialog,Dialogfragment的基本使用
pop不会新建页面,所以在A页面弹出,那A页面的点击事件仍然有效,得自己处理dialog会新建页面.一,Popupwindow(一)基本介绍1,Popupwindow没有灰色背景,需要自己设置并取消2,Popupwindow无法从底部或者其他地方弹出,需要自己设置动画 setAnimationStyle3,Popupwindow和Edittext,需要特殊配置...原创 2018-07-13 11:12:47 · 610 阅读 · 0 评论 -
常见的内存泄漏及解决方式
什么是内存泄漏? 有些对象只有有限的生命周期。当它们的任务完成之后,它们将被垃圾回收。如果在对象的生命周期本该结束的时候,这个对象还被一系列的引用,这就会导致内存泄漏。随着泄漏的累积,app将消耗完内存。内存泄漏造成什么影响? 它是造成应用程序OOM的主要原因之一。由于android系统为每个应用程序分配的内存有限,当一个应用中产生的内存泄漏比较多时,就难免会导致应用所需要...转载 2018-08-01 15:25:24 · 4920 阅读 · 0 评论 -
studio目录详细介绍
### 一,项目目录 ###* .gradle gradle 缓存文件* .idea 缓存配置文件 * app 模块* build build时候的中间文件* gradle ...原创 2018-08-02 11:32:03 · 337 阅读 · 0 评论 -
高德地图集成步骤
一,下载sdk --代开2Dmap_Demoimage.pngimage.png二,获取appkey(先要获取keystore的shaw1值)image.png(1),在C:\Users\Administrator.android目录下找到debug.keystore,原创 2018-01-11 14:05:58 · 485 阅读 · 0 评论