2017-08-04 5 views
1

私はアンドロイドスピナーを作成しています。これは正しく表示されていますが、オプションの選択時に何も起こりません。なぜ 'if'コマンドが機能しないのですか?アンドロイドスピナーからテキストを取り戻すには?

public class Main2Activity extends AppCompatActivity { 
Spinner spinner; 
ArrayAdapter<CharSequence> adapter; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main2); 
    spinner= (Spinner) findViewById(R.id.spinner); 
    adapter=ArrayAdapter.createFromResource(this,R.array.spinner,android.R.layout.simple_spinner_item); 
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
    spinner.setAdapter(adapter); 
    spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 
     @Override 
     public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {//why 'if' command is not working? 
      if(adapterView.getItemAtPosition(i).toString().equals("Question 1")) 
      { 
       Intent intent=new Intent(Main2Activity.this,Main2Activity.class); 
      } 
      if(adapterView.getItemAtPosition(i).toString().equals("Question 2")) 
      { 
       Intent intent=new Intent(Main2Activity.this,main3Activity.class); 
      } 

     } 

     @Override 
     public void onNothingSelected(AdapterView<?> adapterView) { 

     } 
    });` 
+0

'adapterView.getItemAtPosition(i)'が返すものを確認するためにデバッグを試みましたか? 'adapter.get(i).toString()。equals(" Question 1 ")'を使用する方がより明確になります。質問の1の場合は 'if(i == 0)'、質問2の場合は 'if(i == 1)'となります。 –

答えて

0

あなたは意図して活動を開始されていません。これを行う:

 startActivity(intent); 

ifとelseの両方でインテント宣言と割り当てが行われた後。

+0

質問が解決したら、緑色のチェックマークをクリックして「承認済み」とマークしてください。これはまだ答えがない年上のSOに焦点を当てるのに役立ちます。 –

+0

ありがとう!私はそれを忘れてしまった。 – Srijan

関連する問題