2014-10-26 2 views
0

Я пытаюсь добавить текстовое представление и кнопку программно в оператор if (если имя == ""), но когда я попытаюсь сделать это, я получаю сообщение об ошибке.add button programatically in if statement

if(name == ""){ 

     RelativeLayout rl = (RelativeLayout) findViewById(R.id.main); 
     TextView txt1 = new TextView(MyActivity.this); 
     txt1.setText("add"); 
     Button add = new Button(MyActivity.this); 
     add.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
       startActivity(new Intent(MyActivity.this, fourm.class)); 
      } 
     }); 
     rl.addView(txt1); 
     rl.addView(add); 

    } 
    else { 

     } 

код ошибки

 Caused by: java.lang.NullPointerException 
     at app.com.pickup.MyActivity.onCreate(MyActivity.java:58) 
     at android.app.Activity.performCreate(Activity.java:5231) 
     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087) 
     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159) 
+0

Какая ошибка вы получаете? Кроме того, вы могли бы разместить больше кода? – karvoynistas

+0

Пользователь, вы понимаете, что для нас, чтобы помочь вам, нам нужно увидеть, где ошибка. И так как вы взяли случайный фрагмент и дали нам номер строки, мы не можем найти эту строку? –

+0

Что находится на строке 58 MainActivity? ' –

ответ

1

добавление кнопки выглядит хорошо- я думаю, ваша проблема является, если сравнение - не использовать == для сравнения строк. использовать либо равна или IsEmpty в вашем случае

0

использовать этот код для сравнения

if(name.equalsIgnoreCase("")) 
{ 
    //code to add button 
} 

и проверить, где вы initlialised name..may быть вы написали имя String = null..change его с именем String = ""; поскольку вы получаете исключение нулевого указателя

+0

попытайтесь изменить инициализацию и сравнение – Meenal