浅谈手势导航

本文介绍了Android 10及以上版本的手势导航,包括如何实现全面屏布局,处理系统栏颜色,解决应用手势冲突,特别是返回手势和主屏幕手势的冲突。并提供了相关API的使用示例,帮助开发者实现应用与手势导航的兼容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


前言

从 Android 10(API 级别 29)开始,Android 系统支持完全基于手势的导航。为确保应用与此功能兼容,应用开发者应完成以下两项任务:
1.将应用内容扩展到屏幕边缘(全面屏)。
2.处理存在冲突的应用手势。

一、全面屏

1.什么是全面屏

默认情况下,应用内容的绘制范围从顶部状态栏下方开始,延伸至底部导航栏上方。(状态栏和导航栏统称为系统栏)
Android 10 及以上版,大多数设备均保留了三键导航模式 (后退、返回首页、最近使用的应用)。

2.实现全面屏

请求全屏布局

首先将布局扩展至系统栏后方,需要使用setSystemUiVisibility()API以全屏模式布局,我们关注几个接受值:

	view.systemUiVisibility = 
    //告诉系统,窗口希望将内容放置在最极端的情况下
    View.SYSTEM_UI_FLAG_LAYOUT_STABLE or
    //告诉系统,窗口希望将内容布局为隐藏的导航栏
    View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION

setSystemUiVisibility()具体参考:
setSystemUivisibility详解
Andorid开发者文档
设置完毕后可以看到应用的内容出现在导航栏的后面:
1

改变系统栏颜色

Android10中,只需要将系统栏的颜色设置为透明即可:

<style name="Theme.FullScreen">
    <item name="android:navigationBarColor">
        @android:color/transparent
    </item>
    <item name="android:statusBarColor"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值