Spinner没有填充给定的字符串数组

时间:2012-06-27 05:41:28

标签: android android-layout android-intent android-source android-spinner

我必须制作一个Android应用程序。它是关于为大学生计算Bunks。 所以我想这样做:

Spinner 1有

选择分支

  1. ME
  2. CE
  3. IT
  4. EE
  5. 选择学期

    第一
    第二
    第三
    第四

    现在,如果学生选择ME和第三学期,那么他的第三学期科目应该来 像:

    输入主题的Bunks:

    ABC1:EditText
    ABC2:EditText
    ABC3:EditText
    ABC4:EditText
    ABC4:EditText

    并且用户的这个输入应该是出勤百分比的逻辑,并且答案应该出现在具有相同主题名称的另一页面上。

    有人可以帮我吗?

    修改

    我的 Main.xml

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout
    xmlns:android="schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >
    <TextView 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="@string/hello" />
    <Spinner
    android:id="@+id/spinner1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    />
    </LinearLayout>
    

1 个答案:

答案 0 :(得分:0)

用于微调器的XML:

<Spinner
android:id="@+id/city_spinner_iWant"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:prompt="@string/citySpinner"
android:textColor="@color/white"
android:textSize="20dp" />

在代码中,设置适配器以使用requires项(在您的案例中为分支)填充微调器:

String[] city_array = new String[]{"London", "Newyork", "Paris"};

ArrayAdapter<String> cityArrayAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,city_array);

city_spinner = (Spinner) findViewById(R.id.city_spinner_iWant);
city_spinner.setAdapter(cityArrayAdapter);

然后根据在微调器中选择的项目显示表单:

city_spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

public void onItemSelected(AdapterView<?> adapter, View v,int i, long lng) {

selected_city = adapter.getItemAtPosition(i).toString();
Toast.makeText(getApplicationContext(), selected_city, 1000).show();

//conditions depending on selected_city (in your case selected branch)
}
public void onNothingSelected(AdapterView<?> arg0) {

//no need to impement this
}
});