Note that there are some explanatory texts on larger screens.

plurals
  1. POEditText.getText().toString() crashes
    primarykey
    data
    text
    <p>In my android application , I have 3 dialogue boxes in which the user puts info into 3 editTexts and it will display the one of the data onto another class/page after it randomly picks which data to choose. </p> <p>This is my mainClass</p> <pre><code>public class MainActivity extends Activity { //Variables are displayed in this area String choices[] = new String[3]; //EditText editText; //EditText editText2; //EditText editText3; Button mainButton ; Random rand = new Random(); int finalChoice; String displayChoice = ""; EditText editText ; EditText editText2; EditText editText3; EditText editText4; String test; int count = 3; //--------------------------- -------------------------------------------------------- @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //Makes Button setContentView(R.layout.activity_main); declareTextBox(); setButton(); String choice1 = editText.getText().toString(); String choice2 = editText2.getText().toString(); String choice3 = editText3.getText().toString(); choices[0] = choice1; //pass from click button to method. choices[1] = choice2; choices[2] = choice3; finalChoice =rand.nextInt(2); } public void setButton() { final Button mainbutton = (Button) findViewById(R.id.mainButton); mainbutton.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { test = ((EditText) findViewById(R.id.editText4)).getText().toString(); // count++; //retChoice(); // loadScreen(); Intent i = new Intent(MainActivity.this, resultScreen.class); i.putExtra("display" , displayChoice); Intent intent = new Intent(MainActivity.this,loadingScreen.class); //start the second Activity MainActivity.this.startActivity(intent); } }); } public void declareTextBox() { editText = (EditText) findViewById(R.id.editText1); editText2 = (EditText) findViewById(R.id.editText2); editText3 = (EditText) findViewById(R.id.editText3); } public void getString(String finalChoice) { finalChoice = displayChoice; } public String retChoice() { displayChoice = choices[finalChoice]; return displayChoice; } public void clearText() { editText.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub editText.setText(" "); } }); editText2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub editText2.setText(" "); } }); editText3.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub editText3.setText(" "); } }); } public void getText2() { } public void getText() { } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } } </code></pre> <p>This is my Display class : </p> <pre><code>public class resultScreen extends Activity { MainActivity ma = new MainActivity(); //Method supposedly retrieves the string data from MainActivity Class but somehow displayed null instead. //Find a way to keep the string variable when transfering from one class to another class. String finalResult = ma.retChoice(); public void onCreate(Bundle resultScreen){ super.onCreate(resultScreen); setContentView(R.layout.resultscreen); //ma.displayChoice.toString(); String str = finalResult; TextView text = (TextView) findViewById(R.id.textView1); text.setText(str); final Button backbutton = (Button) findViewById(R.id.backButton); backbutton.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { Intent intent = new Intent(resultScreen.this,MainActivity.class); resultScreen.this.startActivity(intent); } }); } } </code></pre> <p>And this is my loading screen class right after the main button is clicked</p> <pre><code>public class loadingScreen extends Activity{ protected void onCreate(Bundle loadingScreen) { // TODO Auto-generated method stub super.onCreate(loadingScreen); setContentView(R.layout.loadingscreen); //If sound clip 20 sec long we don't want to carryit outside next class // A timer thread looking for "run" method Thread timer = new Thread() { public void run() { try { //this is how many mil sec sleep(8000); } catch (InterruptedException e) { e.printStackTrace(); } finally { Intent intent = new Intent(loadingScreen.this, resultScreen.class); loadingScreen.this.startActivity(intent); loadingScreen.this.finish(); } } }; timer.start(); } </code></pre> <p>}</p> <p>My app crashes a few seconds into the loading screen when the program attempts to display the data on the resultScreen.</p> <p>Here's my logCat </p> <pre><code> 05-17 22:32:54.446: D/AndroidRuntime(1181): Shutting down VM 05-17 22:32:54.446: W/dalvikvm(1181): threadid=1: thread exiting with uncaught exception (group=0x40a70930) 05-17 22:32:54.636: E/AndroidRuntime(1181): FATAL EXCEPTION: main 05-17 22:32:54.636: E/AndroidRuntime(1181): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.choiceprototest/com.example.choiceprototest.resultScreen}: java.lang.NullPointerException 05-17 22:32:54.636: E/AndroidRuntime(1181): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2106) 05-17 22:32:54.636: E/AndroidRuntime(1181): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230) 05-17 22:32:54.636: E/AndroidRuntime(1181): at android.app.ActivityThread.access$600(ActivityThread.java:141) 05-17 22:32:54.636: E/AndroidRuntime(1181): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234) 05-17 22:32:54.636: E/AndroidRuntime(1181): at android.os.Handler.dispatchMessage(Handler.java:99) 05-17 22:32:54.636: E/AndroidRuntime(1181): at android.os.Looper.loop(Looper.java:137) 05-17 22:32:54.636: E/AndroidRuntime(1181): at android.app.ActivityThread.main(ActivityThread.java:5039) 05-17 22:32:54.636: E/AndroidRuntime(1181): at java.lang.reflect.Method.invokeNative(Native Method) 05-17 22:32:54.636: E/AndroidRuntime(1181): at java.lang.reflect.Method.invoke(Method.java:511) 05-17 22:32:54.636: E/AndroidRuntime(1181): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) 05-17 22:32:54.636: E/AndroidRuntime(1181): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560) 05-17 22:32:54.636: E/AndroidRuntime(1181): at dalvik.system.NativeStart.main(Native Method) 05-17 22:32:54.636: E/AndroidRuntime(1181): Caused by: java.lang.NullPointerException 05-17 22:32:54.636: E/AndroidRuntime(1181): at com.example.choiceprototest.MainActivity.retChoice(MainActivity.java:101) 05-17 22:32:54.636: E/AndroidRuntime(1181): at com.example.choiceprototest.resultScreen.&lt;init&gt;(resultScreen.java:18) 05-17 22:32:54.636: E/AndroidRuntime(1181): at java.lang.Class.newInstanceImpl(Native Method) 05-17 22:32:54.636: E/AndroidRuntime(1181): at java.lang.Class.newInstance(Class.java:1319) 05-17 22:32:54.636: E/AndroidRuntime(1181): at android.app.Instrumentation.newActivity(Instrumentation.java:1054) 05-17 22:32:54.636: E/AndroidRuntime(1181): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2097) 05-17 22:32:54.636: E/AndroidRuntime(1181): ... 11 more 05-17 22:33:03.385: I/Process(1181): Sending signal. PID: 1181 SIG: 9 05-17 22:33:05.435: E/Trace(1204): error opening trace file: No such file or directory (2) </code></pre> <p>Thanks guys. </p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload