参考:
https://www.cnblogs.com/tinyphp/p/3858920.html
1.xml文件
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.wanglizheng.spinnerstu.MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<Spinner
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/spinner"
></Spinner>
</android.support.constraint.ConstraintLayout>
2.
java代码。
package com.example.wanglizheng.spinnerstu;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.ViewGroup;
import android.widget.AbsoluteLayout;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import java.util.ArrayList;
import java.util.List;
public class MainActivity extends AppCompatActivity {
private Spinner spinner;
private List<String> dataList;
private ArrayAdapter<String> arrAdapter;
private AbsoluteLayout abslayout;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//set by makecontentView
//setContentView(R.layout.activity_main);
boolean ifDynamic=false;
makeContentView(ifDynamic);
spinnerShow();
}
private void makeContentView(boolean ifDynamicMake){
if( ! ifDynamicMake){
setContentView(R.layout.activity_main);
spinner = (Spinner)findViewById(R.id.spinner);
}else{
abslayout=new AbsoluteLayout(this);
setContentView(abslayout);
spinner = new Spinner(this);
AbsoluteLayout.LayoutParams lp1 =
new AbsoluteLayout.LayoutParams(
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT,
10,100);
abslayout.addView(spinner, lp1);
}
}
private void spinnerShow(){
//数据
dataList = new ArrayList<String>();
dataList.add("beijing");
dataList.add("shanghai");
dataList.add("guanzhou");
arrAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,dataList);
arrAdapter.setDropDownViewResource(android.R.layout.simple_spinner_item);
spinner.setAdapter(arrAdapter);
}
}