在我試圖找出如何在我的應用程序中開始一個新的意圖時,我遇到了幾種表達方式。Android意圖語法
此語法返回一個運行時錯誤,即ActivityNotFound例外
Intent in = new Intent("com.something.something");
當然我的Android清單包含意圖過濾器中的一個動作:
<activity
android:name=".SecondActivity"
android:label="@string/title_activity_second" >
<intent-filter>
<action android:name="com.something.something" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
此格式的工作原理:
Intent in = new Intent(MainActivity.this, SecondActivity.class);
我也試過以下內容:
Intent in = new Intent(this, SomeActivity.class);
這是我正在閱讀的書中推薦的。這將返回一個運行時錯誤,activitynotfound
這一個使Eclipse把我來回setClass和setClassName無限之間:
ok.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
Intent in = new Intent(MainActivity.this, SecondActivity.class);
startActivity(in);
}
});
}
:
Intent in = new Intent().setClass(this, SecondActivity.class);
我在一個onclick方法,使用它這些之間有什麼區別,爲什麼只有其中一個爲我工作?
問候 /M
真棒,非常感謝你爲一個偉大的答案! – hacke