首先在values下的string.xml文件中添加下拉列表的内容:
<string-array name="pv1">
<item>河北</item>
<item>北京</item>
<item>天津</item>
<item>合肥</item>
<item>上海</item>
<item>甘肃</item>
</string-array>
在mainactivity中编写Spinner的内容:可以看出通过 android:entries="@array/pv1"将内容导入Spinner中:
<Spinner
android:id="@+id/spacer1"
android:layout_width="200dp"
android:layout_height="30dp"
android:layout_gravity="center"
android:entries="@array/pv1"
></Spinner>
接下来开始编辑逻辑代码,打开MainActivity:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Resources res =getResources();
String[] city=res.getStringArray(R.array.province1);//将province中内容添加到数组city中
spinner = (Spinner) findViewById(R.id.spacer1);//获取到spacer1
final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,city);//创建Arrayadapter适配器
spinner.setAdapter(adapter);
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {//通过此方法为下拉列表设置点击事件
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
String text= spinner.getItemAtPosition(i).toString();
Toast.makeText(MainActivity.this,text,Toast.LENGTH_SHORT).show();
}
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
}
});
}
}
运行程序,即可有弹窗