从片段加载新活动时出错

时间:2013-06-23 10:59:57

标签: android android-intent android-fragments android-fragmentactivity listadapter

我有一个错误,我无法解决。我已经看了好几个小时,我看到的每个地方都给了我同样的回应。

所以这是我调用活动的方法:

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    Fragment fragment;
    FragmentManager fm = getSupportFragmentManager();
    switch (item.getItemId()) {
        case R.id.action_add:
            actionBar.hide();
            Toast.makeText(this, "Let's add a dream", Toast.LENGTH_SHORT)
                    .show();

            fragment = new addDreamFragment();
            fm.beginTransaction()
                    .replace(R.id.container, fragment)
                    .commit();
            break;

        case R.id.action_view:
        Toast.makeText(this, "Let's see those dreams...", Toast.LENGTH_SHORT)
                .show();
        Intent i = new Intent(MainActivity.this, DreamListActivity.class);
        startActivity(i);
        break;
        case R.id.action_share:
            Toast.makeText(this, "Menu item 2 selected", Toast.LENGTH_SHORT)
                    .show();
            break;

        default:
            break;
    }
    actionBar.show();
    return true;
}

它从FragmentActivity调用ListActivity。

这是我继续收到的错误:

06-23 09:02:54.033: ERROR/AndroidRuntime(2035): FATAL EXCEPTION: main
    java.lang.RuntimeException: Unable to start activity ComponentInfo{swin.examples.cloud/swin.examples.cloud.DreamListActivity}: java.lang.RuntimeException: Your content must have a ListView whose id attribute is 'android.R.id.list'

我有三个xml文件,一个用于main,一个用于listactivity,另一个用于生成列表适配器。有人可以帮帮我吗?此外,我也希望从片段内部开始列表活动,也可以赞赏一些帮助,使得这项工作也会受到赞赏!

XML FILE ONE:片段活动的主要布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/container" />

XML FILE TWO:ListActivity的布局:     编辑很奇怪而没有表现出来。它只是一个FrameLayout声明。

XML文件三:列表视图

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/text"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:padding="5sp"
    android:textSize="25sp" >

<!--Creates the row for the ListAdapter in the ListActivity. -->

    <ListView
        android:id="@+id/android:list"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

    <TextView
        android:id="@+id/android:empty"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/no_dreams" />

</TextView>

1 个答案:

答案 0 :(得分:0)

我发现了错误。我需要重新排列xml文件中的对象。现在全部修好了。谢谢你的帮助。