Android Spinner下拉列表例

时间:2020-02-23 14:29:17  来源:igfitidea点击:

在本教程中,我们将看到关于Android Spinner下拉列目榜样。

Android Spinner是一个有下拉目的UI小部件。
单击下拉目后,我们可以在各种选项中选择一个选项。
我将在Android Spinner中放入静态数据,然后从它们中选择一个值。

第1步:创建项目

创建Android应用程序ProjectNamed"SpinnerDropdownexampleApp"。

第2步:创建布局

更改RES - >布局 - > Activity_main.xml如下所示:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:tools="http://schemas.android.com/tools"
 android:id="@+id/activity_main"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:paddingBottom="@dimen/activity_vertical_margin"
 android:paddingLeft="@dimen/activity_horizontal_margin"
 android:paddingRight="@dimen/activity_horizontal_margin"
 android:paddingTop="@dimen/activity_vertical_margin"
 tools:context="com.theitroad.spinnerdropdownexampleapp.MainActivity">
 
 <TextView
 android:id="@+id/textview"
 android:layout_width="fill_parent"
 android:layout_height="wrap_content"
 android:text="Select country:"
 
 <Spinner
 android:id="@+id/spinner"
 android:layout_below="@+id/textview"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 
</RelativeLayout>

第3步:创造主动度

更改src/main/packageName/mainActivity.java如下:

package com.theitroad.spinnerdropdownexampleapp;
 
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.Toast;
import android.widget.AdapterView.OnItemSelectedListener;
import java.util.ArrayList;
import java.util.List;
 
public class MainActivity extends AppCompatActivity implements OnItemSelectedListener {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        //get Spinner reference
        Spinner spinner = (Spinner) findViewById(R.id.spinner);
 
        //Spinner click listener
        spinner.setOnItemSelectedListener(this);
 
        //Spinner Drop down elements
        List countries = new ArrayList();
        countries.add("San Franceco");
        countries.add("Nepal");
        countries.add("China");
        countries.add("Bhutan");
 
        //Creating array adapter for spinner
        ArrayAdapter dataAdapter = new ArrayAdapter(this, android.R.layout.simple_spinner_item, countries);
 
        //Drop down style will be listview with radio button
        dataAdapter.setDropDownViewResource(android.R.layout.select_dialog_singlechoice);
 
        //attaching data adapter to spinner
        spinner.setAdapter(dataAdapter);
    }
 
    @Override
    public void onItemSelected(AdapterView parent, View view, int position, long id) {
        //getting selected item
        String item = parent.getItemAtPosition(position).toString();
 
        //Showing selected spinner item in toast
        Toast.makeText(parent.getContext(), "Selected Country: " + item, Toast.LENGTH_LONG).show();
 
    }
 
    public void onNothingSelected(AdapterView arg0) {
 
    }
}

我们已创建ArrayAdapter并以Spinner以类似于简单的Android ListView所做的方式连接它。

如果我们注意到,我们还实现了OnItemselectedListener,用于侦听下拉选择的项。