![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
android-view
文章平均质量分 94
P.TAN
每篇文章的开头是个人笔记,之后才是原文
展开
-
RecyclerView 滚动事件OnScrollListener解析( scrollBy)
scrollBy不会触发滚动状态变化(onScrollStateChanged),但会触发onScrolled他是在原来的位置上增加移动距离转载 2020-09-28 09:44:15 · 1943 阅读 · 0 评论 -
Android屏幕适配
Android屏幕适配最主要的原因: 是由于Android手机的分辨率和尺寸千奇百怪,虽然Android官方提供了dp单位来适配,但其在各种奇怪分辨率下表现却不尽如人意。 主要是由于在界面在渲染绘制时,android会将dp转为px,在转换过程中是需要dpi的(上篇文章中有提到),而dpi是根据屏幕真实的分辨率和尺寸来计算的,每个设备都可能不一样的,从而导致显示问题。从两个大方面阐述一下Android的屏幕适配:一、Android屏幕适配的发展 1、dp直接适配 2、宽高限定符.转载 2020-07-30 15:43:41 · 583 阅读 · 0 评论 -
动画(Animation)
Android提供了2种动画:1> Tween动画,通过对 View 的内容进行一系列的图形变换 (包括平移、缩放、旋转、改变透明度)来实现动画效果。动画效果的定义可以采用XML来做也可以采用编码来做。Tween动画有4种类型: 动画的类型 Xml定义动画使用的配置节点 编码定义动画使用的类 渐变透明度动画效果 <alpha/> AlphaAnimation原创 2020-07-27 09:40:18 · 587 阅读 · 0 评论 -
Android Switch开关自定义
先不废话,上图可以自定义滑块 和背景哦~未选中已选中2、开始进入代码环节Java部分,监听和调用mToolSwitch.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean i..转载 2020-07-15 10:40:05 · 1043 阅读 · 0 评论 -
android:configChanges属性 (让某些配置在发生改变的时候不重启Activity)
没有额外增加笔记 ,看原文:android:configChanges属性Android程序在运行时,一些设备的配置可能会改变,如:横竖屏的切换、键盘的可用性等。这些事件一旦发生,当前活动的Activity会重新启动,其中的过程是:在销毁之前会先调用onSaveInstanceState()方法去保存你应用中的一些数据,然后调用onDestroy()方法,最后调用onCreate()、onStart()、onResume()等方法启动一个新的Activity,。如果想让某些配...转载 2020-06-02 10:22:26 · 4481 阅读 · 0 评论 -
解决android启动白屏问题
第一步:在Sytle中自定义AppTheme<style name="AppTheme.Launcher"><item name="android:windowBackground">@null</item><item name="android:windowDisablePreview">true</item></style>第二步:在AndroidManifest中LaunchActivity中加入...转载 2020-05-23 17:15:51 · 502 阅读 · 0 评论 -
Sharing Shortcuts 分享(共享)信息 Jetpack
快速分享文字,链接等等。原文:AndroidQ(十一)共享方面的改进原文中的例子不可以直接运行,要自己修改一下,效果9.07.0转载 2020-05-11 10:53:28 · 702 阅读 · 0 评论 -
Android 8.0应用快捷方式(ShortcutManager)的使用
备份Android 8.0应用快捷方式(ShortcutManager)的使用转载 2020-05-11 10:40:50 · 363 阅读 · 0 评论 -
使用Palette优化界面色彩搭配 Jetpack
没有添加笔记 ,直接查看原文:https://www.jianshu.com/p/dfa9aac6143d我写过一篇博客介绍了常用Material Design控件的使用。http://www.jianshu.com/p/776cc6329fff本想把大部分的Material Design的知识点写到一个博客中,结果无奈东西太多只好分开写。这篇博客介绍的是Palette调色板的使用。源码地址:https://github.com/AxeChen/MaterialDesignSimple示例.转载 2020-05-09 17:10:10 · 572 阅读 · 0 评论 -
Slices (快速展示APP的部分功能) Jetpack
https://www.jianshu.com/p/a90563606e1f转载 2020-05-08 11:48:18 · 947 阅读 · 0 评论 -
AppCompat (AppCompatActivity) Jetpack
原文:Android Jetpack之AppCompat - Actionbar篇 萧文翰今天我们来聊一聊有关AppCompat,作为Android Jetpack系列文章的开篇。说到Android Jetpack,我们先看一下这张图:Jetpack一览从图中我们可以看到,整个Android Jetpack分为了四大部分,而我们今天要讲述的就是Foundation中的AppCom...转载 2020-05-08 15:04:41 · 2994 阅读 · 0 评论 -
Paging 分页组件 Jetpack
https://blog.csdn.net/mq2553299/article/details/80788692转载 2020-05-09 10:30:24 · 264 阅读 · 0 评论 -
MediatorLiveData(AAC)
原文:https://www.jianshu.com/p/2f5bc6e9c54eMediatorLiveData 中介者LiveData,它可以监听另一个LiveData的数据变化, 同时也可以做为一个liveData,被其他Observer观察。一、基本用法ViewModel中定义MediatorLiveDatajavapublic class TanViewMode...转载 2020-05-07 09:56:39 · 652 阅读 · 0 评论 -
Android:检测网络状态&监听网络变化
网络状态改变、用户信息改变(帐户的钱),第一时间就要想到用监听器模式来实现广播接收者,简单地把网络的变化通过接口抛出去/** * Created by Carson_Ho on 16/10/31. */public class NetWorkStateReceiver extends BroadcastReceiver { private static NetState...转载 2020-05-06 14:40:42 · 2494 阅读 · 0 评论 -
Android Architecture Components (AAC)(B)
摘要:浅谈 Android Architecture Components 使用和原理1、Lifycycle(AAC) 使用详解2、LiveData 和 ViewModel (AAC)原创 2020-04-29 16:04:06 · 227 阅读 · 0 评论 -
LiveData 和 ViewModel (AAC)
重点:1、LiveData核心方法是 postValue和setValue用来通知观察者更新数据。MutableLiveData是它的一个实现类。其中定义了postValue和setValue用来通知观察者更新数据。还有4个常用的方法,要通过扩展来使用 (扩展LiveData使用情景,例如观察网络状态变化)observeonActiveonInactiveobserveForeve...转载 2020-04-29 14:49:23 · 376 阅读 · 0 评论 -
Android 圆角、圆形 ImageView 实现
Android 圆角、圆形 ImageView 实现转载 2020-04-14 09:30:46 · 219 阅读 · 0 评论 -
使用CardView实现卡片式设计 (常用于RecyclerView中的item)
使用CardView实现卡片式设计如何设置 CardView 阴影颜色转载 2020-04-10 15:07:53 · 583 阅读 · 0 评论 -
RecyclerView(B)
灵活使用的重点:getItemViewType和动态添加、删除Item。使List的风格丰富,多变。具体看“六、进阶”第二点(1)getItemViewType的例子(入门级) :RecyclerView 实战1 多种不同的Item,getItemViewType//把ItemViewType保存中数据list中,很经典的做法public int getItemViewType(...转载 2019-03-21 14:21:27 · 395 阅读 · 0 评论 -
Android 好用的下拉控件Spinner
Android 好用的下拉控件Spinner转载 2020-04-09 16:18:40 · 402 阅读 · 0 评论 -
SwipeRefreshLayout 的使用详解(下拉刷新控件)
SwipeRefreshLayout 的使用详解转载 2020-04-09 14:25:10 · 752 阅读 · 0 评论 -
Recylerview 加载更多功能实现(分页加载)
Recylerview 加载更多功能实现(分页加载)转载 2020-04-09 11:22:52 · 192 阅读 · 0 评论 -
自定义 Dialog (B)
本文所用的知识点很简单,但很实用,非喜勿喷目录一、通过AlertDialog ,快速使用自定义Dialog 。二、自定义AlertDialog的宽度三、DialogFragment 创建对话框重点:AlertDialog要在主线程才可以显示/隐藏。但DialogFragment可以在子线程中显示 /隐藏正文:一、通过AlertDialog ,快速使用自定义Dial...原创 2020-01-03 16:17:06 · 170 阅读 · 0 评论 -
canvas之save、restore、restoreToCount详解
Canvas(画布) save和restore保存和恢复对象都是Canvas 。不要误以为是画图,画到一半,保存,再画的意思,它的作用是保存画布的设置信息。例如canvas.translate,canvas.rotate()之类的。Canvas的方法Canvassave,把Canvas的信息保存,压入栈。Canvasrestore ,恢复到最近的一个保存点。出栈。resto...原创 2019-12-05 09:39:49 · 3295 阅读 · 0 评论 -
改变View的大小,layout方法和LayoutParams方法的差异
重点:通过view的layout方法 只是修改view1显示区域,没有实际修改view中LayoutParams的值 。所以,虽然view1(可见)显示区域变小了,但LayoutParams的值没有改变。因此,改变View的大小,建议使用view1.setLayoutParams(params)。这也是作者“实验二”中,下面的view无法自动上移的原因。因为view1的LayoutParam...原创 2019-12-03 11:25:45 · 1196 阅读 · 0 评论 -
Android View框架的measure机制
---------------------------------------------------------概述 Android中View框架的工作机制中,主要有三个过程: 1、View树的测量(measure)Android View框架的measure机制 2、View树的布局(layout)...转载 2019-12-02 10:18:12 · 158 阅读 · 0 评论 -
MeasureUtil 测量工具类
import android.content.Context;import android.view.View;import android.view.ViewGroup;import android.widget.Adapter;import android.widget.GridView;import android.widget.ListView; /** * ...转载 2019-12-02 09:42:50 · 286 阅读 · 0 评论 -
自定义控件 1 (入门)
怕作者删除,粗粗保存一下,这文章没图,就看原文---------------------------------------尊重原创转载请注明:From AigeStudio(http://blog.csdn.net/aigestudio)Power by Aige 侵权必究!炮兵镇楼自定义View,很多初学Android的童鞋听到这么一句话绝逼是一脸膜拜!因为在很多初学者眼里,能...转载 2019-11-29 10:45:13 · 119 阅读 · 0 评论 -
Paint的measureText()方法取得字符串显示的宽度值
Paint是画笔,它的measureText方法可以测量出字符串显示的宽度值,这个方法在自定义view很常用,因为要根据“将要”画的字符串长度来做偏移量。--------------------------------------------------------------------------正确调用Paint的measureText()方法取得字符串显示的宽度值(1)问...转载 2019-11-29 09:13:01 · 1054 阅读 · 1 评论 -
自定义控件(View) (B)
自定义view,核心是学会使用系统提供的工具集,把view “画”出来。1、继承view就可以拿到工具集,常用的工具有画布Canvas和画笔Paint2、把你想要的东西画出来 ,onDraw。3、了解View框架,这样可以更好地使用自定义view。View框架的工作流程为:测量每个View大小(measure)-->把每个View放置到相应的位置(layout)--&.........转载 2019-11-28 16:17:27 · 441 阅读 · 0 评论 -
Android自定义View之Canvas
绘图的思维真得可以很巧妙,就好像例子中“画刻度”,位置不变,旋转画布。canvas.save()和canvas.restore()使用的时机要掌握好,例子是把所有刻度和文字画好后再合并画布-----------------------------------正文 ----------------------------------https://www.jianshu.com/...转载 2019-11-11 11:54:04 · 597 阅读 · 0 评论 -
DecorView是window中的最顶层view (可实现全屏)
通过Window的DecorView添加View到Activityhttps://www.jianshu.com/p/62f6a678024aAndroid DecorView学习(详细)https://www.jianshu.com/p/6a3bca1b36e8原创 2019-11-01 10:50:29 · 601 阅读 · 0 评论 -
Android ViewPager2
官方:https://developer.android.google.cn/jetpack/androidx/releases/viewpager22019年10【ViewPager2避坑系列】瞬间暴增数个Fragmenthttps://cloud.tencent.com/developer/article/1476030---------------2019年05...转载 2019-07-29 10:06:02 · 932 阅读 · 0 评论 -
拖动条控件 seekbar 设置
原文:https://www.jianshu.com/p/5eb99931c266最近博主遇到一个超级2B的产品经理。有多2呢?可以这么说,为了赶进度,不惜让UI把能用图片的都切图,加快移动端的进度。在这里,我举一个最简单的例子,让各位开心一下。如下图,是产品效果图:然后让UI给了三个图。分别是seekbar的背景图,progress的图,thumb的图。三个图片。...转载 2019-10-31 10:16:17 · 532 阅读 · 0 评论 -
TextureView-Android
一、注意在TextureView 有效(可用)时才可以进行播放,方法如下 :(1)TextureView.SurfaceTextureListener.onSurfaceTextureAvailable(2)textureView.isAvailable()二、这文章不错,可以更好地理解TextureViewhttps://blog.csdn.net/renlei0012/articl...原创 2018-04-20 14:45:56 · 1857 阅读 · 0 评论 -
Android H5交互Webview实现localStorage数据存储
https://blog.csdn.net/xhf_123/article/details/77893645转载 2019-08-27 08:47:57 · 503 阅读 · 0 评论 -
Android自定义AppCompatCheckBox复选按钮
我们在开发中,常常遇见一些控件都需要自己亲手定义样式!今天带来的就是一个比较简单的复选按钮AppCompatCheckBox(v7)先看看最终实现的样式:AppCompatCheckBox看着这样式,是不是感觉特别清爽,远远比默认的好看多了!下面我们实现这种效果的控件首先需要定义1个按钮的样式文件,1个文字的样式文件按钮的样式:checkbox_yellow_gray...转载 2019-09-26 11:12:55 · 2664 阅读 · 0 评论 -
迁移到 AndroidX 过程中遇到的各种问题(他解决问题的思路很好,要学习)
https://blog.csdn.net/github_35186068/article/details/83929124转载 2019-09-27 11:47:16 · 457 阅读 · 0 评论 -
ToggleButton(状态开关按钮)及Swich(开关)使用详解
https://blog.csdn.net/kai_zone/article/details/80200346转载 2019-10-09 17:20:01 · 697 阅读 · 0 评论