2012-06-11 2 views
2

Когда я открываю эту страницу приложение unexpectly останавливает это не имеет проблем без опций роллерных, но когда я добавляю их в приложение падает ...Android приложение падает причину блесны

LogCat текст http://pastebin.com/umKP8iD0

package com.calc; 

    import android.app.Activity; 
    import android.content.Intent; 
    import android.net.Uri; 
    import android.os.Bundle; 
    import android.widget.Adapter; 
    import android.widget.ArrayAdapter; 
    import android.widget.EditText; 
    import android.widget.Spinner; 
    import android.widget.TextView; 
    import android.widget.Button; 
    import android.widget.TimePicker; 
    import android.view.View; 


    public class setup extends Activity 
    { 

     TextView start, end; 
     TimePicker startTime, endTime; 
     Spinner day; 
    /** Called when the activity is first created. */ 
     @Override 
     public void onCreate(Bundle savedInstanceState) 
     { 
      String dayText[] = new String[6]; 
      start = (TextView) findViewById(R.id.textView1); 
      end = (TextView) findViewById(R.id.textView2); 
      startTime = (TimePicker) findViewById(R.id.timePicker1); 
      endTime = (TimePicker) findViewById(R.id.timePicker2); 
      day = (Spinner) findViewById(R.id.spinner1); 
      dayText[0] = "Sunday"; 
      dayText[1] = "Monday"; 
      dayText[2] = "Tuesday"; 
      dayText[3] = "Wednesday"; 
      dayText[4] = "Thursday"; 
      dayText[5] = "Friday"; 
      dayText[6] = "Saturday"; 
      ArrayAdapter adapter = new ArrayAdapter(this, 
        android.R.layout.simple_spinner_item, dayText); 
      day.setAdapter(adapter); 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.enterpage); 
     } 
    } 

Мне интересно, не так ли, потому что spinner я создаю это неправильно?

+2

Можете ли вы разместить данные в LogCat? Кроме того, попробуйте поставить 'super.onCreate (savedInstanceState);' в самом начале метода. – Eric

+0

добавил logcat в начале сообщения – JPHamlett

+0

] Определенно проблема с массивом, которую я упоминаю в своем редактировании, о, добро пожаловать в SO. Если вы еще этого не видели, вы можете проверить это [ссылка] (http://meta.stackexchange.com/a/5235). – Barak

ответ

1

Вы должны использовать setContentView прежде, чем вы можете получить вид иду ...

Если вы пытаетесь получить идентификаторы, прежде чем установить вид они вернутся утратившими после этого вы получите вопросы NPE.

Переместите это так, чтобы оно было первым, и ваше приложение должно работать.

EDIT

Вы также не ставим достаточно слотов в массиве. вы вызываете 6 слотов и пытаетесь поместить в него семь предметов. Попробуйте следующее:

String daytext[] = new String[7]; 
+0

Не работает Я пытался переместить его ничего не изменил – JPHamlett

+0

Сохраняет ли ваш 'R.layout.enterpage' те идентификаторы, которые вы пытаетесь найти? Как я уже сказал, вы должны сначала установить представление контента, и оно должно содержать идентификатор, к которому вы пытаетесь получить доступ. Отправьте свой логарифм, чтобы мы могли определить проблему. – Barak

+0

Нашел еще одну проблему, проверьте мой обновленный ответ. – Barak

Смежные вопросы