Hejo, znowu ja...
Poprawiłem to tak jak Pisałeś, w sensie te gettery i dodałem je do swojego Activity, lecz jest jeden problem... Nie ważne który kolor wybiorę to i tak pojawia mi się czarny... 🙁
To tak dla sprawdzenia dodaje swoje linijki 😃
Spoiler
ResistorActivity.java
package com.example.pracainzynierska;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.Spinner;
import android.widget.TextView;
import java.util.ArrayList;
import java.util.List;
public class ResistorActivity extends AppCompatActivity {
TextView widok;
Button przelicz;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.rez);
widok = findViewById(R.id.widok);
przelicz = findViewById(R.id.button);
List<Resistor> Resistor = new ArrayList<>();
Resistor.add(new Resistor("Czarny", 0, 0, 1, null));
Resistor.add(new Resistor("Brązowy", 1, 1, 10, "+/- 1%"));
Resistor.add(new Resistor("Czerwony", 2, 2, 100, "+/- 2%"));
Resistor.add(new Resistor("Pomarańczowy", 3, 3, 1000, null));
Resistor.add(new Resistor("Żółty", 4, 4, 10000, null));
Resistor.add(new Resistor("Zielony", 5, 5, 100000, "+/- 0,5%"));
Resistor.add(new Resistor("Niebieski", 6, 6, 1000000, "+/-0,25%"));
Resistor.add(new Resistor("Fioletowy", 7, 7, 10000000, "+/- 0,1%"));
Resistor.add(new Resistor("Szary", 8, 8, 0, "0,05%"));
Resistor.add(new Resistor("Biały", 9, 9, 0, null));
Resistor.add(new Resistor("Złoty", 0, 0, 0.1 , "+/- 5%"));
Resistor.add(new Resistor("Srebrny", 0, 0, 0.01, "+/- 10%"));
final Spinner spinner = findViewById(R.id.kolor1);
final ArrayAdapter<Resistor> adapter = new ArrayAdapter<Resistor>(this, android.R.layout.simple_spinner_dropdown_item, Resistor);
spinner.setAdapter(adapter);
final Resistor r1 = (com.example.pracainzynierska.Resistor) spinner.getSelectedItem();
final Spinner spinner1 = findViewById(R.id.kolor2);
final ArrayAdapter<Resistor> adapter1 = new ArrayAdapter<Resistor>(this, android.R.layout.simple_spinner_dropdown_item, Resistor);
spinner1.setAdapter(adapter1);
final Resistor r2 = (com.example.pracainzynierska.Resistor) spinner1.getSelectedItem();
final Spinner spinner2 = findViewById(R.id.mnoznik);
final ArrayAdapter<Resistor> adapter2 = new ArrayAdapter<Resistor>(this, android.R.layout.simple_spinner_dropdown_item, Resistor);
spinner2.setAdapter(adapter2);
final Resistor r3 = (com.example.pracainzynierska.Resistor) spinner2.getSelectedItem();
final Spinner spinner3 = findViewById(R.id.tolerancja);
final ArrayAdapter<Resistor> adapter3 = new ArrayAdapter<Resistor>(this, android.R.layout.simple_spinner_dropdown_item, Resistor);
spinner3.setAdapter(adapter3);
final Resistor r4 = (com.example.pracainzynierska.Resistor) spinner2.getSelectedItem();
przelicz.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
r1.getpasek1();
r2.getpasek2();
r3.getv();
r4.geto();
widok.setText(r1.getpasek2()+" "+ r2.getpasek2()+" "+ r3.getv()+ " "+ r4.geto() );
}
});
}
}
Resistor.java
package com.example.pracainzynierska;
public class Resistor {
//public Object getpasek1; <- getPasek1 to będzie metoda a nie pole
String pasek;
int pasek1;
int pasek2;
double v;
String o;
//Konstruktor też nie może być pusty! W konstruktorze konfigurujesz swój obiekt :)
public Resistor(String pasek, int pasek1, int pasek2, double v, String o) {
this.pasek = pasek;
this.pasek1 = pasek1;
this.pasek2 = pasek2;
this.v = v;
this.o = o;
}
@Override
public String toString() {
return this.pasek; // Zwracamy to co ma się wyświetlić
}
// Gettery - zwracamy to o czym mówi nazwa metody
public int getpasek1() {
return this.pasek1;
}
public int getpasek2() {
return this.pasek2;
}
public double getv() {
return this.v;
}
public String geto() {
return this.o;
}
//reszte getterów spróbuj sam napisać ;)
}
Na zdjęciu jest zdjęcie z podanego kodu... W sensie odpaliłem na tym kodzie i wyszło takie coś ?