I am completely new to Android programming. I am having some issues with the first ever app I am making. Every time I run the app, a message pops up saying "Unfortunately, MyNewApp3 has stopped" on my mobile phone (which I am using to test and debug my app). This error doesn't even let my app open. How do I solve this problem?
Here is my code:
package newapp.com.bipl.mynewapp3;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;
import android.widget.Toast;
public class Page2 extends AppCompatActivity {
RadioGroup Rg;
RadioButton B;
RadioButton O;
RadioButton H;
EditText Dec;
TextView Ans;
int Num;
String Result;
int b;
int c;
char z;
String s;
String d;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_page2);
Toast.makeText(getBaseContext(),"Successful Login",Toast.LENGTH_LONG).show();
Rg = (RadioGroup) findViewById(R.id.RGroup);
B = (RadioButton) findViewById(R.id.Binary_rb);
O = (RadioButton) findViewById(R.id.Octal_rb);
H = (RadioButton) findViewById(R.id.Hexa_rb);
Dec = (EditText) findViewById(R.id.NumEntry_txt);
Ans = (TextView) findViewById(R.id.Answer_lbl);
Num = Integer.parseInt(Dec.getText().toString());
//Num = 161;
if(B.isSelected())
Binary(Num);
if(O.isSelected())
Octal(Num);
if (H.isSelected())
Hexal(Num);
}
/* public void Conversion(){
if(B.isSelected())
Binary(Num);
if(O.isSelected())
Octal(Num);
if (H.isSelected())
Hexal(Num);
}*/
public void Binary(int a){
while(b > 0){
c = a % 2;
b = a/2;
d = "" + c;
s = d.concat(s);
a = b;
}
Result = s;
Toast.makeText(getBaseContext(), "" + Result, Toast.LENGTH_SHORT).show();
Ans.setText("" + Result);
}
public void Octal(int a){
while(b > 0){
c = a % 8;
b = a/8;
d = "" + c;
s = d.concat(s);
a = b;
}
Result = s;
Toast.makeText(getBaseContext(), "" + Result, Toast.LENGTH_SHORT).show();
Ans.setText("" + Result);
}
public void Hexal(int a){
while(b > 0){
c = a % 16;
b = a/16;
if(c>9){
switch (c){
case 10 : z = 'A';
break;
case 11 : z = 'B';
break;
case 12 : z = 'C';
break;
case 13 : z = 'D';
break;
case 14 : z = 'E';
break;
case 15 : z = 'F';
break;
}
d = "" + z;
}
else
d = "" + c;
s = d.concat(s);
a = b;
}
Result = s;
Toast.makeText(getBaseContext(), "" + Result, Toast.LENGTH_SHORT).show();
Ans.setText("" + Result);
}
}
My LogCat output (this I have posted after having seen people advise others to put the Logcat output; I don't know what it is used for) :
01-12 11:45:52.559 15441-15441/newapp.com.bipl.mynewapp3 V/TextView: stopSelectionActionMode() 01-12 11:45:52.572 15441-15441/newapp.com.bipl.mynewapp3 D/AndroidRuntime: Shutting down VM 01-12 11:45:52.573 15441-15441/newapp.com.bipl.mynewapp3 E/AndroidRuntime: FATAL EXCEPTION: main Process: newapp.com.bipl.mynewapp3, PID: 15441 java.lang.RuntimeException: Unable to start activity ComponentInfo{newapp.com.bipl.mynewapp3/newapp.com.bipl.mynewapp3.Page2}: java.lang.NumberFormatException: Invalid int: "" at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2521) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2595) at android.app.ActivityThread.access$800(ActivityThread.java:178) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1470) at android.os.Handler.dispatchMessage(Handler.java:111) at android.os.Looper.loop(Looper.java:194) at android.app.ActivityThread.main(ActivityThread.java:5631) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:959) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:754) Caused by: java.lang.NumberFormatException: Invalid int: "" at java.lang.Integer.invalidInt(Integer.java:138) at java.lang.Integer.parseInt(Integer.java:358) at java.lang.Integer.parseInt(Integer.java:334) at newapp.com.bipl.mynewapp3.Page2.onCreate(Page2.java:41) at android.app.Activity.performCreate(Activity.java:6092) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1112) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2468) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2595) at android.app.ActivityThread.access$800(ActivityThread.java:178) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1470) at android.os.Handler.dispatchMessage(Handler.java:111) at android.os.Looper.loop(Looper.java:194) at android.app.ActivityThread.main(ActivityThread.java:5631) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:959) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:754) 01-12 11:50:52.616 15441-15441/newapp.com.bipl.mynewapp3 I/Process: Sending signal. PID: 15441 SIG: 9