У меня есть программа для Android, которая конвертирует валюты. Проблема в том, что валюты не конвертируются. Вот мой код.Конвертер валют не работает в Android
package com.example.currencyconverter;
import java.text.DecimalFormat;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends Activity
implements OnClickListener,
OnItemSelectedListener{
EditText edittextdollars;
EditText edittexteuros;
TextView dollars;
TextView euros;
RadioButton dtoe;
RadioButton etod;
RadioGroup radiogroup;
Spinner spinner1;
Spinner spinner2;
Button calculate;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
addListenerOnButton();
}
private void addListenerOnButton() {
spinner1 = (Spinner) findViewById(R.id.spinner1);
spinner2 = (Spinner) findViewById(R.id.spinner2);
calculate = (Button) findViewById(R.id.calculate);
}
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
@Override
public void onClick(View v) {
String text = spinner1.getSelectedItem().toString().trim();
String text2 = spinner2.getSelectedItem().toString().trim();
if (text.equalsIgnoreCase("Dollar") && text2.equalsIgnoreCase("Euro")) {
convertDollarstoEuros();
}
Toast.makeText(MainActivity.this,
"OnClickListener : " +
"\nSpinner 1 : "+ String.valueOf(spinner1.getSelectedItem()) +
"\nSpinner 2 : "+ String.valueOf(spinner2.getSelectedItem()),
Toast.LENGTH_SHORT).show();
}
public void convertDollarstoEuros() {
double val = Double.parseDouble(edittextdollars.getText().toString());
DecimalFormat df = new DecimalFormat("###.##");
edittexteuros.setText(df.format(val*0.77));
}
protected void convertEurostoDollars() {
double val = Double.parseDouble(edittexteuros.getText().toString());
DecimalFormat df = new DecimalFormat("###.##");
edittextdollars.setText(df.format(val*1.3));
}
protected void convertEurostoEuros() {
double val = Double.parseDouble(edittexteuros.getText().toString());
DecimalFormat df = new DecimalFormat("###.##");
edittextdollars.setText(df.format(val*1));
}
protected void convertDollarstoDollars() {
double val = Double.parseDouble(edittextdollars.getText().toString());
DecimalFormat df = new DecimalFormat("###.##");
edittexteuros.setText(df.format(val*1));
}
}
Тост часть работает, но конвертация валюты не является (посмотрите на функцию onClick). У меня есть два прядильщика. Либо тост просто показывает, либо когда я нажимаю вычисление, приложение рушится.
Когда вопрос закрыт как слишком локализованный, это означает, что этот вопрос настолько специфичен для вашей индивидуальной проблемы, что он не полезен для других людей. Пример «локализованный вопрос» заключается в следующем: «Привет, Рогодуд, есть ли теперь красная машина за окном?». Как бы вы ответили на этот вопрос? Был ли автомобиль когда-либо там? Это движется? О каком окне я говорю? Вопрос настолько узкий, что он спамает сайт, а кто-то еще, кто приземляется на этом сайте, усугубляется тем, что они не могут найти то, что им нужно. Поэтому постарайтесь сделать вопросы более общими. –
Хорошо, извините, это был мой первый вопрос о SO. С тех пор я многому научился, и теперь я знаю, как написать вопрос о SO. Кроме того, как мой вопрос получает такое внимание через 6 месяцев? – Rohodude
Я видел ваше последнее сообщение о добавлении целых чисел в список. Я возвращаюсь вовремя, чтобы убедиться, что вы не рассылаете спам с бесполезными артефактами. Если вы хотите узнать больше о том, что нужно, чтобы стать модератором, вы можете записать эти подкасты на CD и послушать их: https://soundcloud.com/stack-exchange/ Это основатели этого сайта, Джефф и Джоэл, и они дают советы элиты о том, как получить репутацию быстрее всех и как работать на пути к статусу модератора. И множество советов о том, как быть программистом, который мог бы построить этот сайт. –