- 浏览: 269451 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
jimode2013:
thanks
UIPanGestureRecognizer学习笔记 -
白色蜻蜓:
- (void) loadView { //opaquevie ...
UIWebView中使用UIActivityIndicatorView
UITabBarController注意的地方
如果你的程序界面如上图所示的这个样子,那么你一定是同时使用了UITabBarController以及UINavigationController吧。
再如果,你希望实现这样子的效果:
1。用户起初在“分类”这个视图里面查看了一些菜系,
2。然后他点击了“搜索”Tab,又在里面看了一些搜索出来的菜谱,
3。再然后当他准备回到“分类”这个视图的时候,事实上用户心里是希望回到“分类”这个视图的根视图,在那里重新选择分类,进入分类再看菜谱。但是iPhone默认是记忆用户之前在第一步里面的那个视图的,不会自动回到根视图。
解决办法是将这个
- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController {
viewController popToRootViewControllerAnimated:YES];
}
添加到AppDelegate.m文件中。一般人都是这么做的。
但是!
其实在这里隐藏着一个问题,如果如图所示你的4个TabBar都是指向4个NavigationController,那么没有问题,运行OK。
但如果你的4个TabBar有任何一个指向的不是NavigationController,那么程序就会crash。因为非NavigationController不能够响应 popToRootViewControllerAnimated: 方法。
我的第4个TabBar指向的是一个ViewController,程序运行之后一点击第4个TabBar就崩溃,自己也只是在ViewController和IB里面仔细找错误,浪费了很多时间。
下面贴出更加安全的方法,把上面的那段代码改成这样子:
- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController {
if ([viewController isKindOfClass:[UINavigationController class]]) {
[(UINavigationController *)viewController popToRootViewControllerAnimated:YES];
}
}
就好了。
//推送到指定视图控制器
XXView *rootViewController = nil;
for (UIViewController *VC in self.navigationController.viewControllers)
{
if ([VC isKindOfClass:[XXView class]]) {
rootViewController = (XXView *)VC;
}
}
[self.navigationController popToViewController:rootViewController animated:YES];
发表评论
-
EXC_BAD_ACCESS
2013-06-21 17:59 975EXC_BAD_ACCESS 这个错误,可以这么说,90%的 ... -
NSAssert
2013-06-08 09:55 998You can use NSAssert() to deb ... -
UIWebView中的图片用本地document目录中的
2013-04-28 14:34 0-(void)webViewDidStartLoad:(UI ... -
如何点击链接直接跳转到app store指定应用下载页面
2013-03-21 14:42 2818跳转到应用下载页面: NSString *str = [ ... -
ios面试题收集一(附基本答案)
2013-03-20 11:40 1489此份面试题包含40个题目,是现在网上能搜索到的一个比较热的一 ... -
IOS5.1.1完美越狱XCODE测试出现10004003的问题
2013-03-15 11:23 1148我的APP已经上线了,但是公司有几个越狱后IOS5.1.1 ... -
MKLocalSearch用法
2013-03-08 15:21 6840原文出处:http://phpadvocate.com/bl ... -
NSString-NSDate类型转换和CustomBar的总结
2012-12-21 09:53 1353如何将一个字符串@"2012-12-21" ... -
ios判断本地文件是否存在
2012-12-17 17:36 1197NSString *path = [[NSBundle ... -
UIWebView响应单机事件
2012-12-14 11:40 1166在UIViewController中,加入协议UIGes ... -
APP适配iphone5 and ihpone4
2012-12-09 13:22 2033首先加入Default-568@2x.png得开机图片 CG ... -
百度地图API(1)
2012-12-04 14:25 2460问题 2012-10-26 11:37:05. ... -
iOS常用控件尺寸大集合
2012-11-28 16:36 1842元素控件 尺寸(pts) Window(含状态栏) 320 x ... -
UIPanGestureRecognizer学习笔记
2012-11-27 14:59 17640好久没来写笔记了,原因很简单,最近一直坐java网站,没顾上学 ... -
发送邮件---iphone开发
2012-09-27 14:00 13901、导入MessageUI.framework包 2、引入头 ... -
nsarray倒序排序
2012-09-24 16:28 2371NSSortDescriptor *descripto ... -
UITextField限制输入类型
2012-09-05 17:37 7327限制只能输入特定的字 ... -
怎么把椭圆的UISearchBar改成圆角矩形?
2012-08-29 13:03 4642for (UIView *subview in sel ... -
uitableview出现重叠的处理办法
2012-08-24 10:45 754for (UIView *subview in ... -
XIB那点问题
2012-08-09 10:49 9881、运行错误: this class is not key ...
相关推荐
本文将深入探讨如何在React Native中实现自定义图标的支持,特别是针对NavBar、TabBar和ToolbarAndroid组件,并关注图像源和完整的样式配置。 首先,React Native本身并不直接支持图标库,但它可以通过第三方库来...
标题提到的“IOS自定义控件集合(TabBar, nav bar等)”涵盖了两个关键组件:TabBar(标签栏)和NavBar(导航栏),这些都是iOS界面设计中的核心元素。下面将详细介绍这两个控件以及自定义它们的方法。 首先,...
通过使用 Taro 的组件,开发者可以方便地在不同平台上构建出功能完备且样式一致的 TabBar,提高开发效率和代码复用性。 1. **Taro 底部导航组件的结构** - `Taro.TabBar` 是 Taro 提供的内置组件,它负责显示底部...
导航栏(NavigationBar)和TabBar(Tab Bar)作为常见的UI元素,它们的隐藏与显示对于提升用户体验有着显著的作用。本文将详细介绍如何在界面跳转时实现导航栏和TabBar的隐藏与显示功能。 一、导航栏隐藏与显示 在...
在Android应用开发中,自定义导航栏是一种常见的需求,它能提供独特的用户界面和交互体验。本项目主题为“自定义导航栏(2)”,相较于之前的版本,开发者对其进行了简单的修改,尤其是对使用ViewFlipper作为导航...
2. **导航组件**:包括顶部导航(Navbar)、底部导航(Tabbar)、侧滑菜单(SideMenu)等,这些组件为移动应用提供了常见的导航模式,便于用户在应用内的页面间切换。 3. **表单组件**:如输入框(Input)、选择器...
在WXML中,我们定义了一个名为`navbar`的视图容器,它包含了三个可点击的文本元素,分别代表顶部导航栏的三个选项卡:'首页'、'搜索'和'我'。每个文本元素都有一个`wx:for`属性,用于遍历数据数组`navbar`,并使用`...
标签栏 TABBAR 导航栏 NAVBAR 吐司 TOAST 按钮 BUTTON 表单输入 INPUT 列表 LIST 弹出菜单 ACTION SHEET 提示页 MSG 对话框 DIALOG 面板 PANEL 表单预览 PREVIEW 进度条 PROGRESS 加载 LOAD MORE 图标...
2. 底部 Tab(Tabbar):作为页面间的切换工具,MUI的Tabbar组件支持静态和动态两种模式,可以通过数据绑定实现内容的实时更新。示例代码展示了如何创建一个带有多个页面的Tabbar,以及在点击时切换页面的实现方式。...
12. **页面导航**: Weex使用URL Router实现页面间的跳转,通过组件如wxc-navbar、wxc-navpage、wxc-tabbar和wxc-tabitem来构建导航栏和底部Tab。 13. **多实例管理**: Weex的JS Framework可以管理多个实例...
顺便写了登录/注册/回找密码页面(包括逻辑),只需替换你的API即可,其他页面都可以,随便写了一个包含NavBar、TabBar的布局,集成了Axios、useECharts、IconSvg。项目使用了antfu大佬的antfu/eslint-config作为...
2. 导航栏和底部TabBar:Mint-UI的NavBar和Tabbar组件可创建标准的导航栏和底部选项卡,增强用户体验。 3. 搜索功能:Search组件可以实现搜索框的功能,支持清除和自动补全。 4. 购物车:Cell、Switch和Radio等组件...
总结起来,通过CSS3的`opacity`属性和微信小程序的事件监听机制,我们可以轻松实现导航栏的透明渐变效果,提升用户界面的美观性和交互性。同时,了解如何有效利用Web Worker和离屏画布的概念,对于优化小程序的性能...
3. **导航(Nav)**:MUI 提供了底部TabBar、顶部NavBar等多种导航模式,确保用户在应用中的流畅导航。 4. **下拉刷新(PullRefresh)**:MUI 内置下拉刷新功能,用户只需简单配置即可实现列表的下拉刷新效果。 5....
4. 导航组件:如NavBar导航栏、TabBar底部标签栏、Pagination分页、Breadcrumb面包屑、DropdownMenu下拉菜单等,用于页面间的导航和操作。 5. 操作反馈组件:如Dialog对话框、Toast提示、Loading加载、ActionSheet...
2. **组件丰富**:框架内含多种组件,如导航栏(navbar)、底部栏(tabbar)、下拉菜单(dropdown)、轮播图(swiper)、弹框(modal)等,这些组件可以快速搭建出常见的移动端页面结构。 3. **易用性**:frozeUI ...
日常学习Flutter开发的积累 推荐一些平时自己学习Flutter开发当中接触到的优秀... tabbar和列表组件的使用 d. http请求JSON数据,并渲染到列表 e. 组件之间的通信 f. 路由(带参数路由) 点击前往 Flutter学习之入门和
WeUI提供了底部导航栏(TabBar)和页面头部导航(Navbar),它们在微信应用中起着导向作用。在demo中,你可以看到如何设置导航栏的图标、文字以及选中状态。 5. **列表(Lists)**: 列表组件包括普通列表项、带...
- **导航栏(Navbar)**: 可以创建类似 iOS 应用顶部的导航栏,包含标题和可选的操作按钮。 - **列表视图(Listview)**: 支持分组、嵌套、多选等,模拟 iOS 的联系人或消息列表。 - **对话框(Dialog)**: 实现...
- **页面路由**:支持多种导航体系,例如TabBar、Navigator、URLRouter等。 - **生命周期管理**:Weex定义了明确的生命周期钩子,如created、ready、render、updated、destroy等,让开发者可以精确控制页面的各个...