使用通知Notification

Android8.0开始引入了通知渠道的概念,每条通知都要属于一个对应的渠道,每个应用程序都可以自由的创建当前应用拥有哪些通知渠道,但这些通知渠道的控制权是掌握在用户手上的,用户可以自由地选择这些通知渠道的重要程度,是否响铃、是否震动或者是否要关闭这个渠道的通知。对于每个应用来说,通知渠道的划分是非
Android 安卓 2021年11月23日 142次浏览

Android多线程编程

耗时操作需要放在子线程中运行,否则会导致主线程被阻塞,从而影响用户对软件的正常使用。一、线程基本用法Kotlin中使用线程方法和Java类似,可以选择继承Thread类或实现Runnable接口来实现线程,而Kotlin还给我们提供了一种更加简单的开启线程的方法,写法如下:thread {// 编写
Android 安卓 2021年11月23日 143次浏览

播放多媒体文件

Android在播放音频和视频方面做了相当不错的支持,它提供了一套较为完整的API。一、播放音频Android中播放音频文件一般使用MediaPlayer类来实现,它对多种格式音频文件提供了非常全面的控制方法,下表列出MediaPlayer类一些常用控制方法。方法名功能描述setDataSource
Android 安卓 2021年11月23日 148次浏览

调用摄像头和相册

创建一个项目,用户可以选择拍照或者是从文件中选择图片,然后显示在ImageView中。首先修改activity_main.xml中代码:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android&qu
Android 安卓 2021年11月23日 143次浏览

更强大的滚动控件:RecyclerView

可以轻松实现ListView的同样效果,并且优化了不足之处。一、导入依赖在app/build.gradle中导入依赖dependencies {//如果有新版本,鼠标放在上面会提示更新implemention 'androidx.recyclerview:recyclerview:1.1.0'}二、
Android 安卓 2021年11月23日 137次浏览

Intent启动不同程序Activity或网页

一、正常启动一个网页val intent = Intent(Intent.ACTION_VIEW)intent.data = Uri.parse("https://baidu.com")二、设置指定的Activity可以响应的数据
Android 安卓 2021年11月23日 133次浏览

隐式Intent跳转

一、设置AndroidManife.xml<activity android:name = ".SecondActivity> <intent-fliter> <!-- 指明当前Activity可以响应活动 --> &l
Android 安卓 2021年11月23日 136次浏览

Fragment简单用法

一到四节演示一个简单例子,在Activity中添加两个Fragment来平分Activity左右空间。一、新建左Fragment(left_fragment.xml)<LinearLayout...><Button.../>二、新建右Fragment(right_fragme
Android 安卓 2021年11月23日 138次浏览

使用限定符动态加载布局

一、Android常见限定符——屏幕大小smal小屏幕设备normal中等屏幕large大屏幕xlarge超大屏幕二、Android常见限定符——屏幕分辨率ldpi低分辨率(120dpi以下)mdpi中等分辨率(120dpi ~ 160dpi)hdpi高分辨率(160dpi ~ 240dpi)xhd
Android 安卓 2021年11月23日 139次浏览

Android广播机制

每个应用都可以对自己感兴趣的广播进行注册,这样应用只会收到自己已经注册的广播,广播可能源于系统或其他应用。标准广播(normal broadcasts)完全异步,广播发出后所有BroadcastReceiver几乎会在同一时刻收到,因此没有先后顺序可言,效率比较高,但是它是无法被截断的。有序广播(o
Android 安卓 2021年11月23日 133次浏览