十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
首先,打开iOS 13的【快捷指令】软件。
创新互联科技有限公司专业互联网基础服务商,为您提供绵阳服务器托管,高防主机,成都IDC机房托管,成都主机托管等互联网服务。
请点击输入图片描述
可在【我的快捷指令】页面,点击【创建快捷指令】。
2苹果手机iOS13怎么添加快捷指令
请点击输入图片描述
还可以在点击【快捷指令中心】,向右滑动,找到【实用的小组件快捷指令】。
请点击输入图片描述
向下滑动,找到我们需要的快捷指令,如:浏览热门新闻旁的【+】。
请点击输入图片描述
在执行处可查看指令执行具体操作,也可在此处修改命令,直接使用可点击【获取快捷指令】。
请点击输入图片描述
添加完成后,回到【我的快捷指令】,点击浏览器图标,快捷命令启动,不需要自己去打开浏览器,做搜索等工作,直接查看热门新闻。
请点击输入图片描述
总结:
1、首先,打开iOS 13的【快捷指令】软件。
2、可在【我的快捷指令】页面,点击【创建快捷指令】。
3、还可以在点击【快捷指令中心】,向右滑动,找到【实用的小组件快捷指令】。
4、向下滑动,找到我们需要的快捷指令,如:浏览热门新闻旁的【+】。
5、在执行处可查看指令执行具体操作,也可在此处修改命令,直接使用可点击【获取快捷指令】。
6、添加完成后,回到【我的快捷指令】,点击浏览器图标,快捷命令启动,不需要自己去打开浏览器,做搜索等工作,直接查看热门新闻。
关键词: 递归 多级菜单 复选
1.显示多级菜单,默认显示一级.
2.可以通过点击有子级的行展开菜单
3.通过复选框,改变选中状态。状态有全选、半选、未选中
4.可以扩展获取当前所选的条目集合
1.首先根Datasource进行数据处理
2.生成一个handler:MultilevelDataHandler 将数据处理逻辑在handle处理,将数据处理隔离
3.建立一个数据模型,需要用一些属性记录层级关系。最后我用了一个字典来记录原始的数据信息。
这里是Demo的数据Json
4.将jsonDictionary转化成数据模型的时候,把层级关系也一并赋值。
由于数据层级数量的不确定性,这里用递归的方式把每层的数据结构都放到其父类的subArray当中。
5.建一个新的数组用来存储要在tableView上展示的数据模型,按照父类子类,父类子类的顺序排列。我这里默认是把第一级全部关闭展示的
6.实现菜单展开关闭功能
7.实现复选框功能
根据locationArray里记录的每一层父级的序号,找到当前model的父级
由于层级数量的不确定性,所以多次使用到了递归的方式。要注意递归的结束条件,必须陷入死循环当中。
有ID Touch功能的iOS设备上安装应用应该都具有二级菜单,具体可查询官网。
为了更好理解使用用tabbar和切换视图,我们创建一个Empty Application。
1、 打开Xcode ,新建项目
2、 创建View Controller
在项目上按花键+N创建新文件,创建 Objective-C class 文件,按Next按钮,subClass 选UIViewController 。勾选上xib选项
以同样方式创建另外三个ViewController ,RedViewController ,GreyViewController,YellowViewController。四个View准备好了。那么Tabbar呢?
3、 创建TabBarController.xib文件,选择创建Empty文件
这时候你发现创建的xib文件是空白的,不用慌,去右下角控件栏中把TabBar Controller拖过来就Ok了。
4、 关联TabBarController.xib ,tabbarAppDelegate这两个文件
在上图中选择File’s Owner,打开Identity Inspector,在Class一栏选择tabbarAppDelegate
这样,我们就可以创建TabBarController.xib 文件指向tabbarAppDelegate 文件的Outlet映射了。
5、 在Xcode中的工具栏的View菜单找到 打开Assistant Editor,使tabbarAppDelegate.h和TabBarController.xib 同时打开。
在xib文件上按住control键,往tabbarAppDelegate.h,创建Outlet.
弹出窗口输入 rootController,点connect。
6、 添加代码
打开tabbarAppDelegate.m,在didFinishLaunchingWithOptions方法中添加代码:
1.- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
2. self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
3. // Override point for customization after application launch.
4. [[NSBundle mainBundle] loadNibNamed:@"TabBarController" owner:self options:nil];
5. [self.window addSubview:self.rootController.view];
6. self.window.backgroundColor = [UIColor whiteColor];
7. [self.window makeKeyAndVisible];
8. return YES;
7、 往TabBarController.xib上添加Tab Bar Item,
把控件栏上的Tab Bar Item控件往TabBarController.xib上拖拽即可,一个放4个。
8 、关联Tab Bar Item和***ViewController。
选择其中一个Tab Bar Item,在右上角打开Identity Inspector,在Class中选择BlueViewController:
然后,打开Attribute,在NIB Name选择BlueViewController:
其他3个tab item重复类似的操作,选中对应的ViewController,这样在切换Tab标签时,就可以切换到对应的页面。
9、 设置tab item的属性
选中其中一个tab item ,会在右上角的属性栏里看到如下信息
Badge是红色圈圈里面有数字 ,表示有多少条信息的属性
Identifier 是tab item的样式,选custom是自定义,下面的是系统的样式。我选了其中四种。
bar ITem 的title image在custom的样式下能设置。
10 、剩下的3个Tab Item也做类似的设置即可。
现在基本完工,运行看看结果如何。好吧,其实和第一第二个图是一样的`,这里就不放了。
11 、在viewDidLoad方法加Log观察切换View
可以加写日志看看对应的View是什么时候运行的。第一个运行的View是BlueViewController,点击其他的tab项时,加载其他的view,加载一次之后下次点击不再调用viewDidLoad。
1.- (void)viewDidLoad
2. [super viewDidLoad];
3. NSLog(@"BlueViewController");
4. // Do any additional setup after loading the view from its nib.