3级pickview ios_ios仿安卓pickview - CSDN
精华内容
参与话题
  • 选取器视图,PickerView,可以配置一个或多个刻度盘,可现实文本,也可以显示图像,转动刻度盘即可获取值,容易操作,在各类APP上均可以看到类选取器视图。 本次讲述PickerView的基本操作和练手时发现的问题列举,每...
    选取器视图,PickerView,可以配置一个或多个刻度盘,可现实文本,也可以显示图像,转动刻度盘即可获取值,容易操作,在各类APP上均可以看到类选取器视图。
    

    PickerView

    本次讲述PickerView的基本操作和练手时发现的问题列举,每个操作步骤分开讲。
    语言:Objective-C

    初始化

    PickerView 和 data 独立开来。PickerView 调用数据源和委托上的方法来获取需要显示的数据。
    

    在头文件类声明中,PickerView所在的ViewController遵循两个角色的协议,<UIPickerViewDelegate,UIPickerViewDataSource>。选定PickerView,option+command+6,将连接检查器Connection Inspector 中的delegate 和 dataSource 输出接口连接到ViewController图标上,则ViewController类实例将作为PickerView的数据源和委托,而PickerView会要求实例提供数据进行显示。这一步设置无法在代码中体现,新手往往会漏掉输出接口同视图控制器的关联,导致后面无法显示数据。

    数据源

    通常将属性列表文件作为数据源。Xcode中创建属性列表,Xcode在新建文件想到页面的Resource部分提供了创建属性列表所需的模板,也支持在编译器的面板中编辑属性列表。将数据对象列表嵌入到属性列表文件中,将文添加到项目的Resource文件夹中,如web服务请求中的属性列表。这样的做法的好处在于,无需重新编译源代码即可更改属性列表文件。使用时,通过程序包引用,根据属性列表文件的内容对实例进行初始化,例如:NSArray和NSDictionary,提供了一个名为initWithContentsOfFile:的方法。
    操作步骤如下:

    1. 获取程序包的引用
      NSBundle *bundle = [NSBundle mainBundle];
    2. 获取项目中Resource文件中的资源的路径
      NSURL *plistURL = [bundle URLForResource:@" somedictionary" withExtension:@"plist"];
    3. URL创建一个NSDictionary或NSArray对象,获取到的属性列表内容载入到新创建的NSDictionary或NSArray对象中,然后将该对象赋给someDataSource
      someDataSource = [NSDictionary dictionaryWithContentsOfURL:plistURL];

    覆盖viewDidLoad方法,初始化数据源。

    委托方法实现

    委托,承担一部分选择器的工作,最重要的是绘制每个滚轮和每一行的内容。
    1. 添加UIPickerViewDataSource协议的方法
    指定选择器的滚轮数,
    -(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView;
    指定每个选择器滚轮的选项数,
    -(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component)
    以上两个都是required方法,必须实现的方法,绘制PickerView
    2. 添加UIPickerViewDelegate协议的方法
    delegate协议下的几个方法均为可选optional
    显示指定滚轮中指定行的数据,
    -(nullable NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component;
    选择器的选择发生变化时操作,应用于相关联的选择器滚轮,更新显示,可调用方法:
    -(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
    为选择器提供UIView中绘制的内容,调用方法:
    -(UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view

    加点有意思的声音

    每次看到选取器,第一个想到就是高级密码箱上的刻度盘,每次转动均可以听到“嗒嗒声”。
    PickerView加点声音,更棒。
    声音实现的步骤:
    1.实例变量保存声音的引用
    SystemSoundID soundID;
    2.检查实例变量会初始化为0,而有效的声音标示符不会为0
    if (soundID == 0)
    3.获取程序包的引用,获取添加到项目中Resource文件中的资源
    NSBundle *bundle = [NSBundle mainBundle];
    4.获取所需资源的路径
    NSURL *plistURL = [bundle @"声音文件名字" ofType:@"声音文件的后缀"];
    5.加载声音
    AudioServicesCreateSystemSoundID((__bridge CFURLRef)soundURL,&soundID);
    6.播放声音
    AudioServicesPlaySystemSound(soundID);

    总结

    PickerView选取器是个较为复杂的控件,不但涉及到一般view的操作外,同时需要委托和数据源支撑控件的运行。对于初次接触复杂的控件的新手来说会比较无头绪,但每个操作实际运行后,整理完选取器的基本操作,了解如何让控件正常的满足需求的运行,会渐渐对选择器有个较为清晰的理解。按照“初始化–数据源–委托方法实现”的顺序来创建基本的选取器,以后的商用项目中还需要更多的自定义功能加进去完善。

    展开全文
  • iOS常用框架推荐(超好用)

    千次阅读 2016-09-08 14:44:22
    给大家介绍几个特别好用的框架

    今天给大家推荐几款超级好用的iOS框架:

    1.新闻类的顶部选项卡类似网易新闻:WMPageController,HMSegmentControl,HTHorizontalSelectionList

    这三者我跟推荐第一种,第一种有很多手势,比如点击顶部列表会滑动到最顶端。具体使用方法请参考点击打开链接

    2.自定义tabbar:CYLTabBarController

    闲鱼和转转这两个app相信大部分人都用过,他们的tabbar是不是很有特色呢,想拥有和他们一样的效果就使用这个框架。具体使用方法请参考点击打开链接

    3.抽屉效果:MMDrawerController,RESideMenu

    很多app需要做成侧边栏菜单栏的抽屉效果,这时候你就可以选择MMDrawerController,具体使用方法请参考点击打开链接

    4.KVC键值对编码常用来字典和模型互转:MJExtension,Mantle,JsonModel

    这三者都很好用,我比较常用MJExtension,耦合性低不需要继承,直接用就行,具体使用方法请参考点击打开链接

    5.透明指示层:MBProgressHUD,SVProgressHUD

    这两者是当前最常使用的,不过我更倾向于第一种,具体使用方法请参考点击打开链接

    6.避免键盘遮挡输入框:TPKeyboardAvoiding

    有了这个框架,我们再也不用监听键盘的升起落下了。具体使用方法请参考点击打开链接

    7.网络请求的框架:AFNetworking,YTKNetworking

    相信只要是做iOS开发的都知道AFN,但是AFN使用起来还是有点繁琐,所以我推荐大家使用YTKNetworking(基于AFN的封装),具体使用方法请参考点击打开链接

    8.图表:Charts,MPAndroidChart

    Charts这个框架是根据MPAndroidChart改的,Charts是用Swift语言写的,MPAndroidChart是用java语言写的,有柱状图,饼图,雷达图等等,具体使用方法请参考点击打开链接

    9.屏幕适配:Masonry,SnapKit,HandyAutoLayout

    我常用Masonry做屏幕适配,其他两个也挺多人用,关于Masonry使用请参考点击打开链接

    10.JavaScript与ObjectiveC之间发送消息:WebViewJavaScriptBridge

    用于JS与OC交互时使用,请参考点击打开链接。提到这个顺便说下JSPatch与JSPatchConvertor,前者是可以用JavaScript语言编写原生iOSapp,后者是将OC语言的代码转成JavaScript语言

    11.计算tableViewCell的行号:UITableView-FDTemplateLayoutCell

    有时我们需要根据cell里的数据来计算cell的高度,实现起来比较困难,此时就可以用这个框架啦,使用参考点击打开链接

    12.ARSegmentPager

    a fully custom UITabbarController-likely controller with parallax header,使用参考点击打开链接

    13.WYPopoverController

    当前内容的弹框,使用参考点击打开链接

    14.用来编辑富文本:YYText,TTTAttributedLabel

    这两个框架可以结合使用,都是用于富文本问题

    15.显示webView的加载进度:NJKWebViewProgress

    使用请参考点击打开链接

    16.SAMKeychain

    使用参考点击打开链接

    17.三级联动的pickview以及时间选择等等:ActionSheetPicker-3.0

    使用参考点击打开链接

    18.下拉刷新水滴动画:ODRefreshControl

    使用参考点击打开链接

    19.轮播图:SDCycleScrollView

    使用参考点击打开链接


    展开全文
  • Flutter经验积累、实战分享、系列教程

    千次阅读 热门讨论 2020-09-27 20:13:35
    本教程从flutter 到精通再独立开发一个App。 第一阶段 UI基础 第二阶段 基础功能篇 如 flutter 中的数据存储、网络访问...第四阶段 高级功能篇 如 flutter 与android ios 之间的双向 互调 第五阶段 flutter开发一个App

    Flutter 从入门 到精通系列文章

    本文章为 Flutter 开发中的经验积累分享、教程分享、开发笔记分享目录,持续维护中。

    题记
    —— 执剑天涯,从你的点滴积累开始,所及之处,必精益求精。

    github? 你可能需要 百度同步
    CSDN 网易云课堂教程 掘金
    知乎 Flutter系列文章 头条同步

    目前在西瓜视频上免费刊登 Flutter 系列教程,每日更新,欢迎关注接收提醒

    【x1】点击查看提示

    【x2】各种系列的教程

    一个程序员的修炼日记


    2020.09.27

    2020.09.25

    2020.09.19

    2020.09.12 开发笔记

    2020.09.02

    2020.08.02

    • Flutter中ListView加载图片数据的优化查看详情

    • Flutter异步加载FutureBuilder解决重绘方案查看详情

    • Flutter异步编程async与await的基本使用查看详情

    • Flutter延时任务、Flutter通过Future与Timer实现延时任务查看详情

    • Flutter中async与await异步编程原理分析查看详情

    • Dart语言基础Map、List、Set操作合辑查看详情

    • Flutter图像绘制原理深入分析查看详情

    • Flutter中Widget 、Element、RenderObject角色深入分析 查看详情

    • Flutter中AnimatedOpacity 实现透明度渐变动画效果 查看详情

    • Flutter透明度渐变动画Opacity实现透明度渐变动画效果查看详情

    • Flutter透明度渐变动画FadeTransition实现透明度渐变动画效果 查看详情

    2020.07.19

    • Flutter闪屏过渡动画,闪光占位动画查看详情
    • Flutter的AnimatedDefaultTextStyle实现文本样式的动画过渡切换效果 查看详情
    • Flutter的AnimatedContainer实现容器样式的动画切换 查看详情

    2020.07.15

    • Flutter加载Html并实现与JS 的双向调用 查看详情

    2020.07.05

    2020.06.22


    2020.05.27

    2020.05.23

    2020.05.09

    • Flutter中焦点FocusNode使用分析Flutter输入框焦点事件的捕捉与监听 查看详情

    2020.04.19

    • Flutter底部导航栏BottomNavigationBar页面状态保活解决方案 查看详情

    2020.04.06

    2020.03.15

    2020.03.05

    2020.03.01

    • flutter开发仿抖音首页面上下滑动切换播放视频效果查看详情

    2020.02.15

    2020.01.07

    NestScrollView系列文章

    • flutter NestedScrollView 下拉刷新的解决方案一查看详情

    极光推送 系列文章

    • flutter应用开发中集成极光推送(flutter极光推送第一篇)查看详情

    TextField 系列文章

    2019.12.19

    2019.12.17

    2019 .7.22

    2019 .7.17

    • 4.1.1 Flutter通过BasicMessageChannel实现Flutter 与Android iOS 的双向通信 查看详情
    • 4.1.2 Flutter通过MethodChannel实现Flutter 与Android iOS 的双向通信 查看详情

    2019.7.16

    2019.7.15 凌晨

    • 最新更新 4.1.1 flutter 主动调用android 原生方法 查看详情
    • 最新更新 4.1.2 flutter 主动调用ios 原生方法 查看详情

    2019年07月12日 傍晚

    【本案例开发flutter 使用到的开发工具为 android Studio ,Xcode】

    1 第一阶段 UI 基础篇


    1.1 第一阶段 之 【环境配制相关】

    • 1.1.1 flutter 从配制开发环境再到开发第一个应用 查看详情

    • 1.1.2 flutter 使用Android Studio 创建第一个应用 查看详情

    • 1.1.3 flutter 开发应用第一个页面 查看详情

    • 1.1.4 flutter 之 Dart语言 基础 查看详情

    1.2 第一阶段 之 Flutter 【ui 基础 -1】

    1.3 第一阶段 之 Flutter 【ui 基础 -2】

    1.4 第一阶段 之 Flutter 【ui 基础 -3】

    • 1.4.1 PickView 时间选择器 查看详情
    • 1.4.2 PickView 城市选择器
    • 1.4.3 弹框 dialog 查看详情
    • 1.4.3-1 Flutter自定义使用Dialog并更新Dialog中的内容 查看详情
    • 1.4.4 flutter 实现轮播图效果 查看详情
    • 1.4.5 导航栏菜单
      • flutter BottomNavigationBar 实现底部导航栏查看详情
      • flutter 自定义 BottomAppBar 实现不规则底部导航栏 查看详情
      • flutter 自定义 绘制布局 实现不规则底部动画导航栏 查看详情
    • 1.4.6 flutter Toast消息提示框 查看详情
    • 1.4.7 flutter 设置圆角矩形边框 查看详情

    2 第二阶段 功能基础篇

    2.1 flutter Gesture 手势处理

    • 2.1.1 flutter widget 添加单击、双击、长按、按下与抬起事件监听 查看详情
    • 2.1.2 flutter InkWell 设置水波纹点击效果详述 查看详情
    • 2.1.3 Flutter中为图片设置波纹点击效果 查看详情

    2.2 flutter 常用工具类

    2.2 flutter 数据存储

    2.3 flutter 页面路由跳转

    2.4 flutter 网络请求

    2.5 flutter oss 阿里云文件上传

    3 第三阶段 动画功能篇

    3.1 flutter 平移动画

    • 3.1.1 flutter SlideTransition实现平移动画 查看详情

    3.2 flutter 旋转动画

    • 3.2.1 flutter RotationTransition实现旋转动画 查看详情

    3.3 flutter 缩放动画

    • 3.3.1 flutter ScaleTransition实现缩放动画 查看详情
    • 3.3.2 flutter PositionedTransition 实现缩放动画 查看详情

    3.4 flutter 透明渐变动画

    • 3.4.1 flutter FadeTransition实现透明度渐变动画 查看详情

    4 第四阶段 高级功能篇

    4.1 flutter 与android ios 原生互调
    • 4.1.1 Flutter通过 BasicMessageChannel 实现 Flutter 与 Android iOS 的双向通信 查看详情

    • 4.1.2 Flutter通过 MethodChannel 实现 Flutter 与Android iOS 的双向通信 查看详情

    • 4.1.3 flutter 调用android 相机

    • 4.1.4 flutter 调用ios 相机

    • 4.1.5 flutter 调用android 扫一扫

    • 4.1.6 flutter 调用ios 扫一扫

    • 4.1.7 调用android mp3格式录音

    • 4.1.8 flutter 调用ios mp3格式录音

    4.2 flutter 中嵌入 android ios 原生view
    4.3 android ios 原生中 嵌入使用flutter widget
    4.4 flutter 插件开发
    • 4.4.1 flutter 调用原生android ios 自定义相机插件
    • 4.4.2 flutter 调用原生android ios 扫一扫插件
    • 4.4.3 flutter 调用原生 webview 插件 查看详情
    • 4.4.4 flutter 调用原生 录音 mp3格式 插件

    在这里插入图片描述

    展开全文
  • iOS学习之UIPickerView控件的关联选择

    万次阅读 2012-10-31 09:58:17
    接上篇iOS学习之UIPickerView控件的简单使用 接着上篇的代码 http://download.csdn.net/detail/totogo2010/4391870 ,我们要实现的效果如下:当选择左边的一选项时,左边展示一选项里含有的二选项,选择后...

    接上篇iOS学习之UIPickerView控件的简单使用 

    接着上篇的代码 http://download.csdn.net/detail/totogo2010/4391870 ,我们要实现的效果如下:



    当选择左边的一级选项时,左边展示一级选项里含有的二级选项,选择后显示在TextField里。

    如何实现呢?建立一个和左边的列表key对应的数组,当选择这个key时,刷新左边UIPickerView部分的内容显示对应数组的数据,选择时,找到

    两个UIPickerView部件rowIndex,找出数据,放到TextField里。

    1、打开上篇PickerViewDemo项目,在ViewController.h添加两个成员变量:NSArray *subPickerArray; NSDictionary *dicPicker;

    #import <UIKit/UIKit.h>
    
    @interface ViewController : UIViewController<UIPickerViewDelegate, UITextFieldDelegate,UIPickerViewDataSource>
    {
        NSArray *pickerArray;
        NSArray *subPickerArray;
        NSDictionary *dicPicker;
    }
    - (IBAction)selectButton:(id)sender;
    @property (strong, nonatomic) IBOutlet UIToolbar *doneToolbar;
    @property (strong, nonatomic) IBOutlet UIPickerView *selectPicker;
    @property (strong, nonatomic) IBOutlet UITextField *textField;
    @end

    2、初始化

    - (void)viewDidLoad
    {
        [super viewDidLoad];
        pickerArray = [NSArray arrayWithObjects:@"动物",@"植物",@"石头", nil];
        dicPicker = [NSDictionary dictionaryWithObjectsAndKeys:
                     [NSArray arrayWithObjects:@"鱼",@"鸟",@"虫子",            nil], @"动物",
                     [NSArray arrayWithObjects:@"花",@"草",@"葵花",            nil], @"植物",
                     [NSArray arrayWithObjects:@"疯狂的石头",@"花岗岩",@"鹅卵石", nil], @"石头",nil];
        
        subPickerArray = [dicPicker objectForKey:@"动物"];
        textField.inputView = selectPicker;
        textField.inputAccessoryView = doneToolbar;
        textField.delegate = self;
        selectPicker.delegate = self;
        selectPicker.dataSource = self;
        selectPicker.frame = CGRectMake(0, 480, 320, 216);
    
    }
    

     NSDictionary *dicPicker;赋值,对应的三个关键字添加了对应的数组。

    3、Component返回两个,这样就有两个齿轮了。

    -(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView{
        return 2;
    }

    4、使用宏

    #import "ViewController.h"下面定义两个宏,代表UIPickerView齿轮的左边的部分和右边的部分。左边的部分是0,右边的是1.

    #import "ViewController.h"

    #define kFirstComponent 0

    #define kSubComponent 1


    5、判断是那个齿轮,返回相应的数据的Count。

    -(NSInteger) pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component{
        if(component == kFirstComponent){
            return [pickerArray count];
        }else {
            return [subPickerArray count];
        }
    
    }

    6、根据component返回相应的String数据

        -(NSString*) pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component{
        if(component == kFirstComponent){
            return [pickerArray objectAtIndex:row];
        }else {
            return [subPickerArray objectAtIndex:row];
        }
    }

    7、拖动左边的齿轮时,右边的数据相应的Reload更新。

    -(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component{
        if (component == kFirstComponent) {
            subPickerArray = [dicPicker objectForKey:[pickerArray objectAtIndex:row]]; 
            [pickerView selectRow:0 inComponent:kSubComponent animated:YES];
            [pickerView reloadComponent:kSubComponent];
        }
    }

    8、相应选择的数据,并显示在TextField上。

    -(void)textFieldDidEndEditing:(UITextField *)textField{
        NSInteger firstViewRow = [selectPicker selectedRowInComponent:kFirstComponent];
        NSInteger subViewRow = [selectPicker selectedRowInComponent:kSubComponent];
        NSString * firstString = [pickerArray objectAtIndex:firstViewRow];
        NSString * subString =  [[dicPicker objectForKey:[pickerArray objectAtIndex:firstViewRow]] objectAtIndex:subViewRow] ;
        NSString *textString = [[NSString alloc ] initWithFormat:@"您选择了:%@%@%@", firstString, @" 里的 ", subString];
        self.textField.text = textString;
    }
    
    - (IBAction)selectButton:(id)sender {
        [textField endEditing:YES];
    }
    大功告成,运行,点击TextField,弹出:


    最终代码:http://download.csdn.net/detail/totogo2010/4393004

    著作权声明:本文由http://blog.csdn.net/totogo2010/原创,欢迎转载分享。请尊重作者劳动,转载时保留该声明和作者博客链接,谢谢




    展开全文
  • 在项目中导入wheelView文件 布局文件:wheel_view.xml xml version="1.0" encoding="utf-8"?> LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="hori
  • 这里面有很多自定义的宏,效果图在下面,如果想要这个效果的朋友,不妨花几分钟把里面的宏改下等不报错了,直接用这下面的代码调用就可以了! 调用代码 SelectTimeV *selectTimeV = [[SelectTimeV alloc] init];...
  • 目前 基于设计的原因 我们android 端开发 在很多ui 的设计风格上大多走效仿ios的道路 一是很多ui和设计为了效果统一 二是 设置起来很方便 会android设计的ui毕竟不是很多 三是ios风格确实简约美观 当然也看得出来ios...
  • iOS常用框架推荐

    千次阅读 2018-04-19 10:53:24
    今天给大家推荐几款超级好用的iOS框架: 1.新闻类的顶部选项卡类似网易新闻:WMPageController,HMSegmentControl,HTHorizontalSelectionList 这三者我跟推荐第一种,第一种有很多手势,比如点击顶部列表会...
  • Android-PickerView系列之介绍与使用篇(一)

    万次阅读 多人点赞 2018-02-23 18:32:52
    Android-PickerView是一款仿iOS的PickerView控件,并封装了时间选择和选项选择这两种选择器,详细特性如下: WheelView —— 基础控件 带有3D圆弧效果。 支持文字、颜色、大小设置。 支持背景颜色设置。 支持...
  • IOS级联(省份和城市)

    千次阅读 2016-01-16 17:22:56
    IOS省份和城市的级联 1.资料准备 一个plist文件,plist文件的根目录是一个省份的字段name和一个存放城市名称的数组,如下图所示 界面的效果如下:一个label和一个TextField即可  2.创建一个...
  • Android-PickerView

    千次阅读 2016-11-27 01:59:49
    简介:仿 iOS 的 PickerView 控件,有时间选择和选项选择并支持一二三联动效果,TimePopupWindow 时间选择器,支持年月日时分,年月日,时分等格式;OptionsPopupWindow 选项选择器,支持一,二,三选项选择,...
  • IOS中的高级控件拾取器 在学习这个高级控件之前先建立好项目 然后按照在 《008 在Xcode4.5上创建IOS6.0应用 (多视图应用程序)》中的方法建立两个视图 最后在AppDelegate.m文件中添加如下...
  • 1.案例简介 通过读取文件,将中国所有城市写入sqlite数据库中,现通过UIPickView实现中国所有城市的选择;
  • 本文转自:http://lwxshow.com/7-the-tabbar-and-selector-ios-video-tour/ 标签栏和选取器! PPT 2.在线观看 7.1-基础讲解与DatePicker! [video]http://v.youku.com/v_show/id_XNDA3OTM4ODIw.html[/video]
  • IOS UIPickerView的简单使用 省份+城市 联动 1,首先看.h文件定义的变量 #import @interface ViewController : UIViewController { NSDictionary *_siteDic;//省份字典 NSMutableDictionary *_cityList;//市区...
  • 上周项目比较忙,所以没更今天给大家带来一组选择器的福利。本文Github代码链接 https://github.com/AndroidMsky/AndoirdIOSPicker 先上...先看使用方法:日期选择:private void showDateDialog(List<Integer> date) {
  • iOS 比较好用的框架

    2018-09-30 15:32:14
    1.FDFullscreenPopGesture 侧滑 2.计算tableViewCell的...3.三联动的pickview以及时间选择等等:ActionSheetPicker-3.0 4.轮播图:SDCycleScrollView 5.键盘弹出 IQKeyboardManager 6.网络监测 Reachabilit...
  • Android-PickerView的简单封装与使用

    万次阅读 热门讨论 2020-05-09 14:55:31
    前言:这是一款仿iOS的PickerView控件,有时间选择器和选项选择,支持年月日时分,年月日,时分等格式。 主要目的:百度上有非常多写这个开源项目的用法,不过大多数都是照搬github上面复制过来的,少有人说明该...
  • Android最全UI库合集

    万次阅读 多人点赞 2019-04-04 18:00:10
    Android UI Library 目录索引 抽屉菜单 ListView WebView SwitchButton 按钮 点赞按钮 进度条 TabLayout 图标 下拉刷新 ViewPager 图表(Chart) 菜单(Menu) 浮动菜单 对话框 ......
  • GitHub上受欢迎的Android UI Library

    万次阅读 2019-06-19 17:50:34
    GitHub上受欢迎的Android UI Library
1 2 3 4 5 ... 8
收藏数 153
精华内容 61
关键字:

3级pickview ios