image.png SplashActivity 打开一个应用程序时,会有一个类似欢迎的界面,它叫SplashActivity。 一般在这个页面可以做一些App数据初始化的工作。...实现的效果当用户点击App icon后,进入SplashActivity,大约经过1~2秒跳转到程序的主界面。...实战代码 SplashActivity实现全屏: supportRequestWindowFeature(Window.FEATURE_NO_TITLE); getWindow...为了简单处理 这里在加载主要的active时候只做了个等待处理: sleep(3000); SplashActivity的xml: SplashActivity的全部代码: package com.exmple.splashactivity; import androidx.appcompat.app.AppCompatActivity
闪屏经典方法 (Splash Screen Classical Approach) SplashActivity.java package com.journaldev.splashscreen;...我们设置了SplashActivity到Theme.AppCompat.NoActionBar在主题AndroidManifest.xml文件。...使用上述方法, SplashActivity使用额外的开销来创建其布局。...Using the theme and removing the layout from the SplashActivity is the correct way to create a splash...使用主题并从SplashActivity中删除布局是创建初始屏幕的正确方法。 这结束了android启动画面教程。
大喜过望的我马上Dump了当前的堆栈信息,AndroidStudio打开之后按照包名的方式去查找启动类SplashActivity,发现应该被销毁的SplashActivity实例数量不为0。 ?...继续深究,排查为什么SplashActivity实例还存在,此时就需要MAT上场大显身手: 3.1 使用Histogram功能检索SplashActivity的实例对象; ?...至此:SplashActivity实例不被销毁的原因找到了:ShowAdInstance中持有了SplashActivity的引用,ShowAdInstance不被销毁,那么SplashActivity...ShowAdInstance中封装了广告页下载、展示的逻辑,持有了SplashActivity的引用,但是明明也是有注销的啊。...反复查看代码逻辑最终定位到有一处判断漏调了注销的方法,导致SplashActivity对象没有被销毁,App杀掉进程之后由于SplashActivity的存在导致应用直接重启。
在导入时 Android Studio 会提示如下 drawable 具体本人尚未弄明白,待理解后会重新补全本部分内容,在此本人选了第一个 然后创建一个包名为activity的包,在activity下创建SplashActivity...SplashActivity 此时会发现 R 报红,只需要将光标锁定到R之后即会提示需要导入R包,如未提示,则手动敲击 Alt+Enter 选中 import class 即可导入 R报红 再而处理代码部分...SplashActivity package cn.edu.lt.android.boxueguapp.activity; import android.content.Intent; import...import cn.edu.lt.android.boxueguapp.MainActivity; import cn.edu.lt.android.boxueguapp.R; public class SplashActivity..., MainActivity.class); startActivity(intent); SplashActivity.this.finish
file 需要创建一个 SplashActivity.java 的类,和一个 activity_splash.xml 的布局文件。...file SplashActivity.java 创建 SplashActivity.java 类,欢迎界面实现类 package cn.edu.gdmec.android.boxuegu; import...Override public void run() { //发送intent实现页面跳转,第一个参数为当前页面的context,第二个参数为要跳转的主页 Intent intent = new Intent(SplashActivity.this...,MainActivity.class); startActivity(intent); //跳转后关闭当前欢迎页面 SplashActivity.this.finish(); } }; //调度执行timerTask...android:supportsRtl="true" android:theme="@style/Theme.AppCompat.NoActionBar"> SplashActivity
方法一:两个Activity,通过线程延迟指定的时间再执行Activity的跳转,我们需要建立两个Activity,一个是SplashActivity,用来做启动画面。..., HelloWorldActivity.class); SplashActivity.this.startActivity(mainIntent); SplashActivity.this.finish...SplashActivity.this.startActivity(mainIntent); SplashActivity.this.finish(); 下面再讲一下Activity的生命周期,方便大家理解...例如上面例子中:从 SplashActivity 中启动了 HelloWorldActivity,则当前处于栈顶端的是 HelloWorldActivity,第二层是 SplashActivity 。...当我们调用 SplashActivity.finish()方法时(我们是在SplashActivity中通过SplashActivity.this.finish()调用的),SplashActivity
white" android:textSize="14sp" android:layout_centerInParent="true"/> SplashActivity.java...创建 SplashActivity.java 类,欢迎界面实现类 package cn.edu.gdmec.android.androidstudiodemo; import android.content.Intent...; import android.widget.TextView; import java.util.Timer; import java.util.TimerTask; public class SplashActivity...//发送intent实现页面跳转,第一个参数为当前页面的context,第二个参数为要跳转的主页 Intent intent = new Intent(SplashActivity.this..."true" android:theme="@style/Theme.AppCompat.NoActionBar"> SplashActivity
com.qq.e.ads.ADActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenSize" > 3、新建SplashActivity.java...android:layout_width="match_parent" android:layout_height="match_parent"> 4、SplashActivity.java...代码如下: public class SplashActivity extends AppCompatActivity { private RelativeLayout container;...finish(); } break; default: } } } 5、最后将主活动设置为SplashActivity...将AndroidManifest里activity中的.MainActivity修改为.SplashActivity。
闪屏界面的作用: 1.展示自己软件的logo,口号标识语等 2.作为广告平台,获取利益 3.加载下一页面(其他Activity或全局)所需要的数据 4.检查更新 首先目录结构 image.png SplashActivity...android:background="@drawable/splash_background" tools:context="com.hxh.splashactivitydemo.SplashActivity...android:supportsRtl="true" android:theme="@style/AppTheme"> SplashActivity...android:name=".MainActivity" > 首先在AndroidManifest.xml中注册新加入的SplashActivity...然后将的内容放在SplashActivity下。 意思就是让SplashActivity的内容先启动。然后再跳转到MainActivity 最后 如果你看到了这里,觉得文章写得不错就给个赞呗?
android:textSize="14sp" android:layout_centerInParent="true"/> SplashActivity.java...创建 SplashActivity.java 类,欢迎界面实现类 package cn.edu.gdmec.android.androidstudiodemo; import android.content.Intent...实现页面跳转 //第一个参数为当前页面的context,第二个参数为要跳转的主页 Intent intent = new Intent(SplashActivity.this... startActivity(intent); //跳转后关闭当前欢迎页面 SplashActivity.this.finish..."true" android:theme="@style/Theme.AppCompat.NoActionBar"> SplashActivity
和尚最近在处理适配方面的问题,今天发现在一些低版本且性能不佳的手机上,冷启动过程中,从 SplashActivity 到 MainActivity 过程中,主页面还没有加载完,启动页先销毁回到手机主页面...问题原因 和尚的 MainActivity 中需要处理很多业务逻辑以及配置项处理等,在 UI 页面展示前会相对较慢,因此导致前一个 SplashActivity 页面已经销毁但是后一个主 MainActivity...解决方式 在第一个页面中添加弱引用,并且在页面跳转过程中不直接 finish 掉本页面; public class SplashActivity extends AppCompatActivity {...@Override public void onClick(View v) { startActivity(new Intent(SplashActivity.this...(isFirstInWindowFocusChanged){ isFirstInWindowFocusChanged = false; SplashActivity.finishActivity
public void run() { Intent intent = new Intent(); intent.setClass(SplashActivity.this..., MainActivity.class); //从启动动画ui跳转到主界面 SplashActivity.this.startActivity(intent);...SplashActivity.this.finish(); // 结束启动界面 } }, 1000 * 3); // 启动动画持续3秒钟 }
textColor="@android:color/white" android:textSize="14sp"/> 创建一个版本Activity类 public class SplashActivity...TimerTask timerTask = new TimeTask(){ @Override public void run(){ Intent intent = new Intent(SplashActivity.this...,MainActivity.class); startActivity(intent); SplashActivity.this.finish(); } }; timer.schedule
) ActivityManager: at dalvik.system.NativeStart.main(Native Method) ---- #原因分析 根据异常提示和搜索得知,这个错误是由启动页SplashActivity...导致的,然后我检查了一下SplashActivity的代码和AndroidManifest.xml,但是并没有发现错误,后来我发现同一个项目在android Studio中运行正常,但是在Eclipse...中却报出了此异常,于是我又重点检查了一下Eclipse IDE下的SplashActivity和AndroidManifest.xml,这才发现确实有一点不一样,我项目的AndroridManifest.xml...中启动页面设置是这样的: <activity android:name=".activity.SplashActivity" android:configChanges
wangli\\Desktop\\kbgz-v5.9.0-debug.apk',#APP文件路径 'appPackage':'com',#APP包名 'appActivity':'cui.setup.SplashActivity...debug.apk appPackage: com chromeOptions: androidProcess: com.tencent.mm:tools appActivity: cui.setup.SplashActivity...json里面的load是相似的 yaml文件内容 chromeOptions: androidProcess: com.tencent.mm:tools appActivity: cui.setup.SplashActivity...python', 'c++', 'java'], 'autoGrantPermissions': 'True', 'deviceName': '852', 'appActivity': 'cui.setup.SplashActivity
然后我们要分析log中的具体信息,方法如下: 查看log中第一个Switch,主要是查看Monkey执行的是那一个Activity,譬如下面的log中,执行的是com.tencent.smtt.SplashActivity...android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10000000;component=com.tencent.smtt/.SplashActivity...Intent {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER]cmp=com.tencent.smtt/.SplashActivity
下面则开始介绍两种设置启动画面的方式: 第一种(两个Activity): 启动界面的Activity public class SplashActivity extends Activity{...postDelayed(new Runnable() { public void run() { Intent intent = new Intent(SplashActivity.this...MyViewpager.class); //第二个参数即为执行完跳转后的Activity startActivity(intent); SplashActivity.this.finish...(); //关闭splashActivity,将其回收,否则按返回键会返回此界面 } }, SPLASH_DISPLAY_LENGHT); } } 短视频
wangli\\Desktop\\kbgz-v5.9.0-debug.apk',#APP文件路径 'appPackage':'com',#APP包名 'appActivity':'cui.setup.SplashActivity...debug.apk appPackage: com chromeOptions: androidProcess: com.tencent.mm:tools appActivity: cui.setup.SplashActivity...json里面的load是相似的,yaml文件内容: chromeOptions: androidProcess: com.tencent.mm:tools appActivity: cui.setup.SplashActivity...python', 'c++', 'java'], 'autoGrantPermissions': 'True', 'deviceName': '852', 'appActivity': 'cui.setup.SplashActivity
mAnimationIsEntrance=true mSurface=Surface(name=com.ss.android.ugc.aweme/com.ss.android.ugc.aweme.splash.SplashActivity...)/@0xb681146 mSurface=Surface(name=com.ss.android.ugc.aweme/com.ss.android.ugc.aweme.splash.SplashActivity...-D -n 包名/启动类 #例如 adb shell am start -D -n com.ss.android.ugc.aweme/com.ss.android.ugc.aweme.splash.SplashActivity
fitCenter" android:src ="@drawable/splash" > 放一个ImageView加载启动画面图片 SplashActivity...run() { startActivity( new Intent(getApplication(),MainActivity. class )); SplashActivity
领取专属 10元无门槛券
手把手带您无忧上云