2011-09-13 23 views
-1

同じアクティビティでスピナーとボタンの両方をどのように使うことができるか質問したかったのですが、 SpinnerはonItemListenerでリッスンし、ボタンにもonClickリスナーがあります。だから私の場合、それはエラーを生成します。私のシナリオでは、選択した文字列をスピンナーから取得し、残りの値をeditTextsから取得し、サーバーにデータを送信するために「送信」を押します。しかし、私はこれらの2人のリスナーがお互いにとても親切ではないと思いますか?私はこの1つを入れてくださいAndroidスピナーとボタン

go.setOnClickListener(new OnClickListener(){ 
    public void onClick(View arg0) 
    { 
    } 

を:私は、ボタンのonclickリスナーを配置する必要がありその後

spinner.setOnItemSelectedListener(new OnItemSelectedListener() { 
    @Override 
    public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) { 
     // your code here 
    } 

    @Override 
    public void onNothingSelected(AdapterView<?> parentView) { 
     // your code here 
    } 
}); 

私はスピナー右のため、これらのメソッドを設定しますか? nothingSelectedメソッドの前またはそれ以降?

+1

:)お互いに非常に友好的だと思いますが、コンパイラから取得エラーを投稿してください。 –

答えて

2

私は、彼らが

spinner.setOnItemSelectedListener(new OnItemSelectedListener() { 
     @Override 
     public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) { 
      // your code here 
     } 

     @Override 
     public void onNothingSelected(AdapterView<?> parentView) { 
      // your code here 
     } 

    }); 

    go.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View arg0) {  
      // your code here     
     } 
    }); 
-1
public class StackOverflowActivity extends Activity { 

    private static final String[] SPINNER_DATA = new String[] { "Item 1", "Item 2" }; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     Spinner spn = (Spinner) findViewById(R.id.spinner1); 
     spn.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line, SPINNER_DATA)); 
     spn.setOnItemSelectedListener(new OnItemSelectedListener() { 

      @Override 
      public void onItemSelected(AdapterView<?> arg0, View arg1, 
        int arg2, long arg3) { 
       // TODO Auto-generated method stub 
       Toast.makeText(getApplicationContext(), 
         "Spinner.onItemSelected()", Toast.LENGTH_LONG).show(); 
      } 

      @Override 
      public void onNothingSelected(AdapterView<?> arg0) { 
       // TODO Auto-generated method stub 
       Toast.makeText(getApplicationContext(), 
         "Spinner.onNothingSelected()", Toast.LENGTH_LONG) 
         .show(); 
      } 
     }); 

     Button btn = (Button) findViewById(R.id.button1); 
     btn.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated method stub 
       Toast.makeText(getApplicationContext(), "Button.onClick()", 
         Toast.LENGTH_LONG).show(); 
      } 
     }); 

    } 
} 
関連する問題