Вот мой код, который работает отлично:Android Studio сбоя приложения, когда переменный перемещаются в базовый класс, а не окончательная внутри функции
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
final TextView numberTxtV = (TextView)findViewById(R.id.numberTextV);
assert numberTxtV!=null;
numberTxtV.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) {
}
@Override
public void afterTextChanged(Editable s) {
}
});
final TextView percentTextV=(TextView)findViewById(R.id.percentTextV);
final TextView resultTextV=(TextView)findViewById(R.id.resultTextV);
Button calcBtn = (Button)findViewById(R.id.button);
assert calcBtn != null;
calcBtn.setOnClickListener(new View.OnClickListener(){public void onClick(View v){
if(!numberTxtV.getText().toString().equals("") && !percentTextV.getText().toString().equals("")){
float result = Float.parseFloat(numberTxtV.getText().toString())*Float.parseFloat(percentTextV.getText().toString())/100;
assert resultTextV != null;
resultTextV.setText(Float.toString(result));}
}});
Когда я хватаю resultTextV и поставить вне функции как частный вар из класс, с которым работает приложение, почему это и как обойти его?
Как ваш крах приложения? Вы получаете ошибку или исключение? Обмен этой дополнительной информацией будет полезен, чтобы помочь вам лучше! –