自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(157)
  • 收藏
  • 关注

原创 Android隐藏标题栏、移除标题栏

//隐藏标题栏,需要置于setContentView方法前// Android4.0以下requestWindowFeature(Window.FEATURE_NO_TITLE);// Android4.0以上supportRequestWindowFeature(Window.FEATURE_NO_TITLE);

2024-04-22 14:19:04 528

原创 Android动画

在Android手机上,我们通常可以看到一些动画效果比较炫酷的App界面,这些动画效果是如何实现的呢?为了实现这些动画效果,Android给我们提供了3种动画模式,分是补间动画,逐帧动画和属性动画。

2024-04-21 08:29:44 752 1

原创 ViewFlipper飞掠视图

手机屏幕尺寸不大,为了在有限空间中展示尽可能多的信息,Android设计了多种方式显示超出屏幕尺寸的界面,包括上下滚动、左右滑动等。飞掠视图ViewFlipper的层次翻动就是其中一项术。与ViewPager(翻页视图)相比,两者都是一系列类似视图的组合,ViewFlipper更像是视图的立体排列(如现实生活中的书籍),从上往下翻页;ViewPager更像是一幅长长的平面画卷从左往右翻页。

2024-04-21 08:29:25 219

原创 Android自定义类-写字板

该写字板可设置画笔颜色、画笔宽度、画布背景,具有导出图像、清空画布功能,可与OnTouchListener配合达到触摸绘画的效果。

2024-04-20 23:14:45 375

原创 Canvas、Paint与Path绘图

Canvas(画布)与Paint(画笔)是绘图的主要工具,可以绘制各类图像;还可使用Path(路径)绘制路径。

2024-04-20 23:12:26 152

原创 ExpandableListView可扩展列表视图,可折叠列表视图

ExpandableListView(可扩展/可折叠列表视图)是一种多功能的高级控件,每个子项都可以展开一个孙子列表。点击一个分组(子项),即可展开该分组下的孙子列表;再次点击该分组,即可收起该分组下的孙子项列表。

2024-04-19 10:51:36 852

原创 安卓APK文件安装,程序卸载,查询全部APK文件,获取安装包信息

Android查询APK文件,获取安装包信息,安装程序,卸载程序。

2024-04-19 10:51:12 631

原创 Android下载管理器DownloadManager

Android 从 2.3 (API9) 开始提供了专门的下载工具DownloadManager(下载管理器)统一管理下载操作。下载管理器DownloadManager的对象从系统服务DOWNLOAD_SERVICE中获取,具体使用过程分为3步:构建下载请求(Request)、进行下载操作(DownloadManager)和查询下载进度(Query)。

2024-04-18 14:06:00 861

原创 获取网络信息、开关网络ConnectivityManager,判断网络是否可用,判断网络连接状态

Android中使用ConnectivityManager(连接管理器)对网络连接进行管理;该管理器管理全部网络连接,包括WiFi、移动数据连接等,如仅需管理WiFI可使用WiFiManager。

2024-04-18 14:05:36 971

原创 URLConnection、HttpURLConnection、OKHttpClient分析

URLConnection和HttpURLConnection都是用于建立网络连接的类。URLConnection是一种通用的连接方式,它支持多种协议,如 HTTP、HTTPS、FTP 等。HttpURLConnection是URLConnection的子类,提供了更多针对HTTP协议的功能。如果仅是简单的HttpURLConnection的get服务,使用URLConnection即可。(如获取网络图片)OKHttpClient是第三方提供,对HttpURLConnection的升级;相对于HttpUR

2024-04-17 10:26:29 397

原创 URLConnection访问网络

URLConnection是一种通用的连接方式,它支持多种协议,如 HTTP、HTTPS、FTP 等。HttpURLConnection是URLConnection的子类,提供了更多针对HTTP协议的功能。如果仅是简单的HttpURLConnection的get服务,使用URLConnection即可。(如获取网络图片)OKHttpClient是第三方提供,对HttpURLConnection更建议使用OKHttpClient。

2024-04-17 10:25:47 195

原创 ImageView中图片变形

想使Imageliew中图片缩放、旋转、倾斜、移动;可使用setImageMatrix()方法,想设置图片透明度可使用setAlpha()方法或在控件中设置android:alpha="1.0f"如果想使用setImageMatrix()方法需在控件中设置android:scaleType="matrix"

2024-04-16 17:39:54 215

原创 AsyncTask异步任务

