当前位置:   article > 正文

40.HarmonyOS鸿蒙系统 App(ArkUI)实现页面跳转与返回_鸿蒙系统arkts 怎么返回上一个页面

鸿蒙系统arkts 怎么返回上一个页面

 

1.新建项目,默认创建inext.ets界面。

 2.右键page添加第二个页面,设置page2,点击finish

 

 设置按钮触发事件

 page2.ets按钮触发事件

index.ets

  1. import FaultLogger from '@ohos.faultLogger'
  2. import promt2 from '@ohos.prompt'
  3. import promt_action from '@ohos.promptAction'
  4. import router from '@ohos.router';
  5. @Entry
  6. @Component
  7. struct Index {
  8. private arr_value:string[] = ['AP1','AP2','AP3','AP4','AP5','AP6','AP7','AP8'];
  9. @State message: string = '调试'
  10. @State message2: string = '测试'
  11. @State message3: string = 'demo by txwtech'
  12. @State handlePopup2:boolean = false
  13. //堆叠布局示范,堆叠布局放两个弹性布局
  14. build() {
  15. // Stack({}){
  16. // Column(){}.width('80%').height('70%').backgroundColor(Color.Blue)//线性布局在底层
  17. // Text('堆叠布局').width('99%').height(100).margin({top:5}).backgroundColor(Color.Yellow) //text在中层
  18. // Button('按钮').width('80%').height(100).margin({top:50})//按钮在最上层
  19. // }
  20. //线性布局结合弹性布局
  21. //使用弹性布局,可以实现子组件沿水平方向排列,两端对齐,子组件间距平分,竖直方向上子组件居中的效果
  22. Column(){
  23. Column({space:5}){
  24. Text('').height(30)
  25. Text('页面跳转demo').backgroundColor(Color.Green).fontColor(Color.White).fontSize(30).width('100%').textAlign(TextAlign.Center)
  26. Text('').height(30)
  27. Flex({direction:FlexDirection.Row,wrap:FlexWrap.NoWrap,justifyContent:FlexAlign.SpaceBetween,alignItems:ItemAlign.Center}){
  28. Text('文本1').width('30%').height(50).backgroundColor(Color.Blue).fontColor(Color.White)
  29. Text('文本2').width('30%').height(50).backgroundColor(Color.Blue).fontColor(Color.White)
  30. Text('文本3').width('30%').height(50).backgroundColor(Color.Blue).fontColor(Color.White)
  31. }
  32. Flex({direction:FlexDirection.Row,wrap:FlexWrap.NoWrap,justifyContent:FlexAlign.SpaceBetween,alignItems:ItemAlign.Center}){
  33. Text('文本4').width('30%').height(50).backgroundColor(Color.Blue).fontColor(Color.White)
  34. Text('文本5').width('30%').height(50).backgroundColor(Color.Blue).fontColor(Color.White)
  35. Text('文本6').width('30%').height(50).backgroundColor(Color.Blue).fontColor(Color.White)
  36. }
  37. Flex({direction:FlexDirection.Row,wrap:FlexWrap.NoWrap,justifyContent:FlexAlign.SpaceBetween,alignItems:ItemAlign.Center}){
  38. Text('文本7').width('30%').height(50).backgroundColor(Color.Blue).fontColor(Color.White)
  39. Text('文本8').width('30%').height(50).backgroundColor(Color.Blue).fontColor(Color.White)
  40. Text('文本9').width('30%').height(50).backgroundColor(Color.Blue).fontColor(Color.White)
  41. }
  42. Text('').height(30)
  43. Flex({direction:FlexDirection.Row,wrap:FlexWrap.NoWrap,justifyContent:FlexAlign.SpaceBetween,alignItems:ItemAlign.Center}){
  44. Button('按钮1').width('30%').height(50).backgroundColor(Color.Blue).fontColor(Color.White)
  45. Button('按钮2').width('30%').height(50).backgroundColor(Color.Blue).fontColor(Color.White)
  46. Button('按钮3').width('30%').height(50).backgroundColor(Color.Blue).fontColor(Color.White)
  47. }
  48. Flex({direction:FlexDirection.Row,wrap:FlexWrap.NoWrap,justifyContent:FlexAlign.SpaceBetween,alignItems:ItemAlign.Center}){
  49. Button('按钮4').width('30%').height(50).backgroundColor(Color.Blue).fontColor(Color.White)
  50. Button('按钮5').width('30%').height(50).backgroundColor(Color.Blue).fontColor(Color.White)
  51. Button('按钮6').width('30%').height(50).backgroundColor(Color.Blue).fontColor(Color.White)
  52. }
  53. Button('下一页').width('100%')
  54. .height(80)
  55. .fontSize(50)
  56. .fontColor(Color.White)
  57. .onClick(()=>{
  58. router.pushUrl({url:'pages/Page2'}).then(()=>{
  59. console.info('login to next page')
  60. }).catch((err)=>{
  61. console.info('catched error is ${err.code}, message is ${err.message}' )
  62. })
  63. })
  64. .stateStyles({
  65. pressed:{.backgroundColor(Color.Green)}, //按下背景颜色改变
  66. normal:{.backgroundColor(Color.Blue)}
  67. })
  68. }
  69. }
  70. }
  71. }

page2.ets

  1. import router from '@ohos.router'
  2. @Entry
  3. @Component
  4. struct Page2 {
  5. @State message: string = 'Hello World'
  6. build() {
  7. Row() {
  8. Column() {
  9. Text('这是第二页')
  10. .backgroundColor(Color.Blue)
  11. .fontColor(Color.White)
  12. .fontSize(50)
  13. Text(this.message)
  14. .fontSize(50)
  15. .fontWeight(FontWeight.Bold)
  16. Button('返回').onClick(()=>{
  17. try {
  18. router.back()
  19. console.info('return is ok')
  20. } catch (err){
  21. console.info('this is err',err.message)
  22. }
  23. })
  24. .width('100%')
  25. .fontSize(50)
  26. }
  27. .width('100%')
  28. }
  29. .height('100%')
  30. }
  31. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/360336
推荐阅读
相关标签
  

闽ICP备14008679号