精华内容
下载资源
问答
  • Android自定义Spinner样式

    热门讨论 2014-10-15 17:27:45
    Android 自定义Spinner样式的 选择框背景,选择框文字属性,弹出框文字属性
  • 自定义spinner样式

    2019-03-27 21:25:16
    自定义spinner样式,处理了点击事件的判断,有需要的可以参考下,
  • Android自定义Spinner

    热门讨论 2015-05-01 23:48:44
    android中使用PopWindow自定义下拉样式Spinner控件 完整示例
  • android自定义Spinner下拉菜单(下拉列表框)样式
  • Android中提供的Spinner Widget下拉菜单已经非常好用了,样式也适用,不过我们还是可以通过定义xml的方式来改变下拉菜单的样式。在layout目录下新建一个xml文件,名字随便(我这里叫myspinner.xml)。在这个文件里面...

    在Android中Spinner就是下拉菜单,它相当于HTML中的标签。

    Android中提供的Spinner Widget下拉菜单已经非常好用了,样式也适用,不过我们还是可以通过定义xml的方式来改变下拉菜单的样式。

    在layout目录下新建一个xml文件,名字随便(我这里叫myspinner.xml)。在这个文件里面可以定义下拉菜单的样式

    我们这里采用TextView来实现

    xmlns:android="http://schemas.android.com/apk/res/android"

    android:id="@+id/text1"

    android:layout_width="wrap_content"

    android:layout_height="24sp"

    android:singleLine="true"

    style="?android:attr/spinnerDropDownItemStyle" />

    在Activity中我们可以这样调用

    private static final String[] countriesStr={"","","",""}

    mySpinner = (Spinner) findViewById(R.id.mySpinner);

    ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.simple_spinner_item, countriesStr);

    adapter.setDropDownViewResource(R.layout.myspinner_dropdown);

    mySpinner.setAdapter(adapter);

    利用自定义的xml我们就可以很灵活的来改变下拉菜单的样式。

    另外andorid也提供了两种基本的样式

    android.R.layout.simple_spinner_item:TextView的下拉菜单

    android.R.layout.simple_spinner_dropdown_item:右边带有radio的下拉菜单

    ============

    方法2:

    自定义下拉菜单 -------- Spinner

    import java.util.ArrayList;

    import java.util.List;

    import android.app.Activity;

    import android.os.Bundle;

    import android.view.MotionEvent;

    import android.view.View;

    import android.view.animation.Animation;

    import android.view.animation.AnimationUtils;

    import android.widget.AdapterView;

    import android.widget.ArrayAdapter;

    import android.widget.Button;

    import android.widget.EditText;

    import android.widget.Spinner;

    import android.widget.TextView;

    import android.widget.Toast;

    public class SpinnerDrop extends Activity {

    /** Called when the activity is first created. */

    private List cityList;

    private Spinner sp;

    private int pos;

    //private Animation animation;

    @Override

    public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    setContentView(R.layout.main);

    cityList= new ArrayList();//初始化一个city的String arraylist

    countryList.add("长沙");

    countryList.add("北京");

    countryList.add("邵阳");

    pos=0;//标记选择的位置

    sp = (Spinner)findViewById(R.id.Spinner01);

    ArrayAdapter adapter = new ArrayAdapter(this,android.R.layout.simple_spinner_item,cityList);

    sp.setAdapter(adapter);//通过setAdapter()来读取ArrayAdapter里的数据

    sp.setOnItemSelectedListener(new Spinner.OnItemSelectedListener(){//下拉列表的选择事件

    public void onItemSelected(AdapterView> parent, View view,

    int position, long id) {

    pos = position;//标记选择的位置

    TextView tv = (TextView)findViewById(R.id.xs);

    tv.setText("selected:"+cityList.get(position).toString());//显示选择的内容

    parent.setVisibility(View.VISIBLE);设置下拉列表的显示状态

    }

    public void onNothingSelected(AdapterView> parent) {

    // TODO Auto-generated method stub

    }

    });

    Button add = (Button)findViewById(R.id.add);//添加一个下拉项

    add.setOnClickListener(new Button.OnClickListener(){

    public void onClick(View v) {

    // TODO Auto-generated method stub

    EditText et = (EditText)findViewById(R.id.EditText01);

    String newstr = et.getText().toString();

    cityList.add(newstr);

    ArrayAdapter adapter = new ArrayAdapter(SpinnerDrop.this,android.R.layout.simple_spinner_item,cityList);

    sp.setAdapter(adapter);//添加数据后重新设置ArrayAdapter并加载进去

    et.setText("");

    Toast.makeText(SpinnerDrop.this, "添加成功", Toast.LENGTH_LONG).show();//浮框提示添加成功

    }

    });

    Button del = (Button)findViewById(R.id.del);//删除下拉项

    del.setOnClickListener(new Button.OnClickListener(){

    public void onClick(View v) {

    cityList.remove(pos);

    ArrayAdapter adapter = new ArrayAdapter(SpinnerDrop.this,android.R.layout.simple_spinner_item,cityList);

    sp.setAdapter(adapter);

    Toast.makeText(SpinnerDrop.this, "删除成功", Toast.LENGTH_LONG).show();

    }

    });

    }

    }0b1331709591d260c1c78e86d0c51c18.png

    展开全文
  • 最近在做的项目中有很多下拉框,为了实现方便就用了Android 自带的Spinner,但是自带的Spinner的样式又不符合要求,就学习了一下自定义Spinner。下面是整个步骤:1.准备好图片2.style中定义@drawable/spinner5dip3....

    最近在做的项目中有很多下拉框,为了实现方便就用了Android 自带的Spinner,但是自带的Spinner的样式又不符合要求,就学习了一下自定义Spinner。下面是整个步骤:

    1.准备好图片

    2.style中定义

    @drawable/spinner

    5dip

    3.调用

    android:id="@+id/field_item_spinner_content"

    style="@style/spinner_style"

    android:layout_width="fill_parent"

    android:layout_height="wrap_content"/>

    4.在layout中定义simple_spinner_item.xml

    android:id="@android:id/text1"

    android:paddingLeft="5dip"

    android:paddingRight="5dip"

    android:gravity="center_vertical"

    android:textColor="#808080"

    android:singleLine="true"

    android:layout_width="fill_parent"

    android:layout_height="wrap_content" />

    5.java代码

    ArrayAdapter adapter = new ArrayAdapter(mContext,R.layout.simple_spinner_item);

    String level[] = getResources().getStringArray(R.array.affair_level);//资源文件

    for (int i = 0; i < level.length; i++) {

    adapter.add(level[i]);

    }

    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

    spinner.setAdapter(adapter);

    效果图:

    Screenshot_2015-08-20-07-17-28-300x260.jpeg

    转载时请注明出处及相应链接,本文永久地址:https://blog.yayuanzi.com/13379.html

    75d087ef9a9fb11dc373caaf33adbf7f.png

    微信打赏

    支付宝打赏

    感谢您对作者Lena的打赏,我们会更加努力!    如果您想成为作者,请点我

    展开全文
  • Android自定义View-自定义Spinner

    千次阅读 2019-11-05 14:18:12
    Android自定义View-自定义Spinner 在使用系统Spinner时,往往总不能跟自己主题进行颜色搭配。这里介绍一下对Spinner的样式的修改,主要是对外观和颜色的修改。 效果图: Spinner背景图片: 1. 2. 效果图中...

    Android自定义View-自定义Spinner

    在使用系统Spinner时,往往总不能跟自己主题进行颜色搭配。这里介绍一下对Spinner的样式的修改,主要是对外观和颜色的修改。

    效果图:

    Spinner背景图片:

    1.

    2.

    效果图中选用的是2作为的背景。

    Activity中布局:在布局中定义一个Spinner控件

     <Spinner
            android:id="@+id/sp_Exception"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/spinner_bg"
            android:layout_gravity="center_horizontal"
            android:gravity="center"
            android:layout_marginTop="5dp"
            android:layout_marginBottom="5dp"
            android:paddingRight="15dp"
            android:paddingLeft="15dp" />

    spinner_layout布局:这里必须是CheckedTextView。

    <?xml version="1.0" encoding="utf-8"?>
    <CheckedTextView xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center_horizontal"
        android:padding="5dp"
        android:textColor="@color/stategridcolor"
        android:textSize="18sp"
        tools:text="全部" />

    spinner_item布局:下拉列表布局,这里只展示一个textView。

    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/white"
        android:padding="15dp" >
    
        <TextView
            android:id="@+id/spinner_item_label"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerInParent="true"
            android:textColor="@color/stategridcolor"
            android:text="全部"
            android:textSize="18sp" />
    
    </RelativeLayout>

    Activity中代码使用:

    ...
    ... 省略部分代码
    ...
    
    list = new ArrayList<String>();
    list.add("全部	" + allCount);
    list.add("采集异常	" + caiJiCount);
    list.add("计量异常	" + jiLiangCount);
    list.add("配电异常	" + peiDianCount);
    list.add("窃电异常	" + qieDianCount);
    
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(),R.layout.spinner_layout, list) {
        @Override
        public View getDropDownView(int position, View convertView, ViewGroup parent) {
            View view = LayoutInflater.from(getActivity()).inflate(R.layout.spinner_item, parent, false);
    	TextView label = (TextView) view.findViewById(R.id.spinner_item_label);
    	label.setText(list.get(position));
    	return view;
        }
    };
    // 设置下拉列表的样式
    adapter.setDropDownViewResource(R.layout.item_spinner_daibanorder_down);
    sp_Exception.setAdapter(adapter);
    sp_Exception.setSelection(0);// 默认显示第一个item

     

     

    展开全文
  • Android 自定义 spinner样式

    千次阅读 2015-08-27 11:28:05
    Spinner demo

    1、准备两张图片,并做好9.png


    2、在drawable中定义my_spinner.xml

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

    3.写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"
       
        tools:context=".MainActivity" >
    
        <Spinner
            android:id="@+id/sp_prentClass"
            android:layout_width="match_parent"
            android:layout_height="60dp"
            android:layout_marginBottom="10dp"
            android:layout_marginLeft="15dp"
            android:layout_marginRight="15dp"
            android:layout_marginTop="10dp"
            android:animationCache="true"
            android:background="@drawable/my_spinner"
            android:drawSelectorOnTop="true"
            android:dropDownVerticalOffset="-10dp"
            android:popupBackground="@drawable/spinner_dropdown"
            android:requiresFadingEdge="none"
            android:spinnerMode="dropdown" />
    
    </LinearLayout>
    4.在layout中定义 simple_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"
        android:layout_width="fill_parent"
        android:layout_height="50dp"
        android:gravity="center_vertical"
         android:textSize="18sp"
        android:singleLine="true"
        android:paddingLeft="10dp"
        android:textColor="#808080" />
    
    
    5、java代码

    package com.example.myspinner;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.widget.ArrayAdapter;
    import android.widget.Spinner;
    
    public class MainActivity extends Activity {
    	private Spinner sp;
    
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.activity_main);
    		ArrayAdapter<String> adapter = new ArrayAdapter<String>(
    				MainActivity.this, R.layout.simple_spinner_item); // 设置下拉的每一项的样式
    		// 设置下拉方式
    		adapter.setDropDownViewResource(R.layout.simple_spinner_item);
    
    		for (int i = 0; i < 10; i++) {
    			adapter.add("测试测试" + i);
    		}
    		sp = (Spinner) findViewById(R.id.sp_prentClass);
    		sp.setAdapter(adapter);
    	}
    
    }
    

    我写的是适配平板的  显示的效果如下 :




    自己查一天资料写的 经验有限 大神勿喷.

    展开全文
  • 1.item_spinselect(Spinner样式) &lt;?xml version="1.0" encoding="utf-8"?&gt; &lt;TextView xmlns:android="http://schemas.android.com/apk/res/android" ...
  • 这个需求其实还是有的,有时候我们想在Spinner中制作出一个类似于TextView的hint那样的效果。如下: 当你第一次看到这个Spinner的时候,其中显示“点击选择”,而你点了一下,就会出现选项,一旦点选了某个选项,...
  • 具体意思比较简单,属性大家可以自己看得懂,自定义过程中也可以自己添加别的控件,看你自己发挥了。 这个不仅可以应用在spinner,还可以是listview。 spinner.xml文件内容: <?xml version="1.0" encoding="utf...
  • 自定义AndroidSpinner

    2021-05-26 14:37:24
    刚接触Android平台编程不久,被烂教材整得头晕。有一个关于Spinner扩展的问题,问题是,怎么把弹出来的菜单自定义。当然,书上是没有告诉你的,它们压根就不知道那个和...而自定义Spinner则是和这两个layout有关,Ar...
  • 1、准备两张图片,并做好9.png2、在drawable中定义spinner_selector.xml3、style中定义@drawable/spinner_selector5dip4、调用android:id="@+id/field_item_spinner_content"style="@style/spinner_style"android:...
  • 一步一步自定义spinner

    2021-06-08 16:39:18
    spinner就是下拉选择组件,系统自带的spinner使用起来非常方便,首先定义一个array(strings.xml),如下:一年级二年级三年级四年级五年级六年级代码如下:Spinner spinner = (Spinner) findViewById(R.id.spinner);...
  • android中有个Spinner控件,也就是下拉控件。但是初始的样式比较不好看,所以想着更改下样式。这样就不需要一直用EditText+popupwindow的方式来实现这种效果,会比较这种方式更简单一些。我们来看下实现的效果:1、...
  • Android自定义下拉样式Spinner

    万次阅读 2015-05-02 00:09:04
    本文继续介绍android自定义控件系列,自定义Spinner控件的使用。 实现思路 1.定义下拉控件布局(ListView及子控件布局) 2.自定义SpinerPopWindow类 3.定义填充数据的Adapter 效果图 一、定义控件布局 ...
  • 轻松自定义spinner样式

    万次阅读 2016-05-04 20:50:29
    还记得以前有过想自定义spinner样式,但上网一搜都是让你使用popupwindow去代替spinner,此时有时根本不用那么麻烦。接下来便跟大家一起来看看如何自定义spinner。 首先先看下效果图 接下来贴上几个布局 1. ...
  • 有几个数值不允许用户输入,只能在下拉列表中选择项目,一开始想过自定义dialog或者popupwindow,但是会额外增加很多代码,考虑到现在的工程代码量已经很多了,所以想到了使用google已经开发好的组件spinner组件,...
  • 1、ArrayAdapter cellAdapter = new ArrayAdapter(this,R.layout.custom_spinner_row, R.id.text, cellStrings);ArrayAdapter nameAdapter = new ArrayAdapter(this,R.layout.custom_spinner_row, R.id.text, ...
  • 最近抽了点时间,针对android一些控件的样式做了完整自定义,主要包括Spinner样式完全自定义、RadioButton[CheckBox样式雷同]样式完全自定义、Rating样式自定义,代码已经经过测试,有需要的可以下载
  • 安卓中有Spinner这样一种控件,可以实现点击旁边的一个选择型的 > 来进行用户选择自己需要的属性,然后...所以我简单介绍一下如何自定义Spinner,把它变成自己想要的样子。实现原理 根据自己实际需求,写出Spinner在界
  • 有时候因为项目的界面风格 很多控件如果使用原生的样式感觉会与整体风格有些不搭 所以需要自定义样式 很多项目中自定义控件都是必不可少的 这里参考网上的一些资料 实现了一个自定义Spinner 记录下 加深印象 ...
  • Android中提供的Spinner Widget下拉菜单已经非常好用了,样式也适用, 不过我们还是可以通过定义xml的方式来改变下拉菜单的样式。 l Spinner.getItemAtPosition(Spinner.getSelectedItemPosition());获取下拉列表框...
  • 自定义 spinner 样式

    千次阅读 2020-09-07 10:12:23
    一 , 需求样式 , 需要是一个带框还带下拉箭头的 <?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape>...
  • xamarin android自定义spinner

    千次阅读 2017-07-14 21:38:01
    感觉好丑,实际效果实在满足不了基本的UI界面要求,还是自己动手丰衣足食,看了网上关于android中自定义spinner的文章,感觉实现原理还是比较简单,所以这里用xamarin android来实现自定义spinner样式。参考文章:...

空空如也

空空如也

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

android自定义spinner样式