java - 启动屏幕后启动另一个 Activity 而不是主 Activity

标签 java android xml android-manifest

谁能告诉我如何让我的 Android 应用程序执行这个命令?

1)启动屏幕(SplashActivity)..我已将其作为启动器完成

2)介绍 slider (WelcomeActivity)..我不知道如何使其在启动后出现。

3)主要 Activity ..我希望它出现在欢迎之后,或者我将通过单击“知道了”按钮启动它。

提前致谢。

最佳答案

如果我是对的,您所要求的是如何使用 Intent 和处理程序。首先,您的 splashActivity.java 应该如下所示;

public class SplashActivity extends Activity{

//timer in miliseconds, 1000ms = 1s//
private static int SPLASH_TIME_OUT = 2000;

//create first screen showed when app is launched//
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_splash);

    new Handler().postDelayed(new Runnable() {
        //showing splashscreen with a timer //

        @Override
        public void run() {
            //this is executed once the timer is over//

            Intent i = new Intent(SplashActivity.this,    WelcomeActivity.class);
            startActivity(i);
            finish();

        }
    },SPLASH_TIME_OUT);

}
}

然后在 AndroidManifest.xml 中声明您的菜单 Activity 和启动 Activity 例如;

<activity
        android:name=".SplashActivity"
        android:screenOrientation="portrait">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name=".WelcomeActivity"
        android:screenOrientation="sensor" />
    <activity
        android:name=".MainActivity"
        android:screenOrientation="sensor" />

然后,对于如何在欢迎 Activity 之后打开主要 Activity ,只需将 SplashActivity.java 的代码复制并粘贴到您的 WelcomeActivity 中,进行必要的更改, 但如何使用按钮打开, 请参阅下面的示例代码 首先,您的按钮显示已在 activity_welcome.xml 中设计 例如

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_welcome"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.domainname.yourappname.WelcomeActivity"
android:background="@drawable/splash"

<Button
        android:text="@string/got it"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/button"
        style="@style/Widget.AppCompat.Button.Borderless"
        android:textAlignment="center"
        android:textSize="30sp"
        android:layout_marginTop="41dp"
    android:textColorHighlight="@android:color/transparent"
    android:textColorHint="@android:color/transparent"
    android:layout_below="@+id/textView3"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true" />

</RelativeLayout>

在您的WelcomeActivity.java

public class WelcomeActivity extends Activity {
Button button;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_welcome);
    addListenerOnButton();

}
public void addListenerOnButton() {

    final Context context = this;

    button = (Button) findViewById(R.id.button);

    button.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            Intent intent = new Intent(context, MainActivity.class);
            startActivity(intent);
            finish();
            Toast.makeText(context, "MainActivity Opened.", Toast.LENGTH_SHORT).show();

        }

    });
}
}

注意:到目前为止,我不知道您正在编写什么程序或如何设计它,这只是一个示例,您可能需要对实际代码进行调整才能正常运行

关于java - 启动屏幕后启动另一个 Activity 而不是主 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42730086/

相关文章:

android - XmlPullParser 处理多维重复元素

java - Mac OS Yosemite 上缺少 JDK 1.8 虚拟机

android - 无法反序列化通用T型Moshi

python - 使用 python 增量解析大型维基百科转储 XML 文件

java - 使用 multipart/form-data 或 multipart/mixed 在获取 JSON 和文件时让 Spring 进行映射

android - 如何通过xml为android中的按钮添加渐变?

xml - s4s-att-不允许 : Attribute 'name' cannot appear in element 'simpleType'

java - 安卓 LibVLC : video Surface

Java SHA256 哈希与 vb.net 中的不同

java - Context.openFileInput 和 Context.openFileOutput 之间的同步