2012-06-21 3 views
-2

Почему это:Android приложение Краш

public class HelpTab extends Activity 
    { 
LinearLayout helpLayout; //was changed to LinearLayout helpLayout = new LinearLayout(this); 
TextView helpText = new TextView(this); 
Button tips = new Button(this); 
Button walkThrough = new Button(this); 

public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    buttonCreator(); 
    setContentView(helpLayout); 
} 

public void buttonCreator() 
{ 
     //Button featuress defined in here (setText("") and adding them to the layout, addView();) 
    } 

Причинение моя программа аварии? Я внимательно просмотрел код, и я не могу на него наложить свой палец, и отладчик также говорит, что источник не найден, когда он открывает вкладку новой страницы, чтобы рассказать мне, что происходит.

+1

Полный выход журнала след требуется пожалуйста. –

+0

Является ли ваша деятельность должным образом объявленной в AndroidManifest.xml? –

+0

Если вы опубликуете Logcat, было бы намного легче ответить. – cstrutton

ответ

1

Try вызова setContentView(helpLayout); первым, а затем buttonCreator();

public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 

    setContentView(helpLayout); 
    buttonCreator(); 
} 

Предполагая, что вы пытаетесь инициализировать кнопку внутри buttonCreater() по отношению к кнопке, объявленной в вашем helplayout, вы можете столкнуться с Null Pointer Exception ,

+0

Да, я только что видел это, но почему он получает нулевое исключение? если он не работает правильно, поскольку кнопки еще не добавлены в основную компоновку, поэтому причина метода в первую очередь. Я думаю, что я понимаю, куда идти здесь, просто полностью определите кнопку, например. Кнопка newButton = новая кнопка (это); независимо от того, что находится в верхней части файла класса. –

+0

Только когда u предоставит contentView для вашей деятельности, андроид будет знать, где найти элементы (которые xml res). если нет, то он будет указывать u null Pointer. –

+0

Я не получаю InvocationTargetException. Теперь я добавлю верхнюю половину своего кода. –

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