启动Activity但不显示其界面
最近在工作中做了一个很简单的任务,制作一个apk,点击该app链接到某一个网站。
代码很简单,只有如寥寥几行:
(browser.java) package com.test.browser; import android.app.Activity; import android.content.Intent; import android.net.Uri; import android.os.Bundle; public class TestActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Intent intent= new Intent(); intent.setAction("android.intent.action.VIEW"); Uri content_url = Uri.parse("http://www.baidu.com"); intent.setData(content_url); startActivity(intent); finish(); } } (AndroidManifest.xml): <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.vf.AIRIS" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="10" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <activity android:name=".AIRISActivity" android:label="@string/app_name" android:theme="@android:style/Theme.NoDisplay" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
很轻松的完成了这个app,运行很正常。但在启动的时候发现一个问题,屏幕闪烁一下之后才跳转到浏览器界面,如下图:
由于启动浏览器打开网站通过TestActivity这个activity启动的,因此当打开这个app时会首先进入TestActivity,尽管没有为其设置布局,但也会显示一个空白界面,所以会出现上述屏幕闪烁一下的现象。
怎样避免这个现象,能使打开app时绕开testActivity的空白显示直接进入网站?
在activity标签下可以配置名字叫做theme的属性,该属性可以配置各种各样的显示样式,其中一个属性值是Theme_NoDisplay,简单
来说,配置为该属性值可以不显示任何东西,仅仅是运行该activity。因此在配置文件AndroidManifest.xml中的activity标
签下添加如下一句:
android:theme="@android:style/Theme.NoDisplay"
就解决了屏幕闪烁的问题。
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步