android程序如何理解首先调用哪个类或/和活动?

时间:2014-07-17 11:41:34

标签: android

由于我是Android编程新手,我不知道如何先调用某个类和/或某些活动。

例如,我有两个类即。 1)Login.java 2)Create.java和与之关联的两个xml文件分别为activity_main.xmlcreate_new.xml 那么如何让Login.javaactivity_main.xml作为屏幕首先运行?

3 个答案:

答案 0 :(得分:1)

来自项目intent filters文件中的android manifest十进制文件;请参阅图片 您在活动代码中声明了一个类似于图片中显示的意图过滤器,以使其成为您应用程序的第一个活动。如果您的应用中有其他活动具有意图过滤器,则只需更改大写字母{{1} }到intent过滤器标记中的MAIN

enter image description here

您可以在项目enter image description here

中找到AndroidManifest文件,如下图所示

答案 1 :(得分:1)

登录java中的

使用此

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);}

在create java us this

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.create_new);
在androidmanifest中

 <activity
        android:name=".Login"
        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=".MainActivity" ></activity>

答案 2 :(得分:1)

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.your.package"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="10"
        android:targetSdkVersion="19" />

    <uses-permission android:name="android.permission.INTERNET" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.example.your.package.activity.Login"
            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="com.example.your.package.activity.Create"
            android:label="@string/app_name" >
        </activity>
    </application>

</manifest>

在这种情况下,LOGIN活动的intent-filter指定MAIN操作的意图和LAUNCHER的类别将被它捕获,也就是应用程序启动的位置。

此后,

public class Login extends Activity
{
    //honestly I'd name this class LoginActivity and same in the XML
    @Override
    public void onCreate(Bundle saveInstanceState)
    {
        super.onCreate(saveInstanceState);
        setContentView(R.layout.activity_main);
    }

    ....
}

另请参阅此示例以了解如何使用片段:

NullPointerException accessing views in onCreate()