2015-01-31 5 views
1

У меня проблема в Android. В моей программе есть активность, которая содержит 4 фрагмента в viewpager. Из одного из фрагментов я хочу вызвать операцию диалога, а также отправить переменную. Это мой код:Android - Intent putExtra принимает nullpointer

Intent popup = new Intent(getActivity().getApplicationContext(), 
PopUpWifi.class); popup.putExtra("WiFiID", String.valueOf(name)); 
startActivity(popup); 

Вот код на всплывающей: актив- ности

public class PopUpWifi extends Activity { 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.popupwifi); 

     TextView TVWifi = (TextView) findViewById(R.id.TVWifi); 
     EditText ETJelszo = (EditText) findViewById(R.id.ETJelszo); 

     String value = getIntent().getStringExtra("WiFiID"); 
     TVWifi.setText(value); 
    } } 

Вот это pupupwifi.xml:

<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical"> 
    <TextView 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="Wi-fi hálózat neve" 
     android:textSize="@dimen/NewSize" /> 
    <TextView 
     android:name="@+id/TVWifi" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="Wi-fi" 
     android:textSize="@dimen/NewSize" /> 
    <TextView 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="Kérem adja meg a jelszót:" 
     android:textSize="@dimen/NewSize" /> 
    <EditText 
     android:id="@+id/ETJelszo" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:textSize="@dimen/NewSize" /> 
    <Button 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="Bevitel" 
     android:textSize="@dimen/NewSize" /> 
    </LinearLayout> 

Но я могу попробовать что-нибудь, он бросает исключение nullpointer:

FATAL EXCEPTION: main 
    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.sss.home/com.sss.home.PopUpWifi}: java.lang.NullPointerException 
      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2372) 
      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2424) 
      at android.app.ActivityThread.access$600(ActivityThread.java:162) 
      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1364) 
      at android.os.Handler.dispatchMessage(Handler.java:107) 
      at android.os.Looper.loop(Looper.java:194) 
      at android.app.ActivityThread.main(ActivityThread.java:5400) 
      at java.lang.reflect.Method.invokeNative(Native Method) 
      at java.lang.reflect.Method.invoke(Method.java:525) 
      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:837) 
      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:604) 
      at dalvik.system.NativeStart.main(Native Method) 
    Caused by: java.lang.NullPointerException 
      at com.sss.home.PopUpWifi.onCreate(PopUpWifi.java:20) 
      at android.app.Activity.performCreate(Activity.java:5122) 
      at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1084) 
      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2336) 
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2424) 
            at android.app.ActivityThread.access$600(ActivityThread.java:162) 
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1364) 
            at android.os.Handler.dispatchMessage(Handler.java:107) 
            at android.os.Looper.loop(Looper.java:194) 
            at android.app.ActivityThread.main(ActivityThread.java:5400) 
            at java.lang.reflect.Method.invokeNative(Native Method) 
            at java.lang.reflect.Method.invoke(Method.java:525) 
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:837) 
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:604) 
            at dalvik.system.NativeStart.main(Native Method) 

Спасибо за помощь.

+1

Возможно 'TVWifi' не присвоен вид. Или он лежит в другом макете, чем тот, который указан в 'setContentView()' –

+0

. Вы проверили, что именно выбрасывает NPE? Может быть, «TextView» имеет значение NULL? – JensJensen

+0

где пишут TVWifi.setText (значение); – sandeepmaaram

ответ

0

пытаются использовать android:id="@+id/TVWifi" вместо использования android:name="@+id/TVWifi"

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