android——下拉选择框(自定义spinner)

android——下拉选择框(自定义spinner),第1张

概述相信大家都有遇到下拉选择这个功能,接下来我把我学习的给大家分享一下。一、导入依赖implementation'com.github.arcadefire:nice-spinner:1.4.4'二、具体应用1、接来下就是创建一个xml布局了fragment_restaurant,我个人比较喜欢用constraintlayout约束性布局,我觉得

相信大家都有遇到下拉选择这个功能,接下来我把我学习的给大家分享一下。

一、导入依赖
    implementation 'com.github.arcadefire:nice-spinner:1.4.4'
二、具体应用

1、接来下就是创建一个xml布局了fragment_restaurant,我个人比较喜欢用constraintlayout约束性布局,我觉得还挺好用的。

<androIDx.constraintlayout.Widget.ConstraintLayout xmlns:androID="http://schemas.androID.com/apk/res/androID"    xmlns:app="http://schemas.androID.com/apk/res-auto"    androID:layout_wIDth="fill_parent"    androID:layout_height="fill_parent"    androID:orIEntation="vertical">    <linearLayout        androID:ID="@+ID/ll"        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:gravity="center"        androID:orIEntation="horizontal"        app:layout_constrainttop_totopOf="parent">        <org.angmarch.vIEws.NiceSpinner            androID:ID="@+ID/spinner_fruit"            androID:layout_wIDth="260dp"            androID:layout_height="80dp"            androID:textcolor="@color/black"            androID:textSize="36sp"            app:layout_constraintRight_toleftOf="@ID/spinner_food"            app:layout_constrainttop_totopOf="parent" />        <org.angmarch.vIEws.NiceSpinner            androID:ID="@+ID/spinner_food"            androID:layout_wIDth="420dp"            androID:layout_height="80dp"            androID:layout_marginleft="40dp"            androID:textcolor="@color/black"            androID:textSize="36sp"            app:layout_constraintleft_toRightOf="@ID/spinner_fruit"            app:layout_constrainttop_totopOf="@ID/spinner_fruit" />    </linearLayout></androIDx.constraintlayout.Widget.ConstraintLayout>

二、布局文件写完,就该写具体的应用逻辑了,我们新建一个activity或者一个fragment,这看你自己的使用场景。

我这里就以创建fragment为例了,创建一个RestaurantFragment。具体使用就是将你的列表清单即一个List绑定到控件中,没错,就这么easy,嘻嘻!

public class RestaurantFragment extends Fragment{    private List<String> fruitList = new ArrayList<>();    private List<String> foodList = new ArrayList<>();    @OverrIDe    public VIEw onCreateVIEw(LayoutInflater inflater, VIEwGroup container, Bundle savedInstanceState) {        VIEw vIEw = inflater.inflate(R.layout.fragment_restaurant, container, false);        fruitList.add("苹果");        fruitList.add("香蕉");        fruitList.add("西瓜");        fruitList.add("葡萄");                foodList.add("红烧肉");        foodList.add("可乐鸡翅");        foodList.add("奥尔良烤鸡");        //找到控件        NiceSpinner spinnerFruit = (NiceSpinner) vIEw.findVIEwByID(R.ID.spinner_fruit);        NiceSpinner spinnerFood = (NiceSpinner) vIEw.findVIEwByID(R.ID.spinner_food);        //设置背景,自定义的背景        spinnerFood.setBackgroundResource(R.drawable.style_item);        spinnerFruit.setBackgroundResource(R.drawable.style_item);        //将数据绑定        spinnerFruit.attachDataSource(fruitList);        spinnerFood.attachDataSource(foodList);        spinnerFruit.setonSpinnerItemSelectedListener(new OnSpinnerItemSelectedListener() {            @OverrIDe            public voID onItemSelected(NiceSpinner parent, VIEw vIEw, int position, long ID) {                Toast.makeText(getActivity(), "你选择标签" + fruitList.get(position), Toast.LENGTH_SHORT).show();            }        });        spinnerFood.setonSpinnerItemSelectedListener(new OnSpinnerItemSelectedListener() {            @OverrIDe            public voID onItemSelected(NiceSpinner parent, VIEw vIEw, int position, long ID) {                Toast.makeText(getActivity(), "你选择标签" + foodList.get(position), Toast.LENGTH_SHORT).show();            }        });        return vIEw;    }}

三、第三部就是在drawable里面新建一个xml样式了style_item

<?xml version="1.0" enCoding="utf-8"?><selector xmlns:androID="http://schemas.androID.com/apk/res/androID">    <item androID:wIDth="300dp" androID:height="72dp">        <shape androID:shape="rectangle">            <solID androID:color="#ffffffff" />            <corners androID:radius="6dp" />        </shape>    </item></selector>

ok,这样大功告成了,运行一下看一下吧!注意,里面的List换成你自己的实际数据就行,布局样式也可以换成你自己的。

总结

以上是内存溢出为你收集整理的android——下拉选择框(自定义spinner)全部内容,希望文章能够帮你解决android——下拉选择框(自定义spinner)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1010105.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存