Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >您能否将NavHostController传递给可组合的子级以允许访问navController.navigate(“路由”)?

您能否将NavHostController传递给可组合的子级以允许访问navController.navigate(“路由”)?
EN

Stack Overflow用户
提问于 2020-11-25 12:42:07
回答 1查看 815关注 0票数 1

我是Jetpack撰写的新手,我很难理解如何将导航库与撰写相结合。我已经成功地实现了底层导航,但是现在还在努力访问子组件中的.navigate(“路由”)方法。我是否应该从可合成的navController中作为一个参数传递NavHost?这是我的代码,让事情更清楚。

下面是我的HomeScreen.kt @Composable,它调用rememberNavController()方法以及可组合的NavHost(),如下所示.

代码语言:javascript
运行
AI代码解释
复制
@Composable
fun HomeScreen() {
val navController = rememberNavController()
...
Scaffold(
   ...
) {
    NavHost(navController, startDestination = "route") {
        composable("route") { Settings(navController) }
  } 
}

在这里,您可以看到,我将navController作为param传递给可组合的设置。我不确定这是否正确。现在,如果可能的话,我希望最终从可组合的设置中访问navController.navigate("route")方法,类似于下面的内容。

代码语言:javascript
运行
AI代码解释
复制
@Composable
fun Settings(navController: NavHostController) {
   ...
   Button(onClick = {navController.navigate("route")}) {
        Text(text = "button text")
    }
   ...
}

不幸的是,我无法访问.navigate方法,因为它说“不能用提供的参数调用以下任何函数”。谢谢你的时间和帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-11-25 13:32:21

navigate("route")方法是一种扩展方法。因此,您必须显式导入它:

代码语言:javascript
运行
AI代码解释
复制
import androidx.navigation.compose.navigate
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65012419

复制
相关文章
compose--附带效应、传统项目集成、导航
该文章将是compose基础系列中最后一篇,附带效应是这篇文章的重点,其余补充内容为如何在传统xml中集成compose、compose导航的使用
aruba
2023/01/18
2.3K0
vue 访问二级路由时默认自动跳转指定的三级路由页面
在二级路由配置redirect:'/reconciliation/list',也就是增加个redirect的指向就可以了
李维亮
2021/07/08
2.1K0
Jetpack Compose之 在Compose中使用Navigation导航
大约在一年半前,我发布了Compose的第一篇文章 Jetpack Compose开篇 之 HelloWorld,连我自己也没想到,这一年半的时间中我竟再也没有看过Compose..., 如今Compose已经发布了稳定版本,还没学会Compose让我的头发又白了许多~
黄林晴
2022/05/10
2K0
Jetpack Compose之 在Compose中使用Navigation导航
Android 允许其他应用启动您的Activity
  看标题你可能不知道是什么意思,我说一个场景你大概就明白了,比如在微信中收到了好友发过来的一个名为xxx.apk的文件,这是一个应用apk,而微信中收到后就是,xxx.apk.1。你点击这个文件接受之后,微信是无法直接打开,这个时候会有一个其他应用打开的按钮,你点击这个按钮会出现一个弹窗,里面会列举出能够打开apk文件的应用。
晨曦_LLW
2022/06/13
1.5K0
Android 允许其他应用启动您的Activity
[ERROR] uvicorn /[WinError 10013]以一种访问权限不允许的方式做了一个访问套接字的尝试。
这是我在做机器人的时候遇到的问题,莫名其妙,意思就是端口被占用了,也不知道有啥好解决办法,我就直接换了一个端口。 原来我用的8888端口,我就随便改了一个8088,然后就可以用了/
川川菜鸟
2021/10/18
9330
Error: [WinError 10013] 以一种访问权限不允许的方式做了一个访问套接字的尝试。
System check identified no issues (0 silenced). September 26, 2020 – 19:23:29 Django version 3.1.1, using settings ‘ltlqa.settings’ Starting development server at http://127.0.0.1:8000/ Quit the server with CTRL-BREAK. Error: [WinError 10013] 以一种访问权限不允许的方式做了一个访问套接字的尝试。
kirin
2020/09/27
2.1K0
将多个属性传递给 Vue 组件的几种方式
所有使用基于组件的体系结构(如Vue和React)的开发人员都知道,创建可重用组件是很困难的,而且大多数情况下,最终会通过传入大量的属性,以便从外部更容易地控制和自定义组件。这并不坏,但是传递大量属性确实会变得有点麻烦和丑陋。
前端小智@大迁世界
2020/05/11
2K0
传音控股能否继续“称王”
截至2021年,传音手机占据非洲46.7%的市场份额,打得一度在非洲称霸的三星手机,只剩20.8%的份额。
用户8049510
2023/05/18
3810
PostgreSQL - 允许远程访问的设置方法
上边的第7行是新添加的内容,表示允许网段192.168.1.0上的所有主机使用所有合法的数据库用户名访问数据库,并提供加密的密码验证。
雨临Lewis
2022/01/11
7.5K0
Linux的mysql允许外接远程访问
Linux的mysql允许外接远程访问 登录到mysql中(可以使用root账号或者其他拥有权限分配的账号。) 设置 创建远程账号(账号为zhm、密码被identified设置为zhm123456) create user 'zhm'@'%' identified by 'zhm123456'; 授权 grant all on *.* to 'zhm'@'%' with grant option; 刷新权限(使得权限及时生效) flush privileges; 测试 现在就可以使用
青山师
2023/05/05
2.5K0
Nginx只允许域名访问禁止ip访问
我们的做法是新加一个80端口配置,记得把上面配置中80端口后面的default_server删掉,不然重新加载的时候会报错
素履coder
2022/02/17
14.5K0
Nginx只允许域名访问禁止ip访问
vue路由传参
sessionstorage/localstorage/cookie 进行离线缓存存储也可以,用vuex也可以,不过有些大材小用吧,不管怎么说因场景而异
用户7043603
2022/02/24
1.4K0
如何将多个参数传递给 React 中的 onChange?
在 React 中,一些 HTML 元素,比如 input 和 textarea,具有 onChange 事件。onChange 事件是一个非常有用、非常常见的事件,用于捕获输入框中的文本变化。有时候,我们需要将多个参数同时传递给 onChange 事件处理函数,在本文中,我们将介绍如何实现这一目标。
网络技术联盟站
2023/06/07
3.2K0
Vue路由详解(路由基础,路由轮播,路由传参,通配符路由)
一. Vue路由基础知识点: 1.router-view: 类似angular里的插座,用于承载路由的切换组件 2.router-link: 类似angular里的routerLink,区别是:vue的router-link是一个组件,直接充当a标签使用.但是在最后渲染时,vue还是会将其渲染成a标签 3.routes: 数组,用来做路由信息的配置 4.router: 对象,通过该对象的方法实现路由的跳转,例如按钮点击实现跳转 5.route: 类似angular里的ActiveRoute,用来获取路由传参的值
生南星
2019/07/22
3.2K0
angularjs子组件向父组件传值_react子组件传值
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/10/03
1.9K0
设置服务器的MySQL允许远程访问/外网访问
我需要在C++中连接服务器上的MySQL数据库。但是直接连接失败了,原来服务器上还要修改一下MySQL的配置。
饶文津
2020/06/02
11.5K0
设置服务器的MySQL允许远程访问/外网访问
[028]子线程能否操作UI控件
前言 这是一个初级Android工程师面试问题,一般标准答案:子线程不能操作UI控件。 那我为什么还要问这个弱智的问题呢? 因为我心目中的标准答案:子线程不能操作"参与绘制"的UI控件。 一、什么是
王小二
2020/06/08
8020
MySQL8.0允许外部访问
按照https://blog.csdn.net/h996666/article/details/80917268安装完MySQL之后。
小陈运维
2021/10/13
3.4K0
设置PostgreSQL允许被远程访问
postgresql默认情况下,远程访问不能成功,如果需要允许远程访问,需要修改两个配置文件,说明如下: 1.postgresql.conf 将该文件中的listen_addresses项值设定为“”,在9.0 Windows版中,该项配置已经是“”无需修改。
botkenni
2021/10/13
3K0
Nginx限制IP访问只允许特定域名访问
为了我们的服务器安全,我们需要禁止直接使用 IP 访问我们的服务器,我们可以借助 [Nginx]完成 1、找到 nginx 的配置文件 cd /usr/local/nginx/conf/ 找到 nginx.conf 文件 编辑它 2、添加新的 server # 禁止ip访问 server { listen 80 default_server; listen 443 ssl default_server; server_name _; return 403; } 注意是
入门笔记
2022/06/03
9.8K0
Nginx限制IP访问只允许特定域名访问

相似问题

如何从嵌套可组合Jetpack中访问NavHostController

11

以角形式将数据从父级传递给特定的子级

11

EF代码首先访问子级的子级以设置ForeignKey

15

有办法将参数从NavHostController传递给ViewModel吗?

13

我能否以编程的方式将道具传递给react中的子组件?

411
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档