私は2つのspinners
を持っています。私はspinnerA
からstring
の値を得ようとしており、これらの値をspinnerB
から他の値を表示するための条件として使用しようとしています。これらの値はデータベース(mySql)から取得します。 コードの一部は以下のとおりです。構文は正しいです(Android Studioはエラーを表示しません)が、エミュレータで実行すると何も起こりません。つまり、Toast
は表示されません。条件付き操作(if文)でSpinnerの選択項目を使用してください
問題の任意のアイデアや、それを行うための最も簡単な方法は何ですか?
PS:Toast
ここに値が保存されているかどうかを確認するだけです。
public class ReviewActivity extends AppCompatActivity {
Spinner sp1, sp2;
TextView companyName;
Toolbar toolbar;
ArrayList<String> trajets = new ArrayList<String>();
ArrayList<String> horaires = new ArrayList<String>();
ArrayAdapter<String> adapter1, adapter2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_review);
sp1 = (Spinner) findViewById(R.id.spinner_trajet);
sp2 = (Spinner) findViewById(R.id.spinner_horaire);
adapter1=new ArrayAdapter<String>(this,R.layout.travel_spinner_layout,R.id.txt,trajets);
sp1.setAdapter(adapter1);
sp1.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View arg1, int arg2, long arg3) {
String travel = sp1.getSelectedItem().toString();
if (travel == "NY - CA") {
Toast.makeText(ReviewActivity.this, "Yaounde - Douala", Toast.LENGTH_LONG).show();
} else if (travel == "CA - NY") {
Toast.makeText(ReviewActivity.this, "Douala - Yaounde", Toast.LENGTH_LONG).show();
}
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {}
});
== use .equals()メソッドを使用して文字列を比較することはできません! –