делал калькулятор по заданному образцу и поймал ошибку в строке: 'calcDialogDisplay.setText("");' Сам код:
package com.example.buuuuum;
import android.content.pm.ActivityInfo;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity
implements View.OnClickListener {
private Button plus;
private Button minus;
private Button umnogenie;
private Button delenie;
private Button tochka;
private Button cteret;
private TextView text1;
private EditText vvod1;
private EditText vvod2;
private float a,b;
EditText calcDialogDisplay;
final static int CLEAR = 1;
final static int DONT_CLEAR = 0;
int clearCalcDisplay = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
tochka=(Button) findViewById(R.id.button2);
cteret=(Button) findViewById(R.id.button);
plus = (Button) findViewById(R.id.button9);
minus= (Button) findViewById(R.id.button10);
delenie= (Button) findViewById(R.id.button11);
umnogenie= (Button) findViewById(R.id.button12);
text1= (TextView) findViewById(R.id.textView);
vvod1= (EditText) findViewById(R.id.editText);
vvod2= (EditText) findViewById(R.id.editText2);
calcDialogDisplay = (EditText) findViewById(R.id.editText);
plus.setOnClickListener(this);
minus.setOnClickListener(this);
delenie.setOnClickListener(this);
umnogenie.setOnClickListener(this);
vvod1.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
if(s == null){
a= 0;
}
else {
a = Integer.parseInt(s.toString());
}
}
@Override
public void afterTextChanged(Editable s) {
}
});
vvod2.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
if(s == null){
b= 0;
}
else {
b = Integer.parseInt(s.toString());
}
}
@Override
public void afterTextChanged(Editable s) {
}
});
}
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.button9: text1.setText(String.valueOf(a+b));
break;
case R.id.button10: text1.setText(String.valueOf(a-b));
break;
case R.id.button11: text1.setText(String.valueOf(a/b));
break;
case R.id.button12: text1.setText(String.valueOf(a*b));
break;
if (clearCalcDisplay == CLEAR) {
calcDialogDisplay.setText("");
} else
clearCalcDisplay = DONT_CLEAR;
calcDialogDisplay.append("7");
}
}
}
@Эникейщик - вы не правы.
Ошибку выдает компилятор, так что дело не в значении CLEAR
, все гораздо проще, выражение:
if (clearCalcDisplay == CLEAR)
//blah-blah
Стоит после break
, то есть ни при каких условиях не будет выполнено, поэтому компилятор и ругается.
Виртуальный выделенный сервер (VDS) становится отличным выбором
Почему размер сетки не изменяется в зависимости от размера шрифта, поскольку в настоящее время текст, который находится в элементе header и footer,...
Ниже скрипт который работает как надо, он помогает мне вставлять элементы в div туда, где установлен курсорА если курсора нет, то содержимое...