精华内容
下载资源
问答
  • Android 下拉框

    千次阅读 2018-06-25 10:40:32
    Android 下拉框的使用方法 直接上代码 <Spinner android:id="@+id/spinner" android:layout_width="100px" android:layout_height="80px"&...

    Android 下拉框的使用方法 直接上代码

                <Spinner
                    android:id="@+id/spinner"
                    android:layout_width="100px"
                    android:layout_height="80px">
                </Spinner>
           Spinner  m_Spinenr = (Spinner)findViewById(R.id.spinner);
           final String[] list = {"A","B","C","D","E","F","G"};
           String value = "";
    
            ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,R.layout.custom_spiner_text_item,list);
            //参数2是样式   R.layout.custom_spiner_text_item 是自定义的样式 是在res/layout/ 目录下 一个名为  custom_spiner_text_item  文件里定义的样式  如下
    
            /*
                <TextView xmlns:android="http://schemas.android.com/apk/res/android"
                android:id="@+id/textViewCustom"
                style="?android:attr/spinnerItemStyle"
                android:layout_width="100px"
                android:layout_height="40px"
                android:textSize="20sp" />
            */
    
            //系统自带样式有三种  
            // simple_spinner_item   simple_spinner_dropdown_item   simple_expandable_list_item_1
    
            m_Spinenr.setAdapter(adapter );
            m_Spinenr.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
                @Override
                public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
                    value = list [pos];  //取出选中的值
                }
                @Override
                public void onNothingSelected(AdapterView<?> parent) {
                }
            });
    
    
    展开全文
  • android 下拉框spinner

    千次阅读 2012-09-28 16:22:18
    mainActivity package veryedu.lession4.spinner; import java.util.ArrayList; import java.util.List; import android.os.Bundle;...import android.app.Activity;...import android.util.Log;...import android.view

    mainActivity

    package veryedu.lession4.spinner;
    
    import java.util.ArrayList;
    import java.util.List;
    
    import android.os.Bundle;
    import android.app.Activity;
    import android.util.Log;
    import android.view.Menu;
    import android.view.View;
    import android.widget.AdapterView;
    import android.widget.ArrayAdapter;
    import android.widget.Spinner;
    import android.widget.TextView;
    import android.widget.Toast;
    
    public class MainActivity extends Activity {
    
    	Spinner  sp1=null;
    	Spinner  sp2=null;
    	Spinner  sp3=null;
    	
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            sp1=(Spinner)findViewById(R.id.sp1);
            sp2=(Spinner)findViewById(R.id.sp2);
            sp3=(Spinner)findViewById(R.id.sp3);
            
           final List<String> list=new ArrayList<String>();
            list.add("长沙");
            list.add("北京");
            list.add("上海");
            list.add("广州");
            list.add("成都");
            list.add("西安");
            
            //适配器的第2个参数textViewResourceId是一个决定下拉列表的
            //列表项显示样式的 样式资源id
            ArrayAdapter<String>  adapter
               =new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, list);
            
            //给下拉列表添加Adapter适配器
            sp2.setAdapter(adapter);
            
            
            ArrayAdapter<String> adapter2=
            		new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, list);
            //设置下拉样式
            adapter2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);  
            sp3.setAdapter(adapter2); 
            
            sp3.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
    
    			@Override
    			public void onItemSelected(AdapterView<?> parent, View view,
    					int pos, long id) {
    				Log.i("test", "pos:"+pos+ " id:"+id);
    				Toast.makeText(MainActivity.this, "选择了:"+list.get(pos), Toast.LENGTH_LONG).show();
    			 TextView tx= (TextView)view;
    			 Log.i("test","选项:"+tx.getText());
    			 Log.i("test", ""+sp3.getSelectedItem());
    			}
    
    			@Override
    			public void onNothingSelected(AdapterView<?> arg0) {
    				// TODO Auto-generated method stub
    				
    			}
            });
        }
    
        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            getMenuInflater().inflate(R.menu.activity_main, menu);
            return true;
        }
    }
    

    activity_main.xml

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent" 
        android:orientation="vertical"
        >
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="下拉列表"
        />
        <Spinner   android:id="@+id/sp1"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:prompt="@string/lstprmp"
             android:entries="@array/citylst"
            />
        <Spinner   android:id="@+id/sp2"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:prompt="@string/lstprmp"
            />
        <Spinner   android:id="@+id/sp3"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:prompt="@string/lstprmp"
            />    
    </LinearLayout>
    


    展开全文
  • Android下拉框控件Spinner的使用

    千次阅读 2014-03-19 17:38:12
    下面看一下在android里面一个下拉框的简单应用,首先定义个xml文件: select_spinner.xml xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout...

    下面看一下在android里面一个下拉框的简单应用,首先定义个xml文件:

    select_spinner.xml

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout
      xmlns:android="http://schemas.android.com/apk/res/android"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      android:orientation="vertical"
      >
    
      <TextView  
        android:id="@+id/TextView01"
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:text="this is FirstActivity of AppB"
        />
    
        <Spinner 
        android:id="@+id/spinner" 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        />
      
    </LinearLayout>

    其次在画面里面可以这样实现(方式一):

     protected void onCreate(Bundle savedInstanceState) {
            // TODO Auto-generated method stub
            super.onCreate(savedInstanceState);
            setContentView(R.layout.select_spinner);
            
            
            
            
            spinner = (Spinner) findViewById(R.id.spinner);
            spinner.setPrompt("请选择");
            final int [] drawableIds = {R.drawable.aa, R.drawable.icon};
            final int [] msgIds = {R.string.aa, R.string.bb};
            
            
            
            BaseAdapter baseAdapter = new BaseAdapter() {
    
                @Override
                public int getCount() {
                    return msgIds.length;
                }
    
                @Override
                public Object getItem(int position) {
                    return null;
                }
    
                @Override
                public long getItemId(int position) {
                    return 0;
                }
    
                @Override
                public View getView(int position, View convertView, ViewGroup parent) {
                 // 动态生成每个下拉项对应的View,每个下拉项View由LinearLayout
                 // 中包含一个ImageView及一个TextView构成
                 // 初始化LinearLayout
                 LinearLayout ll = new LinearLayout(TestActivity.this);
                 ll.setOrientation(LinearLayout.HORIZONTAL);
                 // 初始化ImageView
                 ImageView ii = new ImageView(TestActivity.this);
                 ii.setImageDrawable((getResources().getDrawable(drawableIds[position])));
                 ll.addView(ii);
                 // 初始化TextView
                 TextView tv = new TextView(TestActivity.this);
                 tv.setText(" " + getResources().getText(msgIds[position]));
                 tv.setTextColor(R.color.blue);
                 tv.setTextSize(24);
                 ll.addView(tv);
                 return ll;
                }
                
            };
            
            
            spinner.setAdapter(baseAdapter);
            spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 
                @Override 
                public void onItemSelected(AdapterView<?> arg0, View view, 
                        int arg2, long arg3) { 
                    //被选中时候发生的动作
                    Log.i("chen", "===="+arg0+"   "+view+"    "+arg2+"    "+arg3);
                    
                 // 获取主界面TextView
                    TextView tv = (TextView) findViewById(R.id.TextView01);
                    // 获取当前选中选项对应的LinearLayout
                    LinearLayout ll = (LinearLayout) view;
                    // 获取其中的TextView
                    TextView tvn = (TextView) ll.getChildAt(1);
                    // 用StringBuilder动态生成信息
                    StringBuilder sb = new StringBuilder();
                    sb.append(getResources().getText(R.string.app_name));
                    sb.append(":");
                    sb.append(tvn.getText());
                    // 信息设置进住界面
                    tv.setText(sb.toString());
                } 
                @Override 
                public void onNothingSelected(AdapterView<?> arg0) { 
                    
                } 
            });
        }

    如果用ArrayAdapter实现如下(方式二):

    //设置下拉框控件的标题文本内容:
    spinner.setPrompt("请选择");
    
    //定义下拉框内容:
    String [] datas = {“ATAAW.COM”,”Android.com”,”Google.com”};
    
    //定义添加适配器:
    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource( 
    this, datas, android.R.layout.simple_spinner_item); 
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
    spinner.setAdapter(adapter);
    
    //响应下拉框的选中值发生变化的事件处理:
    spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 
                @Override 
                public void onItemSelected(AdapterView<?> arg0, View arg1, 
                        int arg2, long arg3) { 
                    //被选中时候发生的动作 
                } 
                @Override 
                public void onNothingSelected(AdapterView<?> arg0) { 
                } 
            });

    第二种方式稍微试了下,就是android.R.layout.simple_spinner_item这个样式不可控,和其他控件风格有冲突,不好用。

    所以得想想如何自定义spinner:

    1、首先可以准备两张图片,一张是显示状态spinner.png,一张是按下时的状态spinner_press.png

    2、在drawable中定义spinner_selector.xml

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android" >
        <item android:state_pressed="true"   
            android:drawable="@drawable/spinner_press" /><!--按下时效果-->  
        <item android:state_pressed="false"   
            android:drawable="@drawable/spinner" /><!--默认效果-->   
    </selector>

    3、

    style中定义
          <!-- spinner -->
          <style name=" spinner_style">
          <item name="android:background"> @drawable/spinner_selector</item>
          <item name="android:paddingLeft">5dip</item>
          </style>

    4、调用
    <Spinner
          android:id="@+id/field_item_spinner_content"
          style=" @style/spinner_style"
          android:layout_width="fill_parent"
          android:layout_height="wrap_content"
          android:animationCache="true"
          android:drawSelectorOnTop="true" />

    展开全文
  • 为spinner项创建一个自定义XML文件:spinner_item.xml。 将自定义颜色和大小发送到该文件中的文本。 <?xml version="1.0" encoding=... android:id="@android:id/text1" style="?android:attr/spinnerItemStyle

    为spinner项创建一个自定义XML文件:spinner_item.xml。
    将自定义颜色和大小发送到该文件中的文本。

    <?xml version="1.0" encoding="utf-8"?>
    
    <TextView xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@android:id/text1"
        style="?android:attr/spinnerItemStyle"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"  修改字体颜色
        android:backgroundTint="@color/white"  修改倒三角颜色
        android:ellipsize="marquee"
        android:singleLine="true"
        android:textAlignment="inherit"
        android:textColor="@color/white" />
    

    在java中读取样式xml,并准备好适配器mAdapter_add:

    ArrayAdapter mAdapter_add;
    mAdapter_add = new ArrayAdapter<>(getApplicationContext(), R.layout.spinner_defaultfreq);
    mAdapter_add.add("分组1");
    mAdapter_add.add("分组2");
    mAdapter_add.add("分组3");
    mAdapter_add.add("分组4");
    
    mAdapter_add.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 设置下拉样式,这里的xml文件也可以自定义
    

    spinner的xml:

            <Spinner
                android:id="@+id/lv_type"
                android:layout_width="match_parent"
                android:layout_height="40dp"
                android:layout_weight="1"
                android:ems="10"
                android:inputType="numberDecimal"
                android:maxLength="15"
                android:maxLines="1"
                android:numeric="integer"
                android:scrollbarSize="7dp"
                android:text="@string/NoType"
                android:textColor="@color/white"
                android:textSize="18sp" />
    

    将适配器mAdapter_add给到spinner:

    final Spinner lv_type = view.findViewById(R.id.lv_type);
    lv_type.setAdapter(mAdapter_add);
    
    展开全文
  • spinner组件有点类型于HTML中的下拉框的样子,让用户每次从下拉框中选取一个,本文为大家分享了Android下拉列表spinner的具体实现代码,供大家参考,具体内容如下mian.xmlxmlns:tools=...android:layout_height="...
  • //设置adapter设置下一列表样式 adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); //加载适配器 spinner.setAdapter(adapter); //设置默认项(1为显示数据下标) ...
  • 在移动端页面内嵌到app时,ios的下拉框表现良好,但是由于android的各种机型导致下拉框特别难看,最后拿vue模拟了一版,但是考虑到风格同一问题,最终希望可以达到微信的下拉框效果; 转载于:...
  • android spinner下拉框

    千次阅读 2017-03-10 08:13:03
    下拉框其实自己很少用到,不过昨天因为写界面时,自己用到了,当时忘记怎么写,...1.用android提供的spinner下拉框控件。 1.在布局里添加一个spinner控件 Spinner android:layout_width="match_parent"  
  • 用纯css改变下拉列表select框的默认样式分享到分类 JS学习 关键字 前端 发布 kris 2015-04-01注意 转载须保留原文链接,译文链接,作者译者等信息。在这篇文章里,我将介绍如何不依赖JavaScript用纯css来改变下拉...
  • Android自定义下拉框,用PopupWindow实现
  • Android Spinner下拉框

    2018-11-19 19:33:52
    需求: 需求就是我需要做一个选择天数的下拉框,一开始我选择的是PopupWindow+RecyclerView 我也写完了代码 写完以后发现 我的最外层的Dialog 是一个固定的高 最里层的RecyclerView 只能实现四五行的条目 有点不满足...
  • 1、自定义样式 // 建立Adapter并且绑定数据源 ArrayAdapter<String> Adapter=new ArrayAdapter<String>(this,R.layout.main_liushuihao_stylespinner, mItems); 其中R.layout.main_liushuihao_...
  • Android spinner下拉框和dialog

    千次阅读 2016-05-07 10:53:43
    spinner使用下拉框而不是dialog需要加上一条属性即可android:spinnerMode="dropdown"Dialog 请放弃使用Theme.Dialog应该使用 @android:style/Theme.Holo.DialogWhenLarge
  • 直播app源代码,去除下拉框样式 // 三个浏览器都可以使用 appearance:none; -moz-appearance:none; -webkit-appearance:none; border:none; 以上就是 直播app源代码,去除下拉框样式,更多内容欢迎关注之后的...
  • Android下拉框 Spinner 的简单使用
  • 自定义spinner下拉框样式,并实现三级联动
  • android开发UI自定义spinner下拉列表
  • 文章目录Android Spinner代码部分Spinner代码介绍核心代码说在最后 Android Spinner Spinner 提供下拉列表式的输入方式,该方法可以有效节省手机屏幕上的显示空间。 本次我将使用最简单的Spinner来完成一个下拉框。...
  • android Spinner自定义下拉框

    千次阅读 2016-12-29 15:59:46
    Spinner下拉框android中有2种绑定方式 1.通过在string.xml中配置 array 的item 去实现(缺点:下拉框中的内容是写死的) 北京 上海 广州 深圳 在布局文件中引用后可以看到效果 android:id="@+id/tab1_...
  • 不管在spinner的item中如何设置透明度,都无效,最后发现可以在Spinner定义的时候加上popupBackground这个属性,通过该属性可以定义spinner下拉框中的item的颜色和透明度。 &lt;Spinner android:id="@+id...
  • Spinner提供了从一个数据集合中快速选择一项值的办法。默认情况下Spinner显示的是当前选择的值,点击Spinner会弹出一个包含所有可选值的dropdown菜单,从该菜单中可以为... 其他如下拉样式等内容,请自行另外搜索~~
  • 类似于美团的Android下拉框筛选分类条件。可以多层筛选,也可以单层筛选,下载可用,若解压不成功的话,可能需要下载快压来进行解压缩。大家可以参考!
  • android下拉框添加数据

    千次阅读 2016-04-07 13:23:03
    方法一: 引用资源,静态展示 Spinner 选项: ... android:layout_width="match_parent"  android:layout_height="wrap_content"  android:id="@+id/Spinner"  android:entries="@array/Spinnera"  />
  • Android自定义下拉框的简单实现

    千次阅读 2018-04-18 17:30:46
    安卓自带的Spinner不会用啊,换个图片都好麻烦,更别提做各种自定义的效果了 ...理论上可以实现任意样式下拉框 可能存在的问题:  设置img时使用了自定义的Application,传入context即可。 Demo有空再放
  • 文章目录先用起来方法样式增加分割线 先用起来 效果图 布局页面 activity_test <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" ...
  • android原生的下拉框Spinner基本上可以满足Android开发对于下拉选项的设计需求,但现在越来越流行的下拉框不满足于Android原生提供的下拉框Spinner所提供的设计样式,而改用自定制或者第三方设计的下拉框Spinner。...
  • Android自定义spinner下拉框实现的实现

    万次阅读 热门讨论 2014-11-20 17:21:50
    说道android下拉框spineer,框架中虽有现成的控件,但实际效果可能并不是我们所需要的那种,如下图: 其实我们更需要的是像WEB那种风格,如图所示: 其实实现也很简单,就是自定义个popwindow就可以了...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,812
精华内容 724
关键字:

android下拉框样式