9.鸿蒙app用户界面的跳转abilityslice的跳转

9.用户界面的跳转abilityslice的跳转,值传递,数值累加

首页页面显示1,第2页显示2,再次点击返回首页3。。。

MainAbilitySlice.java

关键代码:

点击事件

 text.setClickedListener(new Component.ClickedListener() {
            @Override
            public void onClick(Component component) {
               // present(new SecondAbilitySlice(),new Intent());
                Intent _intent = new Intent();
                _intent.setParam("count",count);
                presentForResult(new SecondAbilitySlice(),_intent,0x00101);
            }
        });
    }
    @Override
    protected void onResult(int requestCode,Intent resultIntent)
    {
        if(requestCode == 0x00101)
        {
            count=resultIntent.getIntParam("count",1);
            text.setText("t1:" + ++count);
        }
    }

MainAbilitySlice.java

package com.example.myapplication.slice;

import com.example.myapplication.ResourceTable;
import com.example.myapplication.slice.slice.SecondAbilitySlice;
import ohos.aafwk.ability.AbilitySlice;
import ohos.aafwk.content.Intent;
import ohos.agp.colors.RgbColor;
import ohos.agp.components.Component;
import ohos.agp.components.ComponentContainer;
import ohos.agp.components.DirectionalLayout;
import ohos.agp.components.Text;
import ohos.agp.components.element.ShapeElement;
import ohos.agp.utils.TextAlignment;

public class MainAbilitySlice extends AbilitySlice {

    private  Text text;
    private int count =1;
    @Override
    public void onStart(Intent intent) {
        super.onStart(intent);
       // super.setUIContent(ResourceTable.Layout_ability_main);
        ComponentContainer.LayoutConfig config = new ComponentContainer.LayoutConfig(
                ComponentContainer.LayoutConfig.MATCH_PARENT,
                ComponentContainer.LayoutConfig.MATCH_PARENT);
        DirectionalLayout layout= new DirectionalLayout(this);
        ShapeElement element = new ShapeElement();
        element.setRgbColor(new RgbColor(255,255,255));//白色
        layout.setBackground(element);
        layout.setLayoutConfig(config);
        //
       // Text text = new Text(this);
        text = new Text(this);
        text.setLayoutConfig(config);
        text.setTextAlignment(TextAlignment.CENTER);
        //text.setText("MainAbilitySlice");
        text.setText("t1:"+count);
        text.setTextSize(100);
        layout.addComponent(text);
        super.setUIContent(layout);
        text.setClickedListener(new Component.ClickedListener() {
            @Override
            public void onClick(Component component) {
               // present(new SecondAbilitySlice(),new Intent());
                Intent _intent = new Intent();
                _intent.setParam("count",count);
                presentForResult(new SecondAbilitySlice(),_intent,0x00101);
            }
        });
    }
    @Override
    protected void onResult(int requestCode,Intent resultIntent)
    {
        if(requestCode == 0x00101)
        {
            count=resultIntent.getIntParam("count",1);
            text.setText("t1:" + ++count);
        }
    }

    @Override
    public void onActive() {
        super.onActive();
    }

    @Override
    public void onForeground(Intent intent) {
        super.onForeground(intent);
    }
}

关键代码2:

点击事件

SecondAbilitySlice.java

 text.setClickedListener(new Component.ClickedListener() {
            @Override
            public void onClick(Component component) {
                //present(new MainAbilitySlice(),new Intent());
                Intent resultintent = new Intent();
                resultintent.setParam("count",count);
                setResult(resultintent);
                terminate();
            }
        });

SecondAbilitySlice.java

package com.example.myapplication.slice.slice;

import com.example.myapplication.ResourceTable;
import com.example.myapplication.slice.MainAbilitySlice;
import ohos.aafwk.ability.AbilitySlice;
import ohos.aafwk.content.Intent;
import ohos.agp.colors.RgbColor;
import ohos.agp.components.Component;
import ohos.agp.components.ComponentContainer;
import ohos.agp.components.DirectionalLayout;
import ohos.agp.components.Text;
import ohos.agp.components.element.ShapeElement;
import ohos.agp.utils.TextAlignment;

public class SecondAbilitySlice extends AbilitySlice {
    private  Text text;
    private  Text text2;
    private int count;
    @Override
    public void onStart(Intent intent) {
        super.onStart(intent);
        count =intent.getIntParam("count",1);
        count++;
       // super.setUIContent(ResourceTable.Layout_ability_main1);
        ComponentContainer.LayoutConfig config = new ComponentContainer.LayoutConfig(
                ComponentContainer.LayoutConfig.MATCH_PARENT,
                ComponentContainer.LayoutConfig.MATCH_CONTENT);
        DirectionalLayout layout= new DirectionalLayout(this);
        DirectionalLayout layout2= new DirectionalLayout(this);
        ShapeElement element = new ShapeElement();
        element.setRgbColor(new RgbColor(100,100,255));//浅蓝色
        layout.setBackground(element);
        layout.setLayoutConfig(config);

       // element.setRgbColor(new RgbColor(100,255,255));//
       // layout2.setBackground(element);

        //
         text = new Text(this);
         text2 = new Text(this);
        text.setLayoutConfig(config);
        text.setTextAlignment(TextAlignment.CENTER);
        text2.setLayoutConfig(config);
        text2.setTextAlignment(TextAlignment.CENTER);

       // text.setText("SecondAbilitySlice");
        text.setText(""+count);
        text2.setText("t2:"+count);
        text.setTextSize(100);
        text2.setTextSize(100);
        layout.addComponent(text);
        layout.addComponent(text2);
        super.setUIContent(layout);
      //  super.setUIContent(layout2);
        text.setClickedListener(new Component.ClickedListener() {
            @Override
            public void onClick(Component component) {
                //present(new MainAbilitySlice(),new Intent());
                Intent resultintent = new Intent();
                resultintent.setParam("count",count);
                setResult(resultintent);
                terminate();
            }
        });
    }

    @Override
    public void onActive() {
        super.onActive();
    }

    @Override
    public void onForeground(Intent intent) {
        super.onForeground(intent);
    }
}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/256459.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

芯片高科技制造业如何实现高效且安全的文件数据传输

随着工业4.0的快速发展,制造行业作为一个长产业链且高度集中复杂的领域,数据与信息传输管理变得尤为重要,成为提高生产效率的关键因素。从研发、设计、采购、生产、库存、销售到售后等各个环节,整个业务流程都需要高效传递信息&am…

五年一贯专转本这么管用的记忆法你用了吗?

在枯燥无聊的学习当中,能有好的学习记忆方式就能事半功倍,但是怎样的学习记忆方式才适合我们呢?那我今天就给大家介绍一下吧,如果觉得好用,可以试试,让我们在之后的转本考试当中能有个好成绩!zb…

Vue2 即将结束支持!!!

Vue2 Vue 2.0 发布于 2016 年,已经有超过 7 年的历史,它是 Vue 框架成为主流的重要里程碑。许多当前的 Vue 用户都是在 Vue 2 时期就开始使用 Vue 的,并且有许多出色的项目是基于 Vue 2 构建的。 Vue2将弃用 随着 2024 年的临近&#xff0…

【DOM笔记二】操作元素(修改元素内容,修改常见元素/表单元素/元素样式属性,排他思想,自定义属性操作,应用案例!)

文章目录 4 操作元素4.1 修改元素的内容4.2 修改常见元素的属性案例:分时问候 4.3 修改表单元素属性案例:登录时隐藏/显示密码 4.4 修改元素样式属性4.4.1 行内样式操作 element.style案例1:关闭二维码广告案例2:遍历精灵图案例3&…

php自定义请求工具(请求频次+动态参数)

在项目开发中,前后端进行接口对接时,一定离不开接口测试。所以这个时候就很需要一些第三方api接口测试工具了。比如postman,apifox之类的。lz有事闲暇之余也会做点小项目,不可避免的会用到测试接口工具之类的。在进行测试时突发奇…

JS加密/解密之JSX解密解析(photoshop插件)

简介 Adobe Photoshop 插件通常使用 JSX(JavaScript XML)脚本语言。这是一种基于JavaScript的扩展,专门设计用于处理Adobe Creative Suite(包括Photoshop)的任务。JSX脚本允许开发者编写自定义脚本以扩展和增强Photos…

VueStu02-创建一个Vue实例

一、核心步骤 1.准备容器 准备一个盒子div。 2.引包 从官网引包,有开发版本和生产版本之分。 3.创建Vue实例 创建一个Vue实例,new Vue()。 4.指定配置项 指定配置项,用于渲染数据 。 el:指定挂载点。知道自己将来要管理的是…

springboot解决XSS存储型漏洞

springboot解决XSS存储型漏洞 XSS攻击 XSS 攻击:跨站脚本攻击(Cross Site Scripting),为不和 前端层叠样式表(Cascading Style Sheets)CSS 混淆,故将跨站脚本攻击缩写为 XSS。 XSS(跨站脚本攻击):是指恶意攻击者往 Web 页面里插…

科研成果 | 数说故事联合中大HCP实验室共创「大模型」领域论文,获国际AI学术顶会AAAI收录

日前,中国计算机学会(CCF)推荐的A类国际学术会议AAAI人工智能大会 2024论文接收结果公布。中山大学HCP实验室和数说故事研究员合著的论文《Adaptive Prompt Routing for Arbitrary Text Style Transfer with Pre-trained Language Models》成…

解决虚拟机报错:当前硬件版本不支持设备“nvme”。

报错内容如下图所示: 当前硬件版本不支持设备“nvme”。 未能启动虚拟机。 我们首先在帮助里面查看VMware的版本 我这里是16 打开报错的虚拟机文件夹,找到镜像文件(.vmx文件) 使用记事本(文本编辑器)打开…

metabase filter

What’s this for? Variables in native queries let you dynamically replace values in your queries using filter widgets or through the URL. 本机查询中的变量允许您使用过滤器小部件或通过 URL 动态替换查询中的值。 Variables {{variable_name}} creates a variable…

详细教程 - 进阶版 鸿蒙harmonyOS应用 第十一节——鸿蒙操作系统中的音频播放封装

简介 音频播放是开发鸿蒙应用时的一个重要功能。在这篇文章中,我们将详细探讨如何在鸿蒙系统中实现音频播放的封装,并提供一些代码示例。 一、JAVA版音频播放的实现 在鸿蒙操作系统中,我们可以使用ohos.media.player.Player类来实现音频播放…

linux:掌握systemctl命令控制软件的启动和关闭、掌握使用ln命令创建软连接

掌握使用systemctl命令控制软件的启动和关闭 一:systemctl命令: Linux系统很多软件(内置或第三方)均支持使用systemctl命令控制:启动停止、开机自启 能够被systemctl管理的软件一般也称之为:服务 语法: systemctl | start | stop | status | enable …

【Spring教程31】SSM框架整合实战:从零开始学习SSM整合配置,如何编写Mybatis SpringMVC JDBC Spring配置类

目录 1 流程分析2 整合配置2.1 步骤1:创建Maven的web项目2.2 步骤2:添加依赖2.3 步骤3:创建项目包结构2.4 步骤4:创建SpringConfig配置类2.5 步骤5:创建JdbcConfig配置类2.6 步骤6:创建MybatisConfig配置类2.7 步骤7:创建jdbc.properties2.8 步骤8:创建SpringMVC配置…

漏电保护芯片是什么?具有什么作用?

漏电保护芯片是一种用于监测电气设备是否存在漏电并提供保护的微型芯片。漏电是电气设备中普遍存在的一种安全隐患,当设备发生漏电时,电流会流回地线,并可能导致电击、火灾等严重后果。因此,漏电保护芯片的使用对于保障人身财产安全具有非常重要的意义。下面就是我们几款漏电保…

Python操作Word

Python操作Word 一、Word简介二、向Word写入内容2.1 导入模块2.2 创建doc文档对象2.3 添加段落2.4 添加列表2.5 添加图片2.6 保存文件 三、读取Word内容四、批量生成Word文件 一、Word简介 ​ 在日常工作中,有很多简单重复的劳动其实完全可以交给Python程序&#x…

基于javaweb实现的家教系统

一、系统架构 前端:jsp | js | css | jquery 后端:spring | springmvc | spring-orm 环境:jdk1.7 | mysql 二、代码及数据库 三、功能介绍 01. 管理后台-首页 02. 管理后台-用户信息管理 03. 管理后台-订单信息管理 04. 管理后台-辅…

在Java中高效使用Lambda表达式和流(Streams)的技巧

Java中如何高效使用Lambda表达式和流(Streams)的技巧 1. 简介 在Java中,Lambda表达式和流(Streams)是Java 8引入的两个强大的特性。Lambda表达式为Java添加了一种简洁的方式来实现函数式编程,而流提供了一…

强大的剪切板管理 Paste中文 for Mac

Paste是一款剪切板管理工具,它可用于Mac和iOS设备。Paste的主要功能是帮助用户管理剪切板中的复制和剪切的内容,使其更方便地访问、组织和重用。 以下是Paste剪切板管理工具的主要特点和功能: 剪切板历史记录:Paste会自动记录您复…

从头开始实现LoRA以及一些实用技巧

LoRA是Low-Rank Adaptation或Low-Rank Adaptors的缩写,它提供了一种用于对预先存在的语言模型进行微调的高效且轻量级的方法。 LoRA的主要优点之一是它的效率。通过使用更少的参数,lora显著降低了计算复杂度和内存使用。这使我们能够在消费级gpu上训练大…
最新文章