首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    1. Jetpack源码解析---看完你就知道Navigation是什么了?

    背景 之前已经翻译过了Google官方的CodeLabs上面的教程,教程很详细,代码在Github上也可以找到,本篇文章旨在自己的APP上使用效果及演示Demo,来具体的使用Navigation。...,NavHostFragment通过navGraph与navigation导航编辑器进行关联。...、setupWithNavController进行关联绑定 到此,我们的基本配置就结束了,可以看到我们drawerlayout中的首页和代码按钮点击会切换对应的fragment,同时toolbar的汉堡按钮和返回按钮也会自动切换...,用来实现标题按钮等状态的改变。...这样就将组件的状态切换绑定起来了,当fragment切换时,上面提到的接口分发,去切换布局按钮等状态。

    2.6K30

    1. Jetpack源码解析---看完你就知道Navigation是什么了?

    背景 之前已经翻译过了Google官方的CodeLabs上面的教程,教程很详细,代码在Github上也可以找到,本篇文章旨在自己的APP上使用效果及演示Demo,来具体的使用Navigation。...,NavHostFragment通过navGraph与navigation导航编辑器进行关联。...、setupWithNavController进行关联绑定 到此,我们的基本配置就结束了,可以看到我们drawerlayout中的首页和代码按钮点击会切换对应的fragment,同时toolbar的汉堡按钮和返回按钮也会自动切换...,用来实现标题按钮等状态的改变。...这样就将组件的状态切换绑定起来了,当fragment切换时,上面提到的接口分发,去切换布局按钮等状态。

    2.2K20

    模拟京东首页导航条渐变

    made in 小蠢驴的京东搜图.jpg 京东App的效果演示: 京东Demo演示.gif 京东App首页导航条 - 细节点: 根据拖动,导航条的透明度渐变 拖动到一定的位置,整个导航条的元素 (按钮&...>如果有需求是起始alpha=1,慢慢下拉会慢慢透明的,解决办法:_navigationView.alpha = 1 - alpha; 3.监听导航条透明度,当它等于1的时候,改变导航条颜色和按钮状态...= alpha; if (_navigationView.alpha >= 1) { //开始导航条变化 _navigationView.backgroundColor...,图片 && 搜索框之类的透明度也跟着变化,不符合要求 对比京东Demo,发现问题所在 错误界面结构.png 如图所示,因为当前的两个按钮&&textField都是添加到naviView上,父控件naviView...naviView弄成一个透明的View,添加到self.View上即可(在背景View之后添加) 本质上,三个控件(左右两个按钮 && textField)都直接添加到self.view上也可以实现功能

    2.6K90

    【愚公系列】《AIGC辅助软件开发》013-AI辅助客户端编程:AI辅助 iOS 应用开发

    - **ZStack**: 允许视图重叠。...- `Button("Increment") { ... }`: 创建一个按钮,点击时 `count` 增加 1。- 其余修饰符与前面示例相同,设置按钮的样式。### 5....- `Button(action: { showPassword.toggle() })`:创建一个按钮,点击时切换 `showPassword` 的值,从而切换密码显示状态。...### 总结这个示例代码展示了如何使用 SwiftUI 构建一个简单的登录页面,涉及文本输入框、密码显示切换、按钮点击操作、加载指示器等基本功能。...我一直好奇,这个容器为什么会自动居中显示,而没有居中显示的代码,我怀疑可能是.padding()”的效果导致的,我们来验证一下:.padding()怎么理解?

    9010

    导航组件概览 | MAD Skills

    您可以使用设计工具来创建导航目的地 (destination) 并定义导航路径,以及在您应用的导航图中切换目的地的相关操作 (action)。...之后,您可以添加相关代码,使用户和应用的交互对应到合适的导航操作 (action) 上。 让我们来创建一个应用,并通过实际的工具和代码来体验一下导航组件。...IDE 加载完毕该应用之后,打开导航资源文件 nav_graph.xml 并在 Design 模式 (此外还有 Code 与 Split 模式) 下查看。您会看到当前应用导航图的样子。...该视图现在是不可见的,我们需要点击 ActionBar 菜单按钮来将它显示到屏幕上。...应用展示了 NavigationView (抽屉式导航栏) 覆盖在 activity 内容上方 接下来是 NavigationView,它是一个从左边划入的抽屉式导航栏。

    1.7K30

    Material Design 实战 之第二弹——滑动菜单详解&实战

    中(DrawerLayout标签下的第二个直接子控件的android:layout_gravity值)定义的一致,我们传入了GravityCompat.START; 1.2.6 实际上Toolbar...最左侧的这个按钮就叫作HomeAsUp按钮,它默认的图标是一个返回的箭头,含义是返回上一个活动;这里将其换了图标,并将逻辑响应修改了; HomeAsUp按钮的id永远都是android.R.id.home...实际上,Toolbar最左侧的这个按钮就叫作HomeAsUp按钮,它默认的图标是一个返回的箭头,含义是返回上一个活动。...很明显,这里我们将它默认的样式(该按钮图标)和作用(改/设置了按钮点击事件)都进行了修改。...menu是用来在NavigationView中显示具体的菜单项的; headerLayout则是用来在NavigationView中显示头部布局的。

    96230

    Jetpack源码解析---Navigation为什么切换Fragment会重绘?

    背景 先来看一下Navigation组件在官方文档上的介绍: 今天,我们宣布推出Navigation组件,作为构建您的应用内界面的框架,重点是让单 Activity 应用成为首选架构。...确实经过源码分析我们就可以发现,Navigation组件封装了Menu菜单栏、Fragment的切换、NavigationView、Drawerlayout等一系列涉及到的组件,为了更方便的让我们使用单...2.Fragment切换 通过现象分析,发现当切换NavigationView中的menu菜单来切换Fragment时,DrawerLayout抽屉关闭有一个短暂的动画(具体的这里就不分析了,感兴趣的可以自行查看...不仅仅是这样,上篇文章有小伙伴问切换了Fragment之后,点击返回按钮,发现之前的Fragment重走了onCreateView流程,这就意味着之前的状态没了。...对于这个问题其实根据上面的分析,也能大概想到是因为什么,但是返回按钮的操作我之前还真没有看过源码,所以这次顺便了解一下: 3.

    2.4K40

    Android Design Support Library初探-更新中

    , Android Design Support Library 更多的是对一些特效的实现,这个库和github上的很多开源的项目有很大的关系,material design的很多效果,同一种效果在github...(将这些控件结合在一起的手势滚动框架) 官方视频简介 Navigation View 抽屉导航是app识别度与内部导航的关键,保持这里设计上的一致对app的可用性至关重要,尤其是对第一次使用的用户。...NavigationView处理好了和状态栏的关系,可以确保NavigationView在API21(5.0)设备上正确的和状态栏交互。...效果图 Code 第一步 加入依赖 本工程的build.gradle中 compile 'com.android.support:design:23.1.1' ---- 悬浮操作按钮 Floating...Action Button Snackbar 选项卡 CoordinatorLayout, 手势, 以及滚动 CoordinatorLayout与悬浮操作按钮 CoordinatorLayout与app

    97420

    掌握 SwiftUI 的 Safe Area

    掌握 SwiftUI 的 Safe Area 访问我的博客 www.fatbobman.com[1] 可以获得更好的阅读体验 Safe Area(安全区域)是指不与导航栏、标签栏、工具栏或其他视图控制器提供的视图重叠的内容空间...对于视图层次上的其他视图,safeAreaInesets 只反映视图中被覆盖的部分。如果一个视图可以完整地放置在父视图的安全区域中,该视图的 safeAreaInsets 为 0。...当视图尚未在屏幕上可见时,该视图的 safeAreaInset 也为 0 。...•keyboard与显示在视图内容上的任何软键盘的当前范围相匹配的安全区域。...从 iOS 14 开始,SwiftUI 计算视图的安全区域时,将软键盘在屏幕上的覆盖区域(iPadOS 下,将软键盘缩小后键盘的覆盖区域将被忽略)也一并进行考虑。

    7.7K31

    Android Material Design系列之Navigation Drawer

    其实就是要用到了NavigationView。 NavigationView NavigationView分为两部分,一部分是headerLayout,一部分是menu。...(toolbar); //悬浮按钮控件,稍后讲这个控件 FloatingActionButton fab = (FloatingActionButton) findViewById...(this); 侧滑菜单中选项按钮的点击事件 MainActivity实现了NavigationView.OnNavigationItemSelectedListener这个监听事件,然后在实现的监听方法里判断点击事件...headerLayout上的控件实现 如果要实现headerLayout上的控件的点击,那就得这样做了,如下: View navHeaderView = navigationView.inflateHeaderView...", Toast.LENGTH_SHORT).show(); } }); 但是这样做了之后,就相当于在navigationView上又添加了一个headerlayou布局,所以这时,

    91450

    深入理解操作系统中进程与线程的区别及切换机制(上)

    进程所谓进程,大家可以理解为我们打开的应用程序,如微信、QQ、游戏等,但也有系统应用是我们看不见的,可以打开任务管理器一探究竟,我们写的代码程序在服务器上在不运行的情况下,它就是一个二进制文件,并不是进程...,8核对应的就是8个任务并行处理;然而,我们当前的服务器系统都是高并发状态,不仅要运行自己的业务,还要占用一定的CPU资源来运行系统进程。因此,以下一系列问题就出现了:一个任务占用多长时间的时间片?...CPU如何进行任务切换?当一个任务正在执行时被切换,资源如何处理?CPU如何找到下一个要执行的任务的位置?...我们的内存是很宝贵的,所以这里面就有上一节说的内存交换的问题了,可以使用内存交换机制将部分进程交换到磁盘中,这时候就是一个挂起的状态;挂起的状态分两种:就绪状态的挂起:一旦进程重新加载到内存中,就会立即运行...这时候你就知道为什么你可以运行很多个程序,但是有时候你打开的太多了,你正打开某一个软件的同时,另一个软件自己退了,你就可以看下你的内存是不是满了,这是因为已经被交换到磁盘中的进程不容易重新加载回内存。

    367121

    陪伴了你N年的控件等你来看—DrawerLayout

    那么就赶紧来看看今天的主角— DrawerLayout吧~ 简介及示例 DrawerLayout被称为滑动菜单,就是将一些菜单选项隐藏起来,而不是放在主屏幕上,通过滑动的方式将菜单显示出来。...2.代码控制及监听 上述示例中,只有在屏幕左边缘处进行拖拽,才可显示侧滑菜单,有时用户并不知道有此功能,这就需要我们通过按钮的点击操作,控制 DrawerLayout的显示或隐藏。..."); }}); 3.综合示例 下面通过一个与 Toolbar和 NavigationView 结合的示例,来介绍 DrawerLayout。...= null) { //显示导航按钮 actionBar.setDisplayHomeAsUpEnabled(true); //设置导航按钮图片...actionBar.setHomeAsUpIndicator(R.mipmap.ic_menu_top); } //设置Toolbar的导航按钮监听事件

    61230
    领券