Как использовать код метода вызова в Android Studio JavaAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Как использовать код метода вызова в Android Studio Java

Сообщение Anonymous »

У меня вопрос, что я делаю приложение калькулятора. Но я должен повторить код каждого редактирования с помощью (OnTextChanged).
Я хочу написать этот код в другом имени класса, и я использую метод вызова во всех AddTextChangedListener, как?

Код: Выделить всё

////////////////////////////////////////////////////////////////////////////

if (inputNumber1.getText().toString().isEmpty()){
int sum = 0;
textView1.setText(Integer.toString(sum));
}else{
int num1 = Integer.parseInt(inputNumber1.getText().toString());
if (num1 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num1 * 500000;
textView1.setText(Integer.toString(sum));
}
}
if (inputNumber2.getText().toString().isEmpty()){
int sum = 0;
textView2.setText(Integer.toString(sum));
}else{
int num2 = Integer.parseInt(inputNumber2.getText().toString());
if (num2 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num2 * 100000;
textView2.setText(Integer.toString(sum));
}
}
if (inputNumber3.getText().toString().isEmpty()){
int sum = 0;
textView3.setText(Integer.toString(sum));
}else{
int num3 = Integer.parseInt(inputNumber3.getText().toString());
if (num3 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num3 * 50000;
textView3.setText(Integer.toString(sum));
}
}
if (inputNumber4.getText().toString().isEmpty()){
int sum = 0;
textView4.setText(Integer.toString(sum));
}else{
int num4 = Integer.parseInt(inputNumber4.getText().toString());
if (num4 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num4 * 10000;
textView4.setText(Integer.toString(sum));
}
}
if (inputNumber5.getText().toString().isEmpty()){
int sum = 0;
textView5.setText(Integer.toString(sum));
}else{
int num5 = Integer.parseInt(inputNumber5.getText().toString());
if (num5 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num5 * 7500;
textView5.setText(Integer.toString(sum));
}
}
int sumnum1 = Integer.parseInt(textView1.getText().toString());
int sumnum2 = Integer.parseInt(textView2.getText().toString());
int sumnum3 = Integer.parseInt(textView3.getText().toString());
int sumnum4 = Integer.parseInt(textView4.getText().toString());
int sumnum5 = Integer.parseInt(textView5.getText().toString());
int allsum = sumnum1 + sumnum2 + sumnum3 + sumnum4 + sumnum5;
String words = NumberToWordsConverter.convert(allsum);
outputWords.setText(words);

////////////////////////////////////////////////////////////////////////////

Code

inputNumber1 = findViewById(R.id.inputNumber1);
inputNumber2 = findViewById(R.id.inputNumber2);
inputNumber3 = findViewById(R.id.inputNumber3);
inputNumber4 = findViewById(R.id.inputNumber4);
inputNumber5 = findViewById(R.id.inputNumber5);
textView1 = findViewById(R.id.textView1);
textView2 = findViewById(R.id.textView2);
textView3 = findViewById(R.id.textView3);
textView4 = findViewById(R.id.textView4);
textView5 = findViewById(R.id.textView5);
\\ ....................................

inputNumber1.addTextChangedListener(new android.text.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 (inputNumber1.getText().toString().isEmpty()){
int sum = 0;
textView1.setText(Integer.toString(sum));
}else{
int num1 = Integer.parseInt(inputNumber1.getText().toString());
if (num1 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num1 * 500000;
textView1.setText(Integer.toString(sum));
}
}
if (inputNumber2.getText().toString().isEmpty()){
int sum = 0;
textView2.setText(Integer.toString(sum));
}else{
int num2 = Integer.parseInt(inputNumber2.getText().toString());
if (num2 >  4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num2 * 100000;
textView2.setText(Integer.toString(sum));
}
}
if (inputNumber3.getText().toString().isEmpty()){
int sum = 0;
textView3.setText(Integer.toString(sum));
}else{
int num3 = Integer.parseInt(inputNumber3.getText().toString());
if (num3 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num3 * 50000;
textView3.setText(Integer.toString(sum));
}
}
if (inputNumber4.getText().toString().isEmpty()){
int sum = 0;
textView4.setText(Integer.toString(sum));
}else{
int num4 = Integer.parseInt(inputNumber4.getText().toString());
if (num4 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num4 * 10000;
textView4.setText(Integer.toString(sum));
}
}
if (inputNumber5.getText().toString().isEmpty()){
int sum = 0;
textView5.setText(Integer.toString(sum));
}else{
int num5 = Integer.parseInt(inputNumber5.getText().toString());
if (num5 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num5 * 7500;
textView5.setText(Integer.toString(sum));
}
}
int sumnum1 = Integer.parseInt(textView1.getText().toString());
int sumnum2 = Integer.parseInt(textView2.getText().toString());
int sumnum3 = Integer.parseInt(textView3.getText().toString());
int sumnum4 = Integer.parseInt(textView4.getText().toString());
int sumnum5 = Integer.parseInt(textView5.getText().toString());
int allsum = sumnum1 + sumnum2 + sumnum3 + sumnum4 + sumnum5;
String words = NumberToWordsConverter.convert(allsum);
outputWords.setText(words);
}
@Override
public void afterTextChanged(android.text.Editable s) {
// Called *after* the text is changed
}
});

inputNumber2.addTextChangedListener(new android.text.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 (inputNumber1.getText().toString().isEmpty()){
int sum = 0;
textView1.setText(Integer.toString(sum));
}else{
int num1 = Integer.parseInt(inputNumber1.getText().toString());
if (num1 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num1 * 500000;
textView1.setText(Integer.toString(sum));
}
}
if (inputNumber2.getText().toString().isEmpty()){
int sum = 0;
textView2.setText(Integer.toString(sum));
}else{
int num2 = Integer.parseInt(inputNumber2.getText().toString());
if (num2 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num2 * 100000;
textView2.setText(Integer.toString(sum));
}
}
if (inputNumber3.getText().toString().isEmpty()){
int sum = 0;
textView3.setText(Integer.toString(sum));
}else{
int num3 = Integer.parseInt(inputNumber3.getText().toString());
if (num3 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num3 * 50000;
textView3.setText(Integer.toString(sum));
}
}
if (inputNumber4.getText().toString().isEmpty()){
int sum = 0;
textView4.setText(Integer.toString(sum));
}else{
int num4 = Integer.parseInt(inputNumber4.getText().toString());
if (num4 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num4 * 10000;
textView4.setText(Integer.toString(sum));
}
}
if (inputNumber5.getText().toString().isEmpty()){
int sum = 0;
textView5.setText(Integer.toString(sum));
}else{
int num5 = Integer.parseInt(inputNumber5.getText().toString());
if (num5 >  4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num5 * 7500;
textView5.setText(Integer.toString(sum));
}
}
int sumnum1 = Integer.parseInt(textView1.getText().toString());
int sumnum2 = Integer.parseInt(textView2.getText().toString());
int sumnum3 = Integer.parseInt(textView3.getText().toString());
int sumnum4 = Integer.parseInt(textView4.getText().toString());
int sumnum5 = Integer.parseInt(textView5.getText().toString());
int allsum = sumnum1 + sumnum2 + sumnum3 + sumnum4 + sumnum5;
String words = NumberToWordsConverter.convert(allsum);
outputWords.setText(words);
}
@Override
public void afterTextChanged(android.text.Editable s) {
// Called *after* the text is changed
}
});

inputNumber3.addTextChangedListener(new android.text.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 (inputNumber1.getText().toString().isEmpty()){
int sum = 0;
textView1.setText(Integer.toString(sum));
}else{
int num1 = Integer.parseInt(inputNumber1.getText().toString());
if (num1 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num1 * 500000;
textView1.setText(Integer.toString(sum));
}
}
if (inputNumber2.getText().toString().isEmpty()){
int sum = 0;
textView2.setText(Integer.toString(sum));
}else{
int num2 = Integer.parseInt(inputNumber2.getText().toString());
if (num2 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num2 * 100000;
textView2.setText(Integer.toString(sum));
}
}
if (inputNumber3.getText().toString().isEmpty()){
int sum = 0;
textView3.setText(Integer.toString(sum));
}else{
int num3 = Integer.parseInt(inputNumber3.getText().toString());
if (num3 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num3 * 50000;
textView3.setText(Integer.toString(sum));
}
}
if (inputNumber4.getText().toString().isEmpty()){
int sum = 0;
textView4.setText(Integer.toString(sum));
}else{
int num4 = Integer.parseInt(inputNumber4.getText().toString());
if (num4 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num4 * 10000;
textView4.setText(Integer.toString(sum));
}
}
if (inputNumber5.getText().toString().isEmpty()){
int sum = 0;
textView5.setText(Integer.toString(sum));
}else{
int num5 = Integer.parseInt(inputNumber5.getText().toString());
if (num5 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num5 * 7500;
textView5.setText(Integer.toString(sum));
}
}
int sumnum1 = Integer.parseInt(textView1.getText().toString());
int sumnum2 = Integer.parseInt(textView2.getText().toString());
int sumnum3 = Integer.parseInt(textView3.getText().toString());
int sumnum4 = Integer.parseInt(textView4.getText().toString());
int sumnum5 = Integer.parseInt(textView5.getText().toString());
int allsum = sumnum1 + sumnum2 + sumnum3 + sumnum4 + sumnum5;
String words = NumberToWordsConverter.convert(allsum);
outputWords.setText(words);
}
@Override
public void afterTextChanged(android.text.Editable s) {
// Called *after* the text is changed
}
});

inputNumber4.addTextChangedListener(new android.text.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 (inputNumber1.getText().toString().isEmpty()){
int sum = 0;
textView1.setText(Integer.toString(sum));
}else{
int num1 = Integer.parseInt(inputNumber1.getText().toString());
if (num1 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num1 * 500000;
textView1.setText(Integer.toString(sum));
}
}
if (inputNumber2.getText().toString().isEmpty()){
int sum = 0;
textView2.setText(Integer.toString(sum));
}else{
int num2 = Integer.parseInt(inputNumber2.getText().toString());
if (num2 >  4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num2 * 100000;
textView2.setText(Integer.toString(sum));
}
}
if (inputNumber3.getText().toString().isEmpty()){
int sum = 0;
textView3.setText(Integer.toString(sum));
}else{
int num3 = Integer.parseInt(inputNumber3.getText().toString());
if (num3 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num3 * 50000;
textView3.setText(Integer.toString(sum));
}
}
if (inputNumber4.getText().toString().isEmpty()){
int sum = 0;
textView4.setText(Integer.toString(sum));
}else{
int num4 = Integer.parseInt(inputNumber4.getText().toString());
if (num4 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num4 * 10000;
textView4.setText(Integer.toString(sum));
}
}
if (inputNumber5.getText().toString().isEmpty()){
int sum = 0;
textView5.setText(Integer.toString(sum));
}else{
int num5 = Integer.parseInt(inputNumber5.getText().toString());
if (num5 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num5 * 7500;
textView5.setText(Integer.toString(sum));
}
}
int sumnum1 = Integer.parseInt(textView1.getText().toString());
int sumnum2 = Integer.parseInt(textView2.getText().toString());
int sumnum3 = Integer.parseInt(textView3.getText().toString());
int sumnum4 = Integer.parseInt(textView4.getText().toString());
int sumnum5 = Integer.parseInt(textView5.getText().toString());
int allsum = sumnum1 + sumnum2 + sumnum3 + sumnum4 + sumnum5;
String words = NumberToWordsConverter.convert(allsum);
outputWords.setText(words);
}
@Override
public void afterTextChanged(android.text.Editable s) {
// Called *after* the text is changed
}
});

inputNumber5.addTextChangedListener(new android.text.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 (inputNumber1.getText().toString().isEmpty()){
int sum = 0;
textView1.setText(Integer.toString(sum));
}else{
int num1 = Integer.parseInt(inputNumber1.getText().toString());
if (num1 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num1 * 500000;
textView1.setText(Integer.toString(sum));
}
}
if (inputNumber2.getText().toString().isEmpty()){
int sum = 0;
textView2.setText(Integer.toString(sum));
}else{
int num2 = Integer.parseInt(inputNumber2.getText().toString());
if (num2 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num2 * 100000;
textView2.setText(Integer.toString(sum));
}
}
if (inputNumber3.getText().toString().isEmpty()){
int sum = 0;
textView3.setText(Integer.toString(sum));
}else{
int num3 = Integer.parseInt(inputNumber3.getText().toString());
if (num3 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num3 * 50000;
textView3.setText(Integer.toString(sum));
}
}
if (inputNumber4.getText().toString().isEmpty()){
int sum = 0;
textView4.setText(Integer.toString(sum));
}else{
int num4 = Integer.parseInt(inputNumber4.getText().toString());
if (num4 > 4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num4 * 10000;
textView4.setText(Integer.toString(sum));
}
}
if (inputNumber5.getText().toString().isEmpty()){
int sum = 0;
textView5.setText(Integer.toString(sum));
}else{
int num5 = Integer.parseInt(inputNumber5.getText().toString());
if (num5 >  4294){
Toast.makeText(getApplicationContext(), "Cannot write more than 4294.", Toast.LENGTH_LONG).show();
}else{
int sum = num5 * 7500;
textView5.setText(Integer.toString(sum));
}
}
int sumnum1 = Integer.parseInt(textView1.getText().toString());
int sumnum2 = Integer.parseInt(textView2.getText().toString());
int sumnum3 = Integer.parseInt(textView3.getText().toString());
int sumnum4 = Integer.parseInt(textView4.getText().toString());
int sumnum5 = Integer.parseInt(textView5.getText().toString());
int allsum = sumnum1 + sumnum2 + sumnum3 + sumnum4 + sumnum5;
String words = NumberToWordsConverter.convert(allsum);
outputWords.setText(words);
}
@Override
public void afterTextChanged(android.text.Editable s) {
// Called *after* the text is changed
}
});
Я хочу написать код один раз и поместить его в каждый редактор.

Подробнее здесь: https://stackoverflow.com/questions/795 ... tudio-java
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»