Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 第二个活动的setContentView()上的应用程序崩溃_Java_Android_Android Activity - Fatal编程技术网

Java 第二个活动的setContentView()上的应用程序崩溃

Java 第二个活动的setContentView()上的应用程序崩溃,java,android,android-activity,Java,Android,Android Activity,我有一个名为MainActivity的启动活动,它最终将启动另一个名为SearchResultsActivity的启动活动 它们都扩展了ActionBarActivity,第二个尚未编写,因为现在它只是一个存根,具有: @Override protected void onCreate(Bundle savedInstanceState) { setContentView(R.layout.search_results); } 布局XML如下所示,只是一个白色背景的列表视图: <

我有一个名为
MainActivity
的启动活动,它最终将启动另一个名为
SearchResultsActivity
的启动活动

它们都扩展了
ActionBarActivity
,第二个尚未编写,因为现在它只是一个存根,具有:

@Override
protected void onCreate(Bundle savedInstanceState) {
    setContentView(R.layout.search_results);
}
布局XML如下所示,只是一个白色背景的
列表视图

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/white">

    <ListView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/list_products"
        android:layout_gravity="center_horizontal" />
</LinearLayout>
以下是清单摘录:

<activity
    android:name="com.example.myapp.MainActivity"
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/Theme.Styled">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

<activity
    android:name="com.example.myapp.SearchResultsActivity"
    android:label="@string/app_name"
    android:theme="@style/Theme.Styled"
    android:configChanges="orientation|keyboardHidden">
    <meta-data
        android:name="android.support.PARENT_ACTIVITY"
        android:value="com.example.myapp.MainActivity" />
</activity>

我原以为布局可能有问题,但后来我决定将
R.layout.search_results
替换为
R.layout.home
,它与
MainActivity
中使用的XML相同,因此应该可以工作。但它在同一条线上崩溃了


有没有关于是什么原因的想法?

正如其他人所指出的,您的错误很可能出现在第二个活动的
onCreate
代码中。如果您阅读文档,您将看到他们以
onCreate
开始活动,并立即回拨
super.onCreate(…)

您的代码应如下所示:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState); //added this line
    setContentView(R.layout.search_results);
}
如果您选择让IDE自动生成活动存根,它将始终在活动中调用super.onCreate。它初始化活动,有关详细说明,请参阅


如果这不能解决您的问题,并且您的第二个活动中有更多的代码,那么发布整个活动的代码可能会很有用。

正如其他人所指出的,您的错误可能出现在第二个活动的
onCreate
代码中。如果您阅读文档,您将看到他们以
onCreate
开始活动,并立即回拨
super.onCreate(…)

您的代码应如下所示:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState); //added this line
    setContentView(R.layout.search_results);
}
如果您选择让IDE自动生成活动存根,它将始终在活动中调用super.onCreate。它初始化活动,有关详细说明,请参阅


如果这不能解决您的问题,并且您的第二个活动中有更多的代码,那么发布整个活动的代码可能会很有用。

可能是因为没有
super.onCreate(savedInstanceState)介于
OnCreate()
setContentView()
之间?你有super.OnCreate(…)行吗?可能是因为没有
super.OnCreate(savedInstanceState)OnCreate()
setContentView()
之间的代码>中?您有super.OnCreate(…)行吗?