Новый ответ
Вы, вероятно, пытаетесь сделать что-то вроде этого:
String price = Place_View.prices[spinner1.getSelectedItemPosition()];
String fare = Cars.SUVFare[spinner2.getSelectedItemPosition()];
String result="";
float calc1=Float.parseFloat(price); //Note: float
int calc2=Integer.parseInt(fare);
float calc3=calc1+calc2; //Note: float
result=Float.toString(calc3); //Note: Float
Price.setText(result);
Полный пример:
public class MainActivity extends AppCompatActivity {
TextView Price;
Spinner spinner1;
Spinner spinner2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Price = findViewById(R.id.tvPrice);
spinner1 = findViewById(R.id.spinner1);
spinner2 = findViewById(R.id.spinner2);
ArrayAdapter<String> adapterLocation = new ArrayAdapter<String>
(this, android.R.layout.simple_spinner_item, Place_View.locName);
adapterLocation.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner1.setAdapter(adapterLocation);
ArrayAdapter<String> adapterCar = new ArrayAdapter<String>
(this, android.R.layout.simple_spinner_item, Cars.SUV);
adapterCar.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner2.setAdapter(adapterCar);
spinner1.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
String price = Place_View.prices[spinner1.getSelectedItemPosition()];
String fare = Cars.SUVFare[spinner2.getSelectedItemPosition()];
String result="";
float calc1=Float.parseFloat(price);
int calc2=Integer.parseInt(fare);
float calc3=calc1+calc2;
result=Float.toString(calc3);
Price.setText(result);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
spinner2.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
String price = Place_View.prices[spinner1.getSelectedItemPosition()];
String fare = Cars.SUVFare[spinner2.getSelectedItemPosition()];
String result="";
float calc1=Float.parseFloat(price);
int calc2=Integer.parseInt(fare);
float calc3=calc1+calc2;
result=Float.toString(calc3);
Price.setText(result);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
}
}
Старый ответ
Как прокомментировал Быстрый ученик, мы могли бы быть более полезны, если вы опубликуете ошибку в своем журнале.
У меня есть пара вопросов по поводу вашего кода.
Вы уверены, что хотите использовать:
getSelectedItemPosition()
Поскольку это дает вам позицию нажатого элемента (0 для первогопункт, 1 для второго, и т. д.)
getItemAtPosition(position)
Выше функция даст вам значение в позиции нажатия.
Я не совсем понимаю, что делает эта строка
String price=Place_View.prices[spinner1.getSelectedItemPosition()];
Вы ссылаетесь на массив внутри представления?
Что такое цена?И вы ссылаетесь на это правильным образом?