使用意图移动到第二页

时间:2013-03-13 01:44:50

标签: android android-intent android-activity

我在MainActivity做了一个按钮,转到SecondActivity

<Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/textView1"
    android:layout_marginTop="178dp"
    android:layout_toRightOf="@+id/textView1"
    android:onClick="onClick"
    android:text="Moj przycisk" />

方法:

public void onClick(View view){
    startActivity(new Intent("com.example.telefon2.SecondActivity"));
}

在清单文件中,第二个活动的名称是:

<activity
    android:name="com.example.telefon2.SecondActivity"
    android:label="@string/title_activity_second" >
</activity>

但是当我点击按钮时出现错误:

03-12 18:56:08.606: E/AndroidRuntime(1154): FATAL EXCEPTION: main
03-12 18:56:08.606: E/AndroidRuntime(1154): java.lang.IllegalStateException: Could not execute method of the activity
03-12 18:56:08.606: E/AndroidRuntime(1154):     at android.view.View$1.onClick(View.java:2683)
03-12 18:56:08.606: E/AndroidRuntime(1154):     at android.view.View.performClick(View.java:3110)

我做错了什么?

1 个答案:

答案 0 :(得分:2)

public void onClick(View view){
        startActivity(new Intent("com.example.telefon2.SecondActivity"));
    }

应该是

public void onClick(View view){
        startActivity(new Intent(view.getContext(), SecondActivity.class));
    }

由于您没有为SecondActivity定义Intent-Action(如清单所示)。

如果您确实想要导出此活动,请务必使用您想要的操作为其提供一个Intent过滤器:

<activity
            android:name="com.example.telefon2.SecondActivity"
            android:label="@string/title_activity_second" >
<intent-filter>
            <action android:name="com.example.telefon2.SecondActivity"/>
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
 </activity>

然后你可以继续使用

startActivity(new Intent("com.example.telefon2.SecondActivity"));