你好我们试图从我的主要活动切换到一个新的活动,但我得到'the application has stopped unexpectedly. Please try again'
。我不知道为什么。
这是我目前的活动:
public class EditActivity extends ListActivity {
TextView selection;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, mListContent));
}
private static String[] mListContent={"Fishing Reports", "Choose a Fishing Spot", "Prediction","Item 1", "Item 2", "Item 3","Item 1", "Item 2", "Item 3","Item 1", "Item 2", "Item 3"};
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
switch (position){
case 0 : Toast.makeText(this, "You pressed item 1 !", Toast.LENGTH_LONG).show();
break;
case 1 :
Intent myIntent = new Intent(EditActivity.this, LocationActivity.class);
startActivity(myIntent);
break;
}
super.onListItemClick(l, v, position, id);
}
这是我打电话的活动
public class LocationActivity extends ListActivity {
//Your member variable declaration here
// Called when the activity is first created.
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.location);
}
}
新活动在我的清单
中宣布 <activity android:name=".LocationActivity"></activity>
这是我新活动的布局:
当前活动正常但当我点击mListContent (case 1)
上的第二项时,它没有启动第二项活动,我收到错误'the application has stopped unexpectedly. Please try again'
任何想法为什么?
非常感谢!!
答案 0 :(得分:0)
当您使用ListActivity时,您需要确保您的布局具有ID为“@android:id / list”的ListView,以便ListActivity可以找到它。如果不这样做,它将在启动时强制关闭。
这样的事情:
<ListView android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:fastScrollEnabled="true" />
</LinearLayout>
BTW,如果你正在使用Eclipse,这里有一个帮助调试的提示。
在Eclipse菜单中,选择Window&gt;显示视图&gt;其他...,展开Android类别,选择LogCat,然后单击“确定”。这将打开LogCat视图,该视图捕获模拟器或设备的所有日志输出。
我喜欢在LogCat中设置过滤器,因此更容易找到应用消息;单击小绿色加号以创建新过滤器,并为“过滤器名称”和“按日志标记”字段输入“AndroidRuntime”。此过滤器将显示为LogCat视图上的另一个选项卡,您可以通过切换到该选项卡随时过滤内容。