J'ai un MainActivity.class sur lequel je fais setContentView, voici les trois variables que je faisaisandroid: findViewById retourne NULL lorsque les accès d'une autre classe
EditText labelText = (EditText) findViewById(R.id.label_field);
EditText phoneText = (EditText) findViewById(R.id.phone_field);
Spinner deviceTypeSpinner = (Spinner) findViewById(R.id.device_type_spinner);
Button registerButton = (Button) findViewById(R.id.register_button)
Maintenant, j'ai une classe séparée qui étend une tâche asynchrone, j'essaie de modifier les champs ci-dessus de la tâche asynchrone (classe située dans un autre fichier).
Pour ce faire, je passe le contexte de l'activité à Async tâche et réaliser les étapes ci-dessous
MainActivity activity = (MainActivity)context;
Button buttonRegister =(Button)activity.findViewById(R.id.register_button);
EditText labelText = (EditText)activity.findViewById(R.id.label_field);
buttonRegister.setEnabled(true);
labelText.setFocusable(true);
mais le buttonRegister renvoie NULL et les accidents app, quelqu'un peut-il me dire où ai-je a mal tourné,
java.lang.NullPointerException
at com.yantranet.minixagent.requests.DeviceCreateRequest$1.onClick(DeviceCreateRequest.java:237)
at com.android.internal.app.AlertController$ButtonHandler.handleMessage(AlertController.java:167)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4895)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:994)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:761)
at dalvik.system.NativeStart.main(Native Method)
est la classe asynctask dans la classe principale ou différente? – KOTIOS
passez-vous le contexte d'activité au constructeur asynctask? – Raghunandan
@ Stacks28: c'est dans une autre classe –