Xamarin.forms 自定义dropdownview控件

一 基本说明

想用xamarin做个像美团这样的下拉列表进行条件选择的功能,但是但是找了半天好像没有现成的,也没有其他类似的控件可以走走捷径,再则也没有找到popwindow之类的东东,这里只好使用stacklaout+contentview做一个伪下拉,因为没有fragement那样的控件,所以没有华丽丽的叠加层,也没有华丽丽的遮罩,由于xamarin的动画只发现了缩放,旋转,淡入淡出,位置变换(研究不深入,大神勿喷),暂时没有发现下拉一类的动画,所以暂时用缩放来展现下来的内容,使下拉的时候不至于以下就出来那么突兀。

二 实现

跟上篇自定义tabview基本一个道理,上面使用stacklayout做容器,下面使用contentview做内容容器,一起嵌套在stacklayout里面,只是用forms实现不用那么麻烦的renderder,好了废话不多说看看效果吧

三 效果(IOS和android一致)

三 总结

这里没有并不是弹出层所以会在下拉的时候把下面的内容挤下去,所以不是严格意义上的下拉,本人只是xamarin不到2周的初学者,高手勿喷

四  Demo下载

https://yunpan.cn/cqu6wsevXJSMn (提取码:be91)

时间: 2024-10-11 05:47:28

Xamarin.forms 自定义dropdownview控件的相关文章

Xamarin.Forms自定义用户界面控件实现一个HybridWebView(混合webview)

原文:Implementing a HybridWebView呈现一个特定于平台的视图 Xamarin.Forms自定义用户界面控件应该来自视图类(View class),用于在屏幕上放置布局和控件.本文演示了如何为HybridWebView(混合webview)自定义控件创建自定义渲染器,该控件演示了如何增强特定平台的web控件,以允许从JavaScript调用c#代码. 每一个Xamarin.Forms视图为每个创建本地控件实例的平台提供了相应的渲染器.当一个视图被Xamarin.Forms

Xamarin.Forms自定义GridView

Xamarin.Forms自定义GridView 在开发中,我们经常用到以格子的形式来展示我们的数据,在很多平台的控件中我们叫做GridView, 在Xamarin.Forms中没有原生的GridView,这里简单介绍一种利用Xamarin.Forms中的Grid来实现 GridView的方法. 原理就是对Grid动态添加RowDefinition和ColumnDefinition. 代码如下: 1 using System; 2 using System.Collections; 3 usin

C#自定义工业控件开发

转自阿凡卢原文C#自定义工业控件开发 由于工作需要,调研过一段时间的工业控制方面的"组态软件"(SCADA)的开发,组态软件常用于自动化工业控制领域,其中包括实时数据采集.数据储存.设备控制和数据展现等功能.其中工控组件的界面展现的实现类似于Windows系统下的各种开发控件,通过各种控件的组装,和硬件协议的集成,就可以实现对相应设备的控制和实时状态的显示. 每个对应的硬件UI展示都可以用一个自定义控件来实现,如下图的一个温度计,就可以使用UserControl来实现. using S

xamarin android——数据绑定到控件(四)

本文为通过自定义列表适配器定义ListView,以上文为基础,基于ListActivity. 定义列表项布局,包含一个图片显示,标题和描述 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="80dip"> <ImageV

xamarin android——数据绑定到控件(三)

如果当前活动中,只存在一个listview视图,可以借助ListActivity快速的实现一个列表,即当前Activity继承ListActivity.在OnCreate方法中简单的两行代码,就可以创建一个用户列表. string[] items = new string[]{ "列表 1","列表 2","列表 3","列表 4","列表 5","列表 6","列表 7&qu

自定义下拉列表控件

问题及需求 输入汉字或全拼或简拼均可得到结果(此需求用原生的ComboBox不容易实现) 点击文本框时弹出下拉列表 进入文本框时弹出下拉列表 输入文字时,如果有结果,则弹出下拉列表 除文本框和下拉列表外,点击任何地方均隐藏下拉列表 单击下拉列表中的文字,文本出现在文本框,关闭下拉列表 下拉列表出现后,默认选中第一项,第一项高亮 回车后下拉列表中选中的文本出现在文本框中 2.解决思路 用Panel作为容器,装载ListView,作为下拉列表的数据容器 定义下拉列表显示方法,并使用+=将其添加到文本

C#.NET 封装自定义组件(控件)Dll

封装自定义控件很简单,没什么技术含量,这里通过封装自定义的数字文本框实例简单总结一下: [1]新建自定义控件库 -- Windows Forms Control Library [2]添加自定义组件 -- Component Class [3]继承TextBox,添加KeyPress事件,代码如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Diagnosti

Android自定义控件之自定义组合控件(三)

前言: 前两篇介绍了自定义控件的基础原理Android自定义控件之基本原理(一).自定义属性Android自定义控件之自定义属性(二).今天重点介绍一下如何通过自定义组合控件来提高布局的复用,降低开发成本,以及维护成本. 使用自定义组合控件的好处? 我们在项目开发中经常会遇见很多相似或者相同的布局,比如APP的标题栏,我们从三种方式实现标题栏来对比自定义组件带来的好处,毕竟好的东西还是以提高开发效率,降低开发成本为导向的. 1.)第一种方式:直接在每个xml布局中写相同的标题栏布局代码 <?xm

自定义组合控件和在自定义控件中使用自定义属性

今天,整理了一下我平时的笔记,写一个比较简单的自定义组合控件,仅供小白参考,大神请绕道,希望能够对大家有一些帮助 首先,得明白为什么我们需要自定义组合控件,它是因为原有控件并不能满足开发的需求,或者说并不能达到我们想要的一种效果,这个时候,就需要我们自己定义一些控件,以达到目的 ![先来看一下效果](http://img.blog.csdn.net/20160716224219109) 个人总结自定义控件的步骤: 1.先写一个布局,这里我用的是一个相对布局,我这里的相对布局就是根布局了 <?xm