在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内容如下:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="provarray">
<item>河南省</item>
<item>河北省</item>
<item>山东省</item>
<item>山西省</item>
</string-array>
</resources>
3、打开activity_main.xml文件。
我们把自动生成的代码修改成如下代码,具体为:
(1)Spinner的id修改为province;
注意:android:entries="@array/provarray",表示Spinner的Items使用的是province.xml中provarray的值。
(2)Buttion的id修改为save,其文本修改为"保存"。
<Spinner
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"/>
<Button
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;
@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();
}
});
}
@Override
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()用以显示选择项的提示信息:例如山东省。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。