【发布时间】:2014-10-06 15:16:15
【问题描述】:
我有两个微调器和一个按钮的活动。第二个微调器的值会根据第一个微调器中选择的项目而变化。
现在,我想做的是在按下“确定”按钮后根据第二个微调器中的选择启动一个活动或另一个活动。
这里是主要活动的代码:
public class UniversityActivity extends Activity implements OnItemSelectedListener {
Spinner s1, s2;
Button acceptbutton;
@Override
protected void onCreate(Bundle savedInstanceState) {
getActionBar().setDisplayHomeAsUpEnabled(true);
super.onCreate(savedInstanceState);
setContentView(R.layout.university_layout);
addListenerOnButton();
s1 = (Spinner) findViewById(R.id.spinner1);
s2 = (Spinner) findViewById(R.id.spinner2);
s1.setOnItemSelectedListener(this);
}
public void addListenerOnButton() {
final Context context = this;
acceptbutton = (Button) findViewById(R.id.accept);
acceptbutton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
Intent intent = new Intent(context, DegreeActivity.class);
startActivity(intent);
overridePendingTransition(R.anim.slide_in, R.anim.slide_out);
}
});
}
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
String sp1= String.valueOf(s1.getSelectedItem());
if(sp1.contentEquals("Universidad Politécnica de Madrid")) {
List<String> list = new ArrayList<String>();
list.add("Grado en Ingeniería Aeronáutica");
list.add("Grado en Ingeniería Geológica");
list.add("Grado en Ingeniería Informática");
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, list);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
dataAdapter.notifyDataSetChanged();
s2.setAdapter(dataAdapter);
}
if(sp1.contentEquals("Universidad Autónoma de Madrid")) {
List<String> list = new ArrayList<String>();
list.add("Grado en Historia");
list.add("Grado en Ingeniería Química");
list.add("Grado en Ingeniería en Tecnologías Industriales");
ArrayAdapter<String> dataAdapter2 = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, list);
dataAdapter2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
dataAdapter2.notifyDataSetChanged();
s2.setAdapter(dataAdapter2);
}
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
}
这是它的布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<!-- Select university -->
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="8dp"
android:text="@string/selectuniv"
android:textColor="@color/yellow" />
<!-- Spinner 1 Dropdown -->
<Spinner
android:id="@+id/spinner1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
android:layout_marginTop="5dp"
android:entries="@array/univ" />
<!-- Select degree -->
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="8dip"
android:text="@string/selectdeg"
android:textColor="@color/yellow" />
<!-- Spinner 2 Dropdown -->
<Spinner
android:id="@+id/spinner2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp" />
<!-- Accept button -->
<Button
android:id="@+id/accept"
android:layout_width="250dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="10dp"
android:textSize="13sp"
android:textColor="#ffffff"
android:text="@string/accept"
android:background="@drawable/custombutton2" />
</LinearLayout>
我希望你能帮助我。非常感谢。
【问题讨论】:
-
从微调器中获取选定的文本并检查何时单击接受按钮
标签: android button android-activity spinner