谁能告诉我如何让我的 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/