При попытке запуска приложения на смартфоне оно тут же падает:
public class MainActivity extends AppCompatActivity {
Button btnOne,btnTwo,btnThree,btnFour,btnFive,btnSix,btnSeven,btnEight,btnNine,btnZero;
TextView tvProcessor, tvResult;
String processor;
Button btnClear,btnEqual;
Button btnPlus,btnMinus,btnMul,btnDivide;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnClear = (Button)findViewById(R.id.btnClear);
tvProcessor = (TextView)findViewById(R.id.tvProcessor);
tvResult = (TextView)findViewById(R.id.tvResult);
btnOne = (Button)findViewById(R.id.btnOne);
btnTwo = (Button)findViewById(R.id.btnTwo);
btnThree = (Button)findViewById(R.id.btnThree);
btnFour = (Button)findViewById(R.id.btnFour);
btnFive = (Button)findViewById(R.id.btnFive);
btnSix = (Button)findViewById(R.id.btnSix);
btnSeven = (Button)findViewById(R.id.btnSeven);
btnEight = (Button)findViewById(R.id.btnEight);
btnNine = (Button)findViewById(R.id.btnNine);
btnZero = (Button)findViewById(R.id.btnZero);
btnPlus = (Button)findViewById(R.id.btnPlus);
btnMinus = (Button)findViewById(R.id.btnMinus);
btnMinus = (Button)findViewById(R.id.btnMinus);
btnMinus = (Button)findViewById(R.id.btnMinus);
btnEqual = (Button)findViewById(R.id.btnEqual);
/**************************************************
* Button Clear OnClickListener
**************************************************/
btnClear.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
tvProcessor.setText("");
tvResult.setText("");
}
});
/**************************************************
* Button Numbers OnClickListener
**************************************************/
btnOne.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
processor = tvProcessor.getText().toString();
tvProcessor.setText(processor + "1");
}
});
btnTwo.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
processor = tvProcessor.getText().toString();
tvProcessor.setText(processor + "2");
}
});
btnThree.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
processor = tvProcessor.getText().toString();
tvProcessor.setText(processor + "3");
}
});
btnFour.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
processor = tvProcessor.getText().toString();
tvProcessor.setText(processor + "4");
}
});
btnFive.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
processor = tvProcessor.getText().toString();
tvProcessor.setText(processor + "5");
}
});
btnSix.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
processor = tvProcessor.getText().toString();
tvProcessor.setText(processor + "6");
}
});
btnSeven.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
processor = tvProcessor.getText().toString();
tvProcessor.setText(processor + "7");
}
});
btnEight.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
processor = tvProcessor.getText().toString();
tvProcessor.setText(processor + "9");
}
});
btnZero.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
processor = tvProcessor.getText().toString();
tvProcessor.setText(processor + "0");
}
/**************************************************
* Button Math OnClickListener
**************************************************/
});
btnPlus.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
processor = tvProcessor.getText().toString();
tvProcessor.setText(processor + "+");
}
});
btnMinus.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
processor = tvProcessor.getText().toString();
tvProcessor.setText(processor + "-");
}
});
btnMul.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
processor = tvProcessor.getText().toString();
tvProcessor.setText(processor + "x");
}
});
btnDivide.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
processor = tvProcessor.getText().toString();
tvProcessor.setText(processor + "/");
}
});
/**************************************************
* Button Equeal OnClickListener
**************************************************/
btnEqual.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
processor = tvProcessor.getText().toString();
processor = processor.replaceAll("x", "*");
org.mozilla.javascript.Context rhino = org.mozilla.javascript.Context.enter();
rhino.setOptimizationLevel(-1);
String result;
try {
Scriptable scope = rhino.initSafeStandardObjects();
result = rhino.evaluateString(scope, processor,"JavaScript",1,null).toString();
}catch (Exception e){
result = "Error";
}
tvResult.setText(result);
}
});
}
}
12-19 18:27:31.717 12948-12948/com.example.azot2.mycalculator E/AndroidRuntime: FATAL EXCEPTION: main Process: com.example.azot2.mycalculator, PID: 12948 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.azot2.mycalculator/com.example.azot2.mycalculator.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on a null object reference at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2984) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3045) at android.app.ActivityThread.-wrap14(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1642) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6776) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1518) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1408) Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on a null object reference at com.example.azot2.mycalculator.MainActivity.onCreate(MainActivity.java:162) at android.app.Activity.performCreate(Activity.java:6956) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1126) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2927) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3045) at android.app.ActivityThread.-wrap14(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1642) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6776) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1518) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1408)
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Есть активити, в которой могут переключаться фрагментыПри переключении фрагмента должен меняться title у активити
Здравствуйте, в приведенном ниже коде, не могу понять, почему при формировании объекта Random, в параметре указывается 47Если я правильно понял,...
Как можно заменить текущий фрагмент в ViewPager? Например, нужно заменить класс фрагмента, причем из другого класса, как можно это реализовать?