Android杂记
文章平均质量分 52
kisaragi_yu
码海拾荒
展开
-
Android MK和BP编译规则比较
MK与BP之间的比较原创 2022-06-29 15:38:59 · 1326 阅读 · 0 评论 -
Android 12如何使锁屏界面状态栏ICON显示与桌面状态栏保持一致
原生代码逻辑如何控制状态栏Icon显示原创 2022-05-17 17:05:07 · 1411 阅读 · 0 评论 -
图片素材屏幕适配
屏幕适配像素密度DPI公式:sqrt(width^2 + height^2)默认像素密度为160时,1dp = 1 px假设像素密度为a,该屏幕dp和px的转换为1 dp = 1 × (a /160)针对不同的dpi,安卓会提供不一样分辨率的drawble文件夹,用来控制实际显示的图片素材分辨率。规则如下:drawable名称屏幕密度(dpi)mdpi120~160hdpi160~240xhdpi240~320xxhdpi320~480xxxh原创 2021-10-12 10:59:33 · 165 阅读 · 0 评论 -
ViewGroup的DispatchTouchEvent事件分发流程分析
@Override public boolean dispatchTouchEvent(MotionEvent ev) { ...(进行Event是否正确的判断) boolean handled = false; if (onFilterTouchEventForSecurity(ev)) { final int action = ev.getAction(); final i原创 2021-10-12 10:55:16 · 209 阅读 · 0 评论 -
安卓系统格式化SD卡
格式化一张SD卡,流程分两步获取该SD卡插入后生成的VolumeInfo调用StorageManager的format方法安卓系统是基于LINUX系统的,LINUX系统支持ext格式和vfat格式(vfat就是fat格式一家,从fat16到exfat都有)。关于挂载,一张SD卡的状态有很多种,这里给出VolumeInfo定义的状态(它其实是Vold中定义的): //插上了,可以挂载,但还没挂载上 public static final int STATE_UNMOUNTED =原创 2020-09-11 20:45:48 · 2293 阅读 · 0 评论 -
Android 获取当前Activity的高度不正确
项目需要设一个popupwindow来覆盖整个屏幕,需要先获取这个Activity的宽和高来为popupwindow设置值。使用了网上已知的好几种方法,发现高度总是少了那么点。(实际高度640,log打出来的是592)在网上找了找相关问题,在这里找到了问题所在 Android获取屏幕高度的坑。我使用的设备是全面屏设备,会用到虚拟按键,但app是使用的全屏模式,因此当时忘记了获取高度为去掉虚拟按键的高度。getMetric()方法只能获取到可用的高度,因此会减掉虚拟按键高度,得到的是592。(发现了虚原创 2020-09-07 18:03:41 · 1091 阅读 · 0 评论 -
Android App设置系统时间,语言和时区
安卓设置系统时间安卓设置系统语言安卓设置系统时区设置系统时间 设置系统日期(仅设置到xxxx年xx月xx日) 设置系统是否自动获取时间 判断系统是否自动获取时间设置系统时区 设置系统是否自动获取时区 判断系统是否自动获取时区 获取当前月有多少天获取系统时间和时区信息设置系统语言获取系统语言偏好原创 2020-09-04 17:48:00 · 5110 阅读 · 4 评论 -
GridView中图片显示出现上下间距过大,左右图片显示类似瀑布流的问题
这种问题的首要原因是放置的图片格式大小不同。我们可以通过不同的item布局观察其中的变化GridVIew的layout如下<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"&原创 2020-07-19 15:21:57 · 446 阅读 · 0 评论 -
简述AdapterView中Viewholder为何能够对整个item的装填进行优化
刚开始学习时,在Adapter适配时,对item中布局的控件初始化,我们一般是直接使用findViewByid,然而使用viewholder可以对整个程序进行优化话不多说,直接上案例图//创一个ViewHolder是为了避免重复使用findVieByid,提高性能 static class ViewHolder { //这里是item布局中用到的几个控件 public ImageView imageView; public TextView TVtitle, TVtime, TVc原创 2020-07-17 23:01:41 · 277 阅读 · 1 评论 -
Android 学习日记
Android布局管理基础构件及布局width:=match_parent/wrap_parentheight:=match_parebt/wrap_parentweight 即某布局内各View对存在的剩余内容所占的权值 LinearLayout相关学习知识点gravityOrientationverticalhorizontalmarginRelativeLayoutTextViewButtonEditTextRaditButtonCheckBox原创 2020-02-23 23:20:16 · 269 阅读 · 0 评论 -
Android Studio SDK安装遇到的雷
之前做课设时使用的是Ecliose用的adt版本的SDK,这回装Android Studio。问题来了,安装完成后,Android Studio提示无法连接。第一次尝试:改HTTP proxy,链接设的mirror.neusoft.ac.cn,端口80 改完之后进入SDK页面,仅显示之前adt版本装过的API。本次尝试开始并没觉得有什么问题,开始启动AVD时才发现了问题。AVD首先提示...原创 2020-02-22 23:04:05 · 847 阅读 · 0 评论 -
点击ListView内button更新整个ListView布局
先上需求图需要完成的是点击下面listview里的删除按钮,将整个ListView界面刷新。关于ListView的界面刷新,无非就是使用notifyDataChange方法。我们在删除按钮处设置点击事件,点击后触发数据库删除和Adapter的datalist数据删除,在之后加上notifyDataChange就能完成需求啦。holder.mBtnDelete.setOnClickListener(new View.OnClickListener() { @Override原创 2020-08-11 19:51:14 · 360 阅读 · 0 评论