IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Jan Voženílek
Tvůrce
Avatar
Jan Voženílek:5.2.2021 20:54
public EditText eNum = (EditText)findViewById(R.id.lNum);
<EditText
    android:id="@+id/lNum2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginEnd="100dp"
    android:layout_marginBottom="464dp"
    android:ems="10"
    android:inputType="text"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent" />

Když se pokusím spustit aplikaci stane se:

Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.pm.ApplicationInfo android.content.Context.getApplicationInfo()' on a null object reference
       at android.content.ContextWrapper.getApplicationInfo(ContextWrapper.java:159)
       at android.view.ContextThemeWrapper.getTheme(ContextThemeWrapper.java:157)
       at android.content.Context.obtainStyledAttributes(Context.java:675)
       at androidx.appcompat.app.AppCompatDelegateImpl.createSubDecor(AppCompatDelegateImpl.java:839)
       at androidx.appcompat.app.AppCompatDelegateImpl.ensureSubDecor(AppCompatDelegateImpl.java:806)
       at androidx.appcompat.app.AppCompatDelegateImpl.findViewById(AppCompatDelegateImpl.java:630)
       at androidx.appcompat.app.AppCompatActivity.findViewById(AppCompatActivity.java:223)
       at info.psoh.school.multiplicationedu.MainActivity.<init>(MainActivity.java:30)
       at java.lang.Class.newInstance(Native Method)
       at android.app.AppComponentFactory.instantiateActivity(AppComponentFactory.java:69)
       at androidx.core.app.CoreComponentFactory.instantiateActivity(CoreComponentFactory.java:45)
       at android.app.Instrumentation.newActivity(Instrumentation.java:1215)
       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2862)
       at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3079) 
       at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78) 
       at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108) 
       at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68) 
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1836) 
       at android.os.Handler.dispatchMessage(Handler.java:106) 
       at android.os.Looper.loop(Looper.java:193) 
       at android.app.ActivityThread.main(ActivityThread.java:6702) 
       at java.lang.reflect.Method.invoke(Native Method) 
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) 
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:911

Zkusil jsem: Snad úplně všechno

Chci docílit: Změnit text v EditText.
Děkuji za pomoc

 
Odpovědět
5.2.2021 20:54
Avatar
Jan Voženílek
Tvůrce
Avatar
Jan Voženílek:5.2.2021 21:37

Řádek 30 je

public EditText eNum = (EditText)findViewById(R.id.lNum);
 
Nahoru Odpovědět
5.2.2021 21:37
Avatar
Odpovídá na Jan Voženílek
Matúš Olejník:6.2.2021 10:09

V xml čo si poslal máš id lNum2 a v kóde hľadáš len lNum je to dobre?

Nahoru Odpovědět
6.2.2021 10:09
/* I am not sure why this works but it fixes the problem */
Avatar
Jan Voženílek
Tvůrce
Avatar
Odpovídá na Matúš Olejník
Jan Voženílek:6.2.2021 15:20

Aha, poslal jsem špatný kus xml.

<EditText
    android:id="@+id/lNum"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginEnd="100dp"
    android:layout_marginBottom="464dp"
    android:ems="10"
    android:inputType="text"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent" />
Editováno 6.2.2021 15:22
 
Nahoru Odpovědět
6.2.2021 15:20
Avatar
Odpovídá na Jan Voženílek
Matúš Olejník:6.2.2021 16:26

Toto

public EditText eNum = (EditText)findViewById(R.id.lNum);

nerob týmto spôsobom. Globálne si len deklaruj premennú

public EditText eNum;

a až v onCreate metóde za

super.onCreate...
setContentView(R.layout....

inicializuj ten edit box

eNum = (EditText)findViewById(R.id.lNum);
Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
Nahoru Odpovědět
6.2.2021 16:26
/* I am not sure why this works but it fixes the problem */
Avatar
Jan Voženílek
Tvůrce
Avatar
Jan Voženílek:6.2.2021 17:26

Díky moc, funguje to

 
Nahoru Odpovědět
6.2.2021 17:26
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.