我正在编写一个应用程序,但遇到了一个问题。我有三个 Activity A、B 和 C。当我从 Activity A 转到 B 和 B 到 C 时,如果我按下设备上的菜单按钮。我的应用程序进入后台状态.当我重新打开应用程序时它显示 Activity C。我希望当我重新打开我的应用程序时它应该显示 Activity A 而不是 Activity 堆栈中的任何其他 Activity 。 我已经完成了一些 Activity 生命周期方法并尝试覆盖它。我已经覆盖了 onStart() 、 onPause() 方法和 finsh Activity C 以及 Activity B,我面临的问题是当我从 Activity C 转到 Activity D Activity 时C 完成所有后台 Activity n m 无法在 Activity D 完成时返回 Activity C。 任何人都可以帮助我如何在申请简历上显示具体 Activity ? 提前致谢。
这是我的 manifest.xml
<uses-sdk android:minSdkVersion="4" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<application
android:icon="@drawable/icon"
android:label="@string/app_name"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" >
<activity
android:label="@string/app_name"
android:name="com.buttonpay.Login"
android:screenOrientation="portrait"
android:clearTaskOnLaunch="true" >
<intent-filter >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".ButtonPayActivity"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
android:screenOrientation="portrait"/>
<!-- HomeTab Activity -->
<activity android:name="com.buttonpay.home.Utilities"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
android:screenOrientation="portrait"/>
<activity android:name="com.buttonpay.home.Top_up"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
android:screenOrientation="portrait"/>
<activity android:name="com.buttonpay.home.HomeScreen"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
android:screenOrientation="portrait"/>
<activity android:name="com.buttonpay.home.MyAccount"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
android:screenOrientation="portrait"/>
<activity android:name="com.buttonpay.home.TransactionHistory"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
android:screenOrientation="portrait"/>
<activity android:name="com.buttonpay.home.TransactionDetailsActivity"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
android:screenOrientation="portrait"/>
<activity android:name="com.buttonpay.home.TransactionList"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
android:screenOrientation="portrait"/>
<activity android:name="com.buttonpay.home.BusinessSummaryActivity"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
android:screenOrientation="portrait"/>
<activity android:name=".home.MobileMoneyActivity"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
android:screenOrientation="portrait"/>
<!-- balance tab Activity -->
<activity android:name="com.buttonpay.balance.BalanceTab"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
/>
<!-- Favouritetab Activity -->
<activity android:name="com.buttonpay.favourite.FavouriteTab"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
/>
<!-- ComingSoon -->
<activity android:name="com.buttonpay.home.ComingSoon"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
android:screenOrientation="portrait"/>
<!-- Settings -->
<activity android:name="com.buttonpay.settings.SettingList"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
android:screenOrientation="portrait"/>
</application>
最佳答案
在 list 中,在您的根 Activity (即在您的应用程序中启动的第一个 Activity ,具有 ACTION_MAIN 和 CATEGORY_LAUNCHER 的 Activity )上进行设置:
android:clearTaskOnLaunch="true"
您无需执行任何其他操作。不覆盖生命周期方法。
EDIT 在一些实证实验后添加额外的信息:
您需要确保您的根 Activity 始终在任务的 Activity 堆栈中才能使这项工作正常进行。这意味着您不能在 根 Activity 上调用 finish() 直到用户真正想要退出您的应用程序(即:当他在您的应用程序中按下 BACK 键时根 Activity )。
在您的示例中,您有一个 LoginActivity、MenuActivity 和 DescriptionActivity,而 LoginActivity 是根 Activity 。当 LoginActivity 启动 MenuActivity 时,它无法自行调用 finish()。在这种情况下,当用户在 MenuActivity 中按下 BACK 键时,它将返回到 LoginActivity。如果这不是您想要的,那么您需要在您已经启动 MenuActivity 的 LoginActivity 中设置一个标志,当 onResume() 被调用时,您可以检查该标志以确定您是否从 MenuActivity 返回,在这种情况下,您可以立即调用 finish()。
关于android - 当谈到前景时杀死 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12072255/
最近因为项目需要,需要将Android手机系统自带的某个系统软件反编译并更改里面某个资源,并重新打包,签名生成新的自定义的apk,下面我来介绍一下我的实现过程。APK修改,分为以下几步:反编译解包,修改,重打包,修改签名等步骤。安卓apk修改准备工作1.系统配置好JavaJDK环境变量2.需要root权限的手机(针对系统自带apk,其他软件免root)3.Auto-Sign签名工具4.apktool工具安卓apk修改开始反编译本文拿Android系统里面的Settings.apk做demo,具体如何将apk获取出来在此就不过多介绍了,直接进入主题:按键win+R输入cmd,打开命令窗口,并将路
我正在使用命令行程序,它的工作原理如下:$ROUTE_TO_FOLDER/app如果“longtext”是使用“app”需要的参数编写的,那么它将用结果填充一个文本文件。如果没有,它将连续用点填充文本文件(为了避免这种情况,我无法处理或修改“app”的代码)。在ruby脚本中有这样一行:text="longtextthatwillbeusedbyapp"output=system("ROUTE_TO_FOLDER/app现在,如果文本写得好,就不会有问题,我会得到一个输出文件,如前所述。当文本写得不好时,问题就来了。接下来发生的是我的ruby脚本挂起,我不确定如何终止它。我找到
这是两个脚本的故事,与previousquestion有关.这两个脚本位于http://gist.github.com/50692.ansi.rb脚本在所有256种背景颜色上显示所有256种颜色。ncurses.rb脚本显示所有256种前景颜色,但背景显示基本的16种颜色,然后似乎循环显示各种属性,如闪烁和反向视频。那么是什么给了?这是ncurses中的错误,它使用带符号的整数来表示颜色对吗?(即'tputcolors'表示256但'tputpairs'表示32767而不是65536)似乎如果是这种情况,颜色对的前半部分会正确显示但后半部分会重复或进入属性作为int包裹。
我有这段代码:puts"Start"loopdoThread.startdoputs"Hellofromthread"exitendtext=getsputs"#{text}"endputs"Done"我希望看到“Start”后跟“Hellofromthread”,然后我可以输入会得到回显的输入。相反,我得到“Start”和“Hellofromthread”,然后程序退出。来自关于exit的文档:Terminatesthrandschedulesanotherthreadtoberun.Ifthisthreadisalreadymarkedtobekilled,exitreturnst
运行有问题或需要源码请点赞关注收藏后评论区留言一、利用ContentResolver读写联系人在实际开发中,普通App很少会开放数据接口给其他应用访问。内容组件能够派上用场的情况往往是App想要访问系统应用的通讯数据,比如查看联系人,短信,通话记录等等,以及对这些通讯数据及逆行增删改查。首先要给AndroidMaifest.xml中添加响应的权限配置 下面是往手机通讯录添加联系人信息的例子效果如下分成三个步骤先查出联系人的基本信息,然后查询联系人号码,再查询联系人邮箱代码 ContactAddActivity类packagecom.example.chapter07;importandroid
1.前言 在10.0的系统rom定制化开发中,在系统中有多个launcher的时候,会在开机进入launcher的时候弹窗launcher列表,让用户选择进入哪个launcher,这样显得特别的不方便所以产品开发中,要求用RoleManager的相关api来设置默认Launcher,但是在设置完默认Launcher以后,在安装一款Launcher的时候,默认Launcher就会失效,在系统设置的默认应用中Launcher选项就为空,点击home键的时候会弹出默认Launcher列表,让选择进入哪个默认Launcher.所以需要从安装Launcher的流程来分析相关的设置。来解决问题设置默认La
对于启动应用程序,我使用Foreman。工头从Procfile开始流程web:bundleexecrailsserverthin-p$PORTworker:bundleexecrakeenvironmentresque:workQUEUE=send_mailapi:bundleexecrailsserverthin-p$PORT如果我在运行foreman的控制台中按control+C,则foreman结束但运行的进程未被终止。是否有可能在工头被杀死时杀死工头运行的进程。 最佳答案 下面的示例假设使用的端口是4567,然后执行:lso
Ai-Bot基于流行的Node.js和JavaScript语言的一款新自动化框架,支持Windows和Android自动化。1、Windowsxpath元素定位算法支持支持Windows应用、.NET、WPF、Qt、Java和Electron客户端程序和ie、edgechrome浏览器2、Android支持原生APP和H5界面,元素定位速度是appium十倍,无线远程自动化操作多台安卓设备3、基于opencv图色算法,支持找图和多点找色,1080*2340全分辨率找图50MS以内4、内置免费OCR人工智能技术,无限制获取图片文字和找字功能。5、框架协议开源,除官方node.jsSDK外,用户可
前一段时间由于工作需要把可爱的小雪狐舍弃了,找到了小蜜蜂。但是新版本的小蜜蜂出现了很多和旧版本不一样的位置。1.功能位置迁移,原来在工程build.gradle的buildscript和allprojects移动至setting.gradle并改名为pluginManagement和dependencyResolutionManagement。里面的东西依旧可以按照原来的copy过来。pluginManagement{repositories{gradlePluginPortal()google()mavenCentral()}}dependencyResolutionManagement{r
关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于StackOverflow来说是偏离主题的,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,describetheproblem以及迄今为止为解决该问题所做的工作。关闭9年前。Improvethisquestion我几乎用完了Ruby,但现在想试试Ruboto,android上的ruby。谷歌未能给我足够的(几乎没有结果)。所以任何人都可以分享一些关于Ruboto的教程。