`
店小二过年
  • 浏览: 3002 次
  • 性别: Icon_minigender_1
  • 来自: 南京
最近访客 更多访客>>
社区版块
存档分类
最新评论

关于下拉框的一些应用

阅读更多
做下拉框可以利用系统自带的方法创建adpter,通过数组传入需要的字符串。
布局文件如下
<?xml version="1.0" encoding="utf-8"?>    
<LinearLayout   
    android:id="@+id/widget28"    
    android:layout_width="fill_parent"    
    android:layout_height="fill_parent"    
    android:orientation="vertical"  
    android:layout_gravity="center_vertical"
	               android:gravity="center_horizontal"  
    xmlns:android="http://schemas.android.com/apk/res/android" >    
    <TextView    
        android:id="@+id/TextView_Show"    
        android:layout_width="fill_parent"    
        android:layout_height="wrap_content"    
        android:text="你选择的是"    
        android:textSize="25sp">    
    </TextView>    
    <Spinner    
        android:id="@+id/spinner_City"    
        android:layout_width="fill_parent"    
        android:layout_height="wrap_content">    
    </Spinner>
    <TextView    
        android:id="@+id/TextView_Show1"    
        android:layout_width="fill_parent"    
        android:layout_height="wrap_content"    
        android:text="你选择的是"    
        android:textSize="25sp">    
    </TextView>    
    <Spinner    
        android:id="@+id/spinner_City1"    
        android:layout_width="fill_parent"    
        android:layout_height="wrap_content">    
    </Spinner> 
    <Button android:layout_width="wrap_content"
        	android:layout_height="wrap_content"
        	android:layout_marginBottom="50dp"
        	 android:layout_gravity="center_horizontal"
	         android:gravity="center_horizontal"
        	android:text="OK"
        	android:id="@+id/button"
        	android:visibility="invisible"/>  
</LinearLayout>   

java代码如下:
package com.example.mydrawsector;

import java.util.ArrayList;
import java.util.List;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.Spinner;
import android.widget.TextView;
        
    public class SpinnerActivity extends Activity {     
        /** Called when the activity is first created. */    
        private List<String> list = new ArrayList<String>();   
        private List<String> list1 = new ArrayList<String>(); 
        private TextView myTextView;    
        private TextView myTextView1;   
        private Spinner mySpinner;    
        private Spinner mySpinner1; 
        private ArrayAdapter<String> adapter;     
        private ArrayAdapter<String> adapter1; 
        private Button button;
        @Override    
        public void onCreate(Bundle savedInstanceState) {     
            super.onCreate(savedInstanceState);     
            setContentView(R.layout.activity_main);     
            //第一步:添加一个下拉列表项的list,这里添加的项就是下拉列表的菜单项     
            list.add("北京");     
            list.add("上海");     
            list.add("深圳");     
            list.add("南京");     
            list.add("重庆");
            list1.add("公交");
            list1.add("地铁");
            list1.add("自驾游");
            button = (Button)findViewById(R.id.button);
            myTextView = (TextView)findViewById(R.id.TextView_Show);     
            mySpinner = (Spinner)findViewById(R.id.spinner_City);
            myTextView1 = (TextView)findViewById(R.id.TextView_Show1);     
            mySpinner1 = (Spinner)findViewById(R.id.spinner_City1); 
            
            //第二步:为下拉列表定义一个适配器,这里就用到里前面定义的list。     
            adapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, list);     
            //第三步:为适配器设置下拉列表下拉时的菜单样式。     
            adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);     
            //第四步:将适配器添加到下拉列表上     
            adapter1 = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, list1);     
            //第三步:为适配器设置下拉列表下拉时的菜单样式。     
            adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);  
            mySpinner.setAdapter(adapter);     
            mySpinner1.setAdapter(adapter1);
            //第五步:为下拉列表设置各种事件的响应,这个事响应菜单被选中     
            mySpinner.setOnItemSelectedListener(new Spinner.OnItemSelectedListener(){     
                @SuppressWarnings("unchecked")  
                public void onItemSelected(AdapterView arg0, View arg1, int arg2, long arg3) {     
                    // TODO Auto-generated method stub     
                    /* 将所选mySpinner 的值带入myTextView 中*/    
                    myTextView.setText("您选择的是:"+ adapter.getItem(arg2));     
                    /* 将mySpinner 显示*/    
                    arg0.setVisibility(View.VISIBLE);  
                    isShowOKButton();
                }     
                @SuppressWarnings("unchecked")  
                public void onNothingSelected(AdapterView arg0) {     
//                    // TODO Auto-generated method stub     
//                    myTextView.setText("NONE");     
//                    arg0.setVisibility(View.VISIBLE);     
                }     
            });   
            mySpinner1.setOnItemSelectedListener(new Spinner.OnItemSelectedListener(){     
                @SuppressWarnings("unchecked")  
                public void onItemSelected(AdapterView arg0, View arg1, int arg2, long arg3) {     
                    // TODO Auto-generated method stub     
                    /* 将所选mySpinner 的值带入myTextView 中*/    
                    myTextView1.setText("您选择的是:"+ adapter1.getItem(arg2));     
                    /* 将mySpinner 显示*/    
                    arg0.setVisibility(View.VISIBLE);  
                    isShowOKButton();
                }     
                @SuppressWarnings("unchecked")  
                public void onNothingSelected(AdapterView arg0) {     
                    // TODO Auto-generated method stub     
//                    myTextView1.setText("NONE");     
//                    arg0.setVisibility(View.VISIBLE);     
                }     
            });
          
//            /*下拉菜单弹出的内容选项触屏事件处理*/    
//            mySpinner.setOnTouchListener(new Spinner.OnTouchListener(){     
//                public boolean onTouch(View v, MotionEvent event) {     
//                    // TODO Auto-generated method stub     
//                    /* 将mySpinner 隐藏,不隐藏也可以,看自己爱好*/    
//                    v.setVisibility(View.INVISIBLE);     
//                    return false;     
//                }     
//            });     
            /*下拉菜单弹出的内容选项焦点改变事件处理*/    
            mySpinner.setOnFocusChangeListener(new Spinner.OnFocusChangeListener(){     
            public void onFocusChange(View v, boolean hasFocus) {     
            // TODO Auto-generated method stub     
                v.setVisibility(View.VISIBLE);     
            }     
            });     
        } 
        public void isShowOKButton(){
        	if((myTextView.getText()!=null||myTextView.getText()!="")&&(myTextView1.getText()!=null||myTextView1.getText()!="")){
        		button.setVisibility(View.VISIBLE);
        	}
        }
    }  

小结
1.Spinner中textview显示的内容为list中第一个元素。
2.继续学习自定义风格的下拉框并且改变spinner的默认值。
分享到:
评论

相关推荐

    下拉框的应用

    - `checkbox.jsp` 和 `checkbox2.jsp` 可能是关于复选框的示例页面,虽然标题是“下拉框的应用”,但它们可能与下拉框相关联,因为复选框有时会与下拉框一起用于提供多选功能。 - `action` 可能是指服务器端处理请求...

    C#005下拉框的应用

    本篇将深入探讨C#中下拉框的应用,包括其基本概念、功能特性、常用方法以及如何在实际项目中有效地使用它。 1. 基本概念: 下拉框是一种允许用户从预定义的选项列表中选择一个值的输入控件。在C#中,`System....

    下拉框的应用(C#代码编写)

    在编程领域,尤其是在开发Windows应用程序或Web应用时,下拉框(Dropdown Box或者ComboBox)是一种常用的用户界面元素。本文将深入探讨下拉框在C#编程中的应用,并提供相关的代码示例。 下拉框通常用于展示一系列...

    下拉框的应用(C#源代码编写)

    在编程领域,尤其是在Windows应用程序开发中,下拉框(Dropdown Box)是一种常见的用户界面元素,它允许用户从预设的一组选项中选择一个值。在C#编程中,下拉框通常通过ComboBox控件实现。本教程将深入探讨下拉框在...

    mfc 关于下拉框装载图片源码下载

    在MFC(Microsoft Foundation Classes)框架中,`CComboBox`控件是用于创建下拉框的,它允许用户从预定义的...通过"BitmapPickerCombo_demo"源码,你可以学习到这些技术并应用于自己的项目中,提升应用程序的用户体验。

    6种样式的下拉框

    在网页设计和开发中,下拉框(Dropdown)是一种常见的用户界面元素,它允许用户从一组预定义的选项中选择一个。"6种样式的下拉框"项目提供了多种不同风格和效果的下拉框解决方案,旨在提升用户体验并增强网站的视觉...

    下拉框值触发另一个下拉框

    以上就是关于"下拉框值触发另一个下拉框"这一功能的基本实现原理和方法。在实际项目中,我们还需要考虑到错误处理、用户体验优化(如加载动画、提示信息等)以及兼容性问题,确保在不同浏览器和设备上的良好运行。在...

    下拉框应用

    在工具方面,一些UI组件库,如Element UI、Ant Design、Bootstrap等,提供了丰富的下拉框组件,它们通常预设了多种样式和交互模式,能够快速构建出美观且功能完备的下拉框。这些组件库通常有详细的文档和示例代码,...

    EXTJS 选下拉框,并取得下拉框的值

    EXTJS 是一款强大的JavaScript前端框架,用于构建富客户端应用程序。在EXTJS中,下拉框(ComboBox)是一种常见的UI组件,常用于用户选择一个或多个预定义的选项。本篇文章将详细讲解如何在EXTJS中操作下拉框,以及...

    jquery--下拉框的实现

    在网页开发中,jQuery 是一个广泛使用的 ...总结,jQuery为下拉框的实现提供了强大的工具和便利的操作,使得开发者能够轻松创建交互丰富的Web应用。通过理解并掌握上述技巧,你将能有效地提升网页的用户体验。

    很漂亮的 下拉框

    下拉框在网页和应用程序中广泛使用,通常用于提供多个选项让用户选择,比如日期选择、地区选择等。 下拉框的设计不仅仅是为了美观,更重要的是它能有效地节省屏幕空间,提高交互效率。描述中提到的“三种风格样式”...

    树形下拉框样式

    6. **响应式设计**: 当今的Web应用需要考虑多种设备和屏幕尺寸,因此树形下拉框也需要适应不同的屏幕环境。这可能涉及到媒体查询(Media Queries)和响应式布局技术。 7. **优化与性能**: 在处理大量数据时,为了...

    bootstrap树形下拉框 下拉框树形菜单

    为了将下拉框和树形结构结合,可能需要自定义一些逻辑来处理用户的选择,因为原生的HTML `&lt;select&gt;` 不支持树形结构。你可以监听树形控件的点击事件,获取选中的节点,并将其值设置到下拉框对应的`&lt;option&gt;`上。 总...

    下拉框设置为只读模式时不再弹出下拉框

    在网页设计和开发中,经常会遇到需要对交互元素进行特定控制的情况,比如将下拉框(Dropdown)设置为只读模式。"下拉框设置为只读模式时不再弹出下拉框"这个主题,主要涉及到HTML、CSS以及可能的JavaScript技术。...

    模仿google下拉框模仿google下拉框

    在IT行业中,模仿Google下拉框是一项常见的前端开发任务,主要目的是为了提供用户友好的搜索体验,提升网站或应用的交互性。Google的下拉框以其高效、智能和易用性著称,许多开发者尝试复制这种功能以实现类似的效果...

    WPF颜色选择下拉框

    在Windows Presentation Foundation (WPF) 中,开发人员可以创建丰富的用户界面,包括各种...通过理解并应用这些概念,你可以创建一个功能完备且易于使用的颜色选择控件,满足用户在WPF应用程序中选择颜色的需求。

    无限极分类下拉框 无限极 分类 下拉框

    `:用于表示层级关系的字符,这里为空字符串,实际应用中应设定为具体字符。 - `const string STR_ID = "id";`:数据源中标识ID的列名。 - `const string STR_PARENTID = "parentid";`:数据源中标识父ID的列名。 - ...

    下拉框 新人练习 .net

    1. 打开Visual Studio,创建一个新的Windows Forms应用程序项目。 2. 在工具箱中找到“ComboBox”控件,将其拖放到表单上。 3. 双击表单,创建一个Load事件处理程序,在这里初始化下拉框。 在ASP.NET中,可以在Web...

    自定义下拉框(android)

    在Android开发中,自定义下拉框是一种常见的需求,它能提供更加个性化和丰富的交互体验。本教程将深入探讨如何在Android中实现一个仿WEB风格的自定义下拉框(Spinner)。我们将主要围绕以下几个知识点展开: 1. **...

Global site tag (gtag.js) - Google Analytics