另一个Activity中的Android :: getViewById(不是super.onCreate())

时间:2013-11-03 20:50:43

标签: android findviewbyid

我创建了一项活动,现在我正在尝试向按钮添加eventListener

但是当我切换到AddEntryActivity时,我得到了SuperNotCalledException()。 任何帮助都非常感谢!

public class AddEntryActivity extends ActionBarActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_add_entry);
    ImageButton test = (ImageButton) findViewById(R.id.mg_add_entry_button_save);
    ...

这是我的activity_add_entry.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity$PlaceholderFragment"
    android:background="@drawable/radialback">

    <LinearLayout
        android:orientation="vertical"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:id="@+id/mg_overview"
        android:layout_height="fill_parent"
        android:layout_width="fill_parent"
        android:layout_above="@+id/mg_menu_bar">

        <EditText
            android:layout_height="wrap_content"
            android:layout_width="fill_parent"
            android:inputType="numberDecimal">
        </EditText>

        <EditText
            android:layout_height="wrap_content"
            android:layout_width="fill_parent"
            android:inputType="date"/>

        <Spinner
            android:layout_height="wrap_content"
            android:layout_width="fill_parent"
            android:id="@+id/mg_add_entry_spinner_categories"
            android:entries="@array/basic_categories_array"
            android:prompt="@string/abc_activity_chooser_view_see_all"></Spinner>

        <Button
            android:id="@+id/mg_add_entry_button_save"
            android:layout_height="wrap_content"
            android:layout_width="fill_parent"
            android:text="@string/mg_save"/>

    </LinearLayout>

    <LinearLayout
        android:id="@+id/mg_menu_bar"
        android:layout_height="wrap_content"
        android:layout_width="fill_parent"
        android:orientation="horizontal"
        android:layout_alignParentBottom="true">
        <ImageButton
            android:id="@+id/mg_menu_button_add_entry"
            android:layout_height="wrap_content"
            android:layout_width="wrap_content"
            android:src="@drawable/abc_ic_go"/>
    </LinearLayout>

</RelativeLayout>

1 个答案:

答案 0 :(得分:0)

很难说没有看到你的logcat,但你可能会覆盖前一个活动类中的某些方法(例如onPauseonStop),而你却错过了对超级.-

@Override
public void onPause() {
    super.onPause();
    // Your stuff
}