在Android开发中,AsyncTask(异步任务) 和 Thread + Handler 都用于在后台执行任务,但它们的使用场景和常见程度有所不同。AsyncTask 在简单的异步任务和UI更新场景下比较常见,而 Thread + Handler 则更适用于复杂的异步任务和需要更精细控制的情况。然而,随着Android开发的发展,推荐使用 Thread + Handler 或者更现代化的异步任务处理方式,如 Kotlin 协程等。

2024-04-16 17:38:51 693

原创 蓝牙连接BluetoothAdapter

Android中使用的蓝牙分为两种,蓝牙2.0和BLE(蓝牙4.0及以上版本)。蓝牙2.0有效距离为小于等于10米,传输速度最大375KB/s,连接建立时间6s。BLE有效距离为小于等于100米,传输速度最大3MB/s,连接建立时间2s。

2024-03-15 15:52:51 1238

原创 Android红外遥控ConsumerIrManager

红外遥控是一种近红外光线(频率为几万赫兹)作为遥控光源的遥控方式。在Android4.4后提供了红外遥控功能,部分手机未提供该功能,该功能由ConsumerIrManager(消费者红外管理器)控制。

2024-03-15 15:52:31 1089

原创 Android中的NFC操作

NFC的全称是“Near Field Communication”,意思是近场通信、与邻近的区域通信。

2024-03-12 20:44:42 1660

原创 Android手机定位

Android的手机定位一般由卫星定位、WiFi定位、基站定位实现。卫星定位由几个全球卫星导航系统提供,主要包括美国GPS、俄罗斯格洛纳斯、中国北斗。WiFi定位一般通过接入公共WiFi,通过WiFi的MAC地址与电信网络宽带的网络IP,查询WiFi位置获取接入该WiFi的大致位置。基站定位是监测手机SIM卡能搜索到周围的哪些基站,手机必然处于它们信号的重叠位置。

2024-03-12 20:44:04 1082

原创 Android打开、关闭网络

Android手机的网络一般有两种,WiFi网络和移动数据网络。对网络进行操作前需要静态申请权限,因为并不会对隐私产生危害,所以只需要静态申请。

2024-03-11 08:38:21 389

原创 Android音量调节

Android中有6类铃音,分别是通话音、系统音、铃音、媒体音、闹钟音、通知音。管理这些铃声音量的工具是AudioManager,对象从系统服务AUDIO_SERVICE中获取。

2024-03-11 08:37:22 537

原创 表面视图SurfaceView基础详解

表面视图SurfaceView是Android用来解决子线程绘图的特殊视图,拥有独立的绘图表面,即不与其宿主页面共享同一个绘图表面。由于拥有独立的绘图表面,因此表面视图的界面能够在一个独立线程中进行绘制,这个子线程为渲染线程。因为渲染线程不占用主线程资源,所以一方面可以实现复杂而高效的UI刷新,另一方面及时响应用户的输入事件。由于表面视图具备以上特性,因此可用于拍照和录像的预览界面,也可用于游戏的实时界面。

2024-03-10 10:23:28 398

原创 纹理视图TestureView

表面视图SurfaceView在使用Camera的一般情况下是够使用了,但是有一些限制。因为表面视图不是通过onDraw方法和 dispatchDraw方法进行绘图,所以无法使用View的基本视图方法;各种视图变化方法均无法奏效。为了解决表面视图的不足之处,Android在4.0之后引入了纹理视图TextureView。与表面视图相比,纹理视图并没有创建一个单独的绘图表面用来绘制,可以像普通视图一样执行变换操作,也可以正常设置背景图。

2024-03-10 10:23:07 352

原创 SQLite语句

常用SQLite语句。

2024-03-08 08:32:46 642

原创 设置EditText文本编辑框焦点置于文本末尾

EditText一般需要使焦点自动置于文本末尾,可采用设置焦点监听器,并使用editText.setSelection(int index)方法设置选中位置。以下是工具类,可直接使用。

2024-03-08 08:31:15 463

原创 Android下载网络图片

在Android中下载网络图片,一般使用URL对象调用openConnection()方法获取URLConnection对象,然后从该对象中获取流。该操作类似于访问web服务器,而web服务器获取到的是HttpURLConnection。使用该方法一般为小文件(几十kb到几百kb),大文件建议使用DownloadManager。

2024-03-07 12:52:30 487

原创 onSaveInstanceState方法与onRestoreInstanceState方法的使用

在屏幕旋转时,onCreate()方法会被重新调用,所以会造成部分数据丢失的情况(如EditText填写的字符串),而onRestoreInstanceState()方法也会在此时调用,所以仅在其中一个方法实现数据恢复操作即可。

2024-03-07 12:52:01 373

原创 ActivityResultLauncher获取Activity返回数据

ActivityResultLauncher(活动结果启动器)是 Android 中用于启动活动并接收结果的新 API。它是在 AndroidX 框架中引入的,用于简化之前使用startActivityForResult()方法的流程。在使用 ActivityResultLauncher之前,你需要选择适当的合同(contract),例如 StartActivityForResult 合同,然后通过registerForActivityResult()方法创建一个ActivityResultLaun

2024-03-06 11:15:26 862

原创 使用HttpURLConnection网络

URLConnection和HttpURLConnection都是用于建立网络连接的类。URLConnection是一种通用的连接方式,它支持多种协议,如 HTTP、HTTPS、FTP 等。HttpURLConnection是URLConnection的子类,规定了更多针对HTTP协议的功能。如果仅是简单的HttpURLConnection的get服务,使用URLConnection即可。(如获取网络图片)OKHttpClient是第三方提供,对HttpURLConnection的升级。

2024-03-06 11:14:13 452

原创 下拉刷新布局SwipeRefreshLayout的使用

可使用SwipeRefreshLayout(下拉刷新布局)创建需要刷新的界面。

2024-03-05 13:28:27 386

原创 CoordinatorLayout、AppBarLayout、CollapsingToolbarLayout的使用

CoordinatorLayout(协调布局)常与AppBarLayout和CollapsingToolbarLayout配合使用。

2024-03-05 13:28:01 1114

原创 横幅条(自定义控件)的编写

常可以看见ViewPager翻页视图下有几个原点,并随着图片变化而变化。我们称之为横幅条,横幅条自定义类的编写有两种:(1)使用Paint与Canvas绘制;(2)使用RadioButton组合。第一种编写方法的优势是可以显示滑动过程中的位置,劣势是无法点击圆点。第二种编写方法的优势是可以点击圆点,优势是无法显示滑动过程中的位置。

2024-03-04 12:36:37 442

原创 TabLayout与ToolBar、ViewPager的使用

可以在ToolBar工具栏中添加TabLayout配合。

2024-03-04 12:36:04 326

原创 LinearLayout失效

LinearLayout中子控件使用layout_weight属性不生效,请检查是否将子控件对应的属性(layout_width或layout_height)是否为0dp。

2024-01-07 12:56:11 403

原创 ObjectInputStream、ObjectOutputStream在TCP的使用

Object流常用于网络连接。ObjectInputStream和ObjectOutputStream可以直接传输任何类型数据,但请注意该类型数据需可进行序列化。

2024-01-07 12:55:30 1255

原创 UUID类生成随机通用唯一标识符

是一个 Java 中生成 UUID(通用唯一标识符)的常见方法。这段代码调用了UUID.randomUUID()方法,生成一个基于随机数的 UUID 对象,然后调用toString()方法将其转换为字符串形式。UUID 是一个 128 位长的标识符,通常用于确保在分布式系统中的唯一性。这个标识符的生成是基于当前时间、时钟序列和节点(通常是机器的唯一标识)的组合。

2024-01-05 15:24:37 425

原创 Android设置按钮颜色

设置按钮颜色的同时请确保app主题不是默认主题或会设置按钮样式的主题,需替换为不会设置按钮样式的主题。设置按钮颜色需要设置。

2024-01-05 15:23:56 431

原创 Android权限申请

在android中所有的权限都需要静态申请,涉及用户隐私的高级权限还需要进行动态申请。

2024-01-04 17:22:06 372

原创 AndroidStudio导入jar包

在AndroidStudio中导入jar包(jar文件)。

2024-01-04 16:07:19 923

原创 Android时间差计算

在Android中进行时间差计算,一般有两种办法。使用Calendar类,使用LocalHostChronoUnit类和ChronoUnit枚举。

2024-01-02 16:30:09 519

原创 AndroidStudio导入程序、项目(教程)

导入项目需要注意的文件有,build.gradle,gradle-wrapper.properties,.gradle,.idea。

2024-01-02 16:21:34 3225

原创 Android Studio 显示Cause: connect timed out

Cause: connect timed out问题解决

2023-12-20 19:41:17 2917

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除