在AndroidApp应用中,下拉列表框Spinner的使用频次是相当高的,如果你对Spinner陌生,你一定不会对HTML中的SELECT陌生,他们的作用是一样的,都是多选一。我们需要学习Android中的基本控件下拉列表框Spinner。
一、设计登录窗口
打开“res/layout/activity_main.xml”文件。
1、分别从工具栏向activity拖出1个下拉列表框Spinner、1个按钮Button。这2个控件均来自Form Widgets。
2、新建province.xml件。
在“res/values”位置新建province.xml文件。
(1)province.xml文件位置如下图所示:
province.xml内容如下:
河南省
河北省
山东省
山西省
3、打开activity_main.xml文件。
我们把自动生成的代码修改成如下代码,具体为:
(1)Spinner的id修改为province;
注意:android:entries="@array/provarray",表示Spinner的Items使用的是province.xml中provarray的值。
(2)Buttion的id修改为save,其文本修改为"保存"。
android:id="@+id/province" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_centerVertical="true" android:entries="@array/provarray"/> android:id="@+id/save" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/province" android:layout_alignParentBottom="true" android:layout_marginBottom="76dp" android:layout_marginLeft="23dp" android:text="@string/save" />二、单击事件 打开“src/com.genwoxue.spinnerapp/MainActivity.java”文件。然后输入以下代码:package com.example.hw;import android.app.Activity;import android.os.Bundle;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.Spinner;import android.widget.Toast;public class MainActivity extends Activity {private Button btnSave = null;private Spinner spinProvice = null;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);btnSave = (Button) super.findViewById(R.id.save);spinProvice = (Spinner) findViewById(R.id.province);btnSave.setOnClickListener(new OnClickListener(){public void onClick(View v) {String sPro = "";String sInfo = "";sPro = spinProvice.getSelectedItem().toString(); sInfo = "省份:"+sPro;Toast.makeText(getApplicationContext(), sInfo, Toast.LENGTH_SHORT).show();}});}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}在以上代码中,我们着重分析一下带有浅蓝色背景部分。1、第①部分导入与Spinner相关的包。2、第②部分声明2个控件变量。3、第③部分(1)findViewById()方法完成2个控件的捕获。(2)“保存”按钮添加单击监听事件:btnSave.setOnClickListener(new SaveOnClickListener())。4、第④部分(1)我们新建一个匿名内部类OnClickListener用以实现单击事件监听。(2)Spinner.getSelectedItem()获取当前选择项的值。(3)Toast.makeText(getApplicationContext(), sInfo,Toast.LENGTH_SHORT).show()用以显示选择项的提示信息:例如山东省。另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。 本文名称:下拉列表框Spinner-创新互联 链接URL:http://hbruida.cn/article/dhjhch.html
android:id="@+id/province"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:entries="@array/provarray"/>
android:id="@+id/save" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/province" android:layout_alignParentBottom="true" android:layout_marginBottom="76dp" android:layout_marginLeft="23dp" android:text="@string/save" />二、单击事件 打开“src/com.genwoxue.spinnerapp/MainActivity.java”文件。然后输入以下代码:package com.example.hw;import android.app.Activity;import android.os.Bundle;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.Spinner;import android.widget.Toast;public class MainActivity extends Activity {private Button btnSave = null;private Spinner spinProvice = null;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);btnSave = (Button) super.findViewById(R.id.save);spinProvice = (Spinner) findViewById(R.id.province);btnSave.setOnClickListener(new OnClickListener(){public void onClick(View v) {String sPro = "";String sInfo = "";sPro = spinProvice.getSelectedItem().toString(); sInfo = "省份:"+sPro;Toast.makeText(getApplicationContext(), sInfo, Toast.LENGTH_SHORT).show();}});}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}在以上代码中,我们着重分析一下带有浅蓝色背景部分。1、第①部分导入与Spinner相关的包。2、第②部分声明2个控件变量。3、第③部分(1)findViewById()方法完成2个控件的捕获。(2)“保存”按钮添加单击监听事件:btnSave.setOnClickListener(new SaveOnClickListener())。4、第④部分(1)我们新建一个匿名内部类OnClickListener用以实现单击事件监听。(2)Spinner.getSelectedItem()获取当前选择项的值。(3)Toast.makeText(getApplicationContext(), sInfo,Toast.LENGTH_SHORT).show()用以显示选择项的提示信息:例如山东省。另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。 本文名称:下拉列表框Spinner-创新互联 链接URL:http://hbruida.cn/article/dhjhch.html
android:id="@+id/save"
android:layout_alignLeft="@+id/province"
android:layout_alignParentBottom="true"
android:layout_marginBottom="76dp"
android:layout_marginLeft="23dp"
android:text="@string/save" />
二、单击事件
打开“src/com.genwoxue.spinnerapp/MainActivity.java”文件。
然后输入以下代码:
package com.example.hw;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Spinner;
import android.widget.Toast;
public class MainActivity extends Activity {
private Button btnSave = null;
private Spinner spinProvice = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnSave = (Button) super.findViewById(R.id.save);
spinProvice = (Spinner) findViewById(R.id.province);
btnSave.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
String sPro = "";
String sInfo = "";
sPro = spinProvice.getSelectedItem().toString();
sInfo = "省份:"+sPro;
Toast.makeText(getApplicationContext(), sInfo, Toast.LENGTH_SHORT).show();
}
});
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
在以上代码中,我们着重分析一下带有浅蓝色背景部分。
1、第①部分
导入与Spinner相关的包。
2、第②部分
声明2个控件变量。
3、第③部分
(1)findViewById()方法完成2个控件的捕获。
(2)“保存”按钮添加单击监听事件:btnSave.setOnClickListener(new SaveOnClickListener())。
4、第④部分
(1)我们新建一个匿名内部类OnClickListener用以实现单击事件监听。
(2)Spinner.getSelectedItem()获取当前选择项的值。
(3)Toast.makeText(getApplicationContext(), sInfo,Toast.LENGTH_SHORT).show()用以显示选择项的提示信息:例如山东省。
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
在线咨询
拨打电话