网页布局实训心得体会搜索引擎优化关键词的处理

pingmian/2026/1/26 12:42:38/文章来源:
网页布局实训心得体会,搜索引擎优化关键词的处理,用网站免费模板做网站要会什么,建设网站比较好的公司在多Activity开发中#xff0c;有可能是自己应用之间的Activity跳转#xff0c;或者夹带其他应用的可复用Activity。可能会希望跳转到原来某个Activity实例#xff0c;而不是产生大量重复的Activity。 这需要为Activity配置特定的加载模式#xff0c;而不是使用默认的加载模…在多Activity开发中有可能是自己应用之间的Activity跳转或者夹带其他应用的可复用Activity。可能会希望跳转到原来某个Activity实例而不是产生大量重复的Activity。 这需要为Activity配置特定的加载模式而不是使用默认的加载模式。 加载模式分类及在哪里配置 Activity有四种加载模式 standard singleTop singleTask singleInstance设置的位置在AndroidManifest.xml文件中activity元素的android:launchMode属性 activity android:nameActBandroid:launchModesingleTask/activity 也可以在Eclipse ADT中图形界面中编辑 区分Activity的加载模式通过示例一目了然。这里编写了一个Activity AActA和Activity BActB循环跳转的例子。对加载模式修改和代码做稍微改动就可以说明四种模式的区别。 standard 首先说standard模式也就是默认模式不需要配置launchMode。先只写一个名为ActA的Activity package com.easymorse.activities; import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.LinearLayout;import android.widget.TextView; public class ActA extends Activity {    /** Called when the activity is first created. */    Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        TextView textView new TextView(this);        textView.setText(this );        Button button new Button(this);        button.setText(go actA);        button.setOnClickListener(new OnClickListener() {            Override            public void onClick(View v) {                Intent intent new Intent();                intent.setClass(ActA.this, ActA.class);                startActivity(intent);            }        });        LinearLayout layout new LinearLayout(this);        layout.setOrientation(LinearLayout.VERTICAL);        layout.addView(textView);        layout.addView(button);        this.setContentView(layout);    }} 例子中都没有用layout免得看着罗嗦。可见是ActA – ActA的例子。在界面中打印出对象的toString值可以根据hash code识别是否创建新ActA实例。 第一个界面 点击按钮后 可以多点几次。发现每次都创建了该Activity的新实例。standard的加载模式就是这样的intent将发送给新的实例。 现在点Android设备的回退键可以看到是按照刚才创建Activity实例的倒序依次出现类似退栈的操作而刚才操作跳转按钮的过程是压栈的操作。如下图 singleTop singleTop和standard模式都会将intent发送新的实例后两种模式不发送到新的实例如果已经有了的话。不过singleTop要求如果创建intent的时候栈顶已经有要创建的Activity的实例则将intent发送给该实例而不发送给新的实例。 还是用刚才的示例只需将launchMode改为singleTop就能看到区别。 运行的时候会发现按多少遍按钮都是相同的ActiA实例因为该实例在栈顶因此不会创建新的实例。如果回退将退出应用。 singleTop模式可用来解决栈顶多个重复相同的Activity的问题。 如果是A Activity跳转到B Activity再跳转到A Activity行为就和standard一样了会在B Activity跳转到A Activity的时候创建A Activity的新实例因为当时的栈顶不是A Activity实例。 ActA类稍作改动 package com.easymorse.activities; import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.LinearLayout;import android.widget.TextView; public class ActA extends Activity {    /** Called when the activity is first created. */    Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        TextView textView new TextView(this);        textView.setText(this );        Button button new Button(this);        button.setText(go actB);        button.setOnClickListener(new OnClickListener() {            Override            public void onClick(View v) {                Intent intent new Intent();                intent.setClass(ActA.this, ActB.class);                startActivity(intent);            }        });        LinearLayout layout new LinearLayout(this);        layout.setOrientation(LinearLayout.VERTICAL);        layout.addView(textView);        layout.addView(button);        this.setContentView(layout);    }} ActB类 package com.easymorse.activities; import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.LinearLayout; public class ActB extends Activity {    Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);         Button buttonnew Button(this);            button.setText(go actA);            button.setOnClickListener(new OnClickListener() {                Override                public void onClick(View v) {                    Intent intentnew Intent();                    intent.setClass(ActB.this, ActA.class);                    startActivity(intent);                }            });            LinearLayout layoutnew LinearLayout(this);            layout.addView(button);            this.setContentView(layout);    }} ActB类使用默认standard加载ActA使用singleTop加载。结果类似下图 如果把ActA的加载模式改为standard情况一样。 singleTask singleTask模式和后面的singleInstance模式都是只创建一个实例的。 当intent到来需要创建singleTask模式Activity的时候系统会检查栈里面是否已经有该Activity的实例。如果有直接将intent发送给它。 把上面singleTop的实例中的ActA的launchMode改为singleTaskActB的改为standard。那么会发现在ActA界面中按一次按钮 然后在ActB1界面中按按钮因为ActA是singleTask会使用原来的ActA1实例。这时候栈内的情况: 如果多次按按钮跳转会发现始终只有ActA1这一个ActA类的实例。 singleInstance 解释singleInstance模式比较麻烦。 首先要说一下Task任务的概念。 如果是Swing或者Windows程序可能有多个窗口可以切换但是你无法在自己程序中复用人家的窗口。注意是直接复用人家的二进制代码不是你拿到人家api后的源代码级调用。 Android可以做到让别人的程序直接复用你的Activity类似桌面程序的窗口。 Android为提供这种机制就引入了Task的概念。Task可以认为是一个栈可放入多个Activity。比如启动一个应用那么Android就创建了一个Task然后启动这个应用的入口Activity就是intent-filter中配置为main和launch的那个见一个APK文件部署产生多个应用安装的效果。这个Activity是根RootActivity可能会在它的界面调用其他Activity这些Activity如果按照上面那三个模式也会在这个栈Task中只是实例化的策略不同而已。 验证的办法是调用和打印Activity的taskId TextView textView2 new TextView(this);textView2.setText(task id: this.getTaskId()); 会发现无论切换ActivitytaskId是相同的。 当然也可以在这个单一的Task栈中放入别人的Activity比如google地图这样用户看过地图按回退键的时候会退栈回到调用地图的Activity。对用户来说并不觉得在操作多个应用。这就是Task的作用。 但是有这样的需求多个Task共享一个ActivitysingleTask是在一个task中共享一个Activity。 现成的例子是google地图。比如我有一个应用是导游方面的其中调用的google地图Activity。那么现在我比如按home键然后到应用列表中打开google地图你会发现显示的就是刚才的地图实际上是同一个Activity。 如果使用上面三种模式是无法实现这个需求的。google地图应用中有多个上下文Activity比如路线查询等的导游应用也有一些上下文Activity。在各自应用中回退要回退到各自的上下文Activity中。 singleInstance模式解决了这个问题绕了这么半天才说到正题。让这个模式下的Activity单独在一个task栈中。这个栈只有一个Activity。导游应用和google地图应用发送的intent都由这个Activity接收和展示。 这里又有两个问题 如果是这种情况多个task栈也可以看作一个应用。比如导游应用启动地图Activity实际上是在导游应用task栈之上singleInstance模式创建的如果还没有的话如果有就是直接显示它一个新栈当这个栈里面的唯一Activity地图Activity回退的时候只是把这个栈移开了这样就看到导游应用刚才的Activity了 多个应用Task共享一个Activity要求这些应用都没有退出比如刚才强调要用home键从导游应用切换到地图应用。因为如果退出导游应用而这时也地图应用并未运行的话那个单独的地图Activitytask也会退出了。如果还是拿刚才的ActA和ActB的示例可以把ActB的模式改为singleInstanceActA为standard如果按一次按钮切换到ActB看到现象用示意图类似这样 如果是第一次按钮切换到ActB在ActB在按按钮切换到ActA然后再回退示意图是 另外可以看到两个Activity的taskId是不同的。转载于:https://www.cnblogs.com/warioland/archive/2011/10/31/2229711.html

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

广州天河网站建设公司哪里做网站公司好

程序员的公众号:源1024,获取更多资料,无加密无套路! 最近整理了一份大厂面试资料《史上最全大厂面试题》,Springboot、微服务、算法、数据结构、Zookeeper、Mybatis、Dubbo、linux、Kafka、Elasticsearch、数据库等等 …

电子政务网站建设的挑战如何做企业文化方案

目录 前言安装版本Docker版本说明前提条件Linux安装使用YUM源部署获取阿里云开源镜像站YUM源文件安装Docker-ce配置Docker Daemon启动文件启动Docker服务并查看已安装版本 使用二进制文件部署 Windows安装实现原理安装步骤基本使用 参考说明 前言 本文主要说明Docker及其相关组…

建站费用明细网页设计图片透明度怎么设置

在Linux系统中,创建目录是日常操作中的基础之一。除了常规的 mkdir 命令,还有一些高级的操作技巧和命令可以提高效率。本博客将介绍一些常用的目录创建方法,以及如何结合不同命令实现更复杂的目录结构。 1. 使用 mkdir 命令 基本创建&#x…

公司门户网站制作需要多少钱网站为什么改版

基于java的SSM框架高校校园点餐订餐系统演示 摘要 21世纪的今天,随着社会的不断发展与进步,人们对于信息科学化的认识,已由低层次向高层次发展,由原来的感性认识向理性认识提高,管理工作的重要性已逐渐被人们所认识&a…

国外比较有名的设计工作室网站做网站汉狮网络

CXX-Qt 0.6 发布 CXX-Qt 是一组 Rust 包,用于创建与 Qt 的双向 Rust ⇄ C 绑定。它可用于使用 CMake 将 Rust 集成到 C 应用程序中,或使用 Cargo 构建 Rust 应用程序。 CXX-Qt 提供了用于在 Rust 中实现 QObject 子类的工具,可在 C、QML 和 J…

重庆网站建设seo公司果乐宝的网站建设

纠结蓝桥杯参加嵌入式还是单片机组? 单片机包含于嵌入式,嵌入式不只是单片机。. 你只有浅浅的的单片机基础,只能报单片机了。最近很多小伙伴找我,说想要一些单片机资料,然后我根据自己从业十年经验,熬夜搞了几个通宵…

网站建设综合实训ppt模板成都网站建设公司排名

🌈带头双向循环链表 描述:一个节点内包含两个指针,一个指向上一个节点,另一个指向下一个节点。哨兵位指向的下一个节点为头节点,哨兵位的上一个指向尾节点。 结构优势:高效率找尾节点;高效率插入…

泉州专业网站开发公司游戏行业seo整站优化

作者 | Gartner研究总监 李晶 供稿 | Gartner 随着中国企业数字化成熟度和渗透度的不断提升,基础设施和运营 (I&O) 团队和领导者所需要提供的数字基础设施的位置也在逐渐增加,从云端、数据中⼼,延伸到了⽹络边缘,并且每个位置…

网站管理系统下载网站10月份可以做哪些有意思的专题

内存表与临时表区别 临时表,一般是人手动创建。 内存表,是mysql自动创建和销毁的。 内存表,指的是使用Memory引擎的表,建表语法:create table ... engine memeory 表的数据存在内存里,系统重启后会被清…

网站建设 产品拍照做网站公司官网

API:开发者可以通过这些接口与其它程序进行交互,获取所需数据或者执行指定操作。 网络请求 API: UniApp 中内置了网络请求 API,方便调用 uni.request uni.uploadFile uni.request 接口主要用于实现网络请求。GET 和 POST 是使用最普遍的两种…

云南企业建站求个网站带图片素材

java_web_电商项目 1.登录界面2.注册界面3. 主界面4.分页界面5.商品详情界面6. 购物车界面7.确认订单界面8.个人中心界面9.收货地址界面10.用户信息界面11.用户余额充值界面12.后台首页13.后台商品增加14.后台用户增加15.用户管理16.源码分享1.登录页面的源码2.我们的主界面 1.…

天津网络建站模板宝安网站建设 名匠

Kafka作为分布式流处理平台的重要组成部分,其消息保证机制是保障数据可靠性、一致性和顺序性的核心。在本文中,将深入探讨Kafka的消息保证机制,并通过丰富的示例代码展示其在实际应用中的强大功能。 生产者端消息保证 1 At Most Once &quo…

网站开发框架具体是什么湖南优化电商服务有限公司

概述今天主要介绍一下PG一个很重要的模块--pg_stat_statements模块,对于做性能观察还是很不错的。一、pg_state_statements模块简介1、简介pg_stat_statements模块提供一种方法追踪一个服务器所执行的所有 SQL 语句的执行统计信息,可以用于统计数据库的资…

网站推广手段有哪些网页设计心得体会600

问题 在设计模式中,有一个很经典的模式-单例模式,它可能是实现上最简单的模式,在代码中也经常使用,在单线程下,毫无疑问延迟化加载是比较常用的,但是在多线程条件下,单例模式的延迟加载可能就会…

做好市场定位的方法沧州seo推广

这个方法你尝试过没首先你要确保有这个文件:复制代码代码如下:/sys/class/backlight/acpi_video0/brightnesscat出来的值就是你当前的屏幕亮度.我们修改下面的文件加入一些用户启动设置:复制代码代码如下:sudo gedit /etc/rc.local在 exit 0 的上方加入以下代码(确保exit 0没有…

网站建设288企业网站建设应注意什么

如上图&#xff0c;编辑回显正常&#xff0c;但是时间控件在拖动过程中时间不会跟随改变。 解决办法&#xff1a; <el-date-picker input"onInput()" ...><el-input input"onInput()" ...>js中onInput() {this.$forceUpdate();},

神木自适应网站开发自己弄个网站怎么赚钱

作者 | Gilson Melo译者 | 天道酬勤 责编 | 徐威龙封图| CSDN下载于视觉中国随着微服务的出现&#xff0c;人们通常会问&#xff1a;“是否有可能通过Kubernetes上的微服务在基于内核的虚拟机&#xff08;KVM&#xff09;或VMware 中运行我的旧虚拟机&#xff0c;还是需要将它们…

宁波网站制作首荐荣盛网络好扬中信息网

参考文章&#xff1a;趣解 XSS和CSRF的原理 推荐网站&#xff1a;古黑论 感谢作者分享&#xff01;

如何用服务器做网站北京网站seo推广

下载链接 https://pan.baidu.com/s/11sTpMUbQEXhyjpkBlixcLg?pwd0531 #2024版 1.鼠标右击【Ai2024(64bit)】压缩包&#xff08;win11及以上系统需先点击“显示更多选项”&#xff09;【解压到 Ai2024(64bit)】。 2.打开解压后的文件夹&#xff0c;鼠标右击【Setup】选择【以…

哪里有做网站系统的做介绍翻译英文网站

查看安装jdk版本信息,主要是怕之前有遗漏的,或者安装失败的java rpm -qa | grep java 显示如下信息: 卸载: rpm -e --nodeps java-1.7.0-openjdk-1.7.0.261-2.6.22.2.el7_8.x86_64 rpm -e --nodeps java-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64 还有一些其他的命令…