0
新手在這裏再次,謝謝你在我的其他問題的幫助。 我有一切工作,但我的點擊按鈕,我需要應用哪個無線電ID或數組微調組從陣列和soi可以轉發到正確的頁面。 我主要有一個問題,與btn1如何正確地構造if語句後的& 任何指導一如既往,不勝感激。意圖,檢查onItemSelected和電臺檢查*
找到解決方案!!! 發表於底部! 字符串
<string name="prov_picker">Select a Province</string>
<string-array name="prov_array">
<item>-- Select Province --</item>
<item>British Columbia</item>
<item>Alberta</item>
<item>Saskatchewan</item>
<item>Manitoba</item>
<item>Ontario</item>
<item>Quebec</item>
<item>New Brunswick</item>
<item>Nova Scotia</item>
<item>Newfoundland</item>
</string-array>
<string-array name="prov1_array">
<item>-- Select Province --</item>
<item>British Columbia</item>
<item>Alberta</item>
<item>Saskatchewan</item>
<item>Manitoba</item>
<item>Ontario</item>
<item>Quebec</item>
<item>New Brunswick</item>
<item>Nova Scotia</item>
<item>Newfoundland</item>
</string-array>
<string name="radio1">Provincial</string>
<string name="radio2">Federal</string>
Java
mport android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.RadioGroup;
import android.widget.SpinnerAdapter;
import android.widget.Toast;
import android.widget.RadioGroup.OnCheckedChangeListener;
import android.widget.Spinner;
import android.view.View;
public class CanProvselect extends Activity implements OnCheckedChangeListener {
/** Called when the activity is first created. */
private RadioGroup RadioProvs;
private Button btn1;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.canprovselect);
btn1 = (Button)findViewById(R.id.button1);
RadioProvs = (RadioGroup) findViewById(R.id.rgProvs);
RadioProvs.setOnCheckedChangeListener(this);
}
public void onCheckedChanged(RadioGroup group, int checkedId) {
ArrayAdapter<CharSequence> adapter = null;
final Spinner spinner = (Spinner) findViewById(R.id.spinner);
switch (checkedId) {
case R.id.radio_1 :
adapter = ArrayAdapter.createFromResource(
this, R.array.prov_array, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
//spinner.setOnItemSelectedListener(new OnItemSelected(
// ));
break;
case R.id.radio_2 :
adapter = ArrayAdapter.createFromResource(
this, R.array.prov1_array, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
//spinner.setOnItemSelectedListener(new OnItemSelected(
// ));
break;
}
btn1.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
Spinner sp = (Spinner)findViewById(R.id.spinner);
String spinnerString = null;
spinnerString = sp.getSelectedItem().toString();
if (spinnerString.equalsIgnoreCase("British Columbia") && R.id.equals("radio_1")){
Intent myIntent = new Intent (v.getContext(), ProvBC.class);
startActivityForResult(myIntent, 0);
} else
if (spinnerString.equalsIgnoreCase("British Columbia") && R.id.equals("radio_2")){
Intent myIntent = new Intent (v.getContext(), FederalProvBC.class);
startActivityForResult(myIntent, 0);
}
}
});
}
}
解決方案
btn1.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
Spinner sp = (Spinner)findViewById(R.id.spinner);
String spinnerString = null;
spinnerString = sp.getSelectedItem().toString();
if (spinnerString.equalsIgnoreCase("British Columbia") && (checkedId == R.id.radio_1)){
Intent myIntent = new Intent (v.getContext(), ProvBC.class);
startActivityForResult(myIntent, 0);
} else
if (spinnerString.equalsIgnoreCase("British Columbia") && (checkedId == R.id.radio_2)){
Intent myIntent = new Intent (v.getContext(), FederalProvBC.class);
startActivityForResult(myIntent, 0);
}
}
});