首先让我告诉大家,我是Android应用程序开发的新手。 我想知道如何启动主屏幕然后应用主屏幕。 即,每当您点击某个应用程序时,首先它会显示一些徽标屏幕,然后自动跳转到应用程序的主屏幕。 我的应用程序的主屏幕正在运行,我只想在用户点击应用程序时添加某种徽标屏幕。
我对此进行了一些研究,我发现了
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
如果我将此添加到徽标活动,那么如何自动调用app_home_screen活动 希望我足够清楚地解释这个问题。
答案 0 :(得分:2)
你需要:
SplashActivity
,这将是您应用的开始活动。SplashActivity
并等待一段时间。MainActivity
并完成SplashActivity
。这是一个很好的例子:
<强> SplashScreenActivity:强>
public class SplashScreenActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.splash_layout); //You need to define it in your layouts
final int welcomeScreenDisplay = 3000; //splash lasts for 3 sec. You can change it
/** create a thread to show splash up to splash time */
Thread welcomeThread = new Thread() {
int wait = 0;
@Override
public void run() {
try {
super.run();
while (wait < welcomeScreenDisplay) {
sleep(100);
wait += 100;
}
} catch (Exception e) {
System.out.println("EXc=" + e);
} finally {
startActivity(new Intent(SplashScreenActivity.this, MainScreenActivity.class));
finish();
}}
};
welcomeThread.start();
}
}
不要忘记将活动添加到您的清单文件中:
<activity
android:name=".SplashScreenActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".MainScreenActivity"
android:label="@string/app_name" >
</activity>
答案 1 :(得分:2)
虽然其他答案肯定有效,但这里有一个替代方法可以避免为您的徽标单独开展活动:
您的ImageView将会消失,其他布局元素将会落在其位置。
答案 2 :(得分:1)
您可以尝试的一个解决方案是将徽标作为主要活动加载,并让应用程序暂停几秒钟,然后再调用第二个活动,即“真正的”主页。
要开始第二项活动,您将使用“意图”,例如
Intent myIntent = new Intent(myFirstActivity.this, realHomePage.class);
myFirstActivity.this.startActivity(myIntent);
只需确保在主页类
中扩展Activity类答案 3 :(得分:0)
点击您的应用图标时调用的主要活动是一个只包含您的徽标的视图的活动。简单的东西,只是一个RelativeLayout和一个ImageView。延迟一段时间后,让此活动以意图开始您的实际主要活动。