是否有可能获得一个 .xib 窗口到选项卡式故事板

2024-01-26

我没有很长时间编写代码,Xcode,所以我有点垃圾,基本上我已经创建了一个 .xib 并希望它出现在故事​​板中,但我真的不知道从哪里开始,因为我有一个 xib 窗口具有UITableView and UIPickerView其中所有代码在 xib 中都很好,但我是否需要在故事板 .h / .m 等中添加代码,如果不是,我该如何为我的应用程序做某种下拉菜单。这是xib中的代码

#import <UIKit/UIKit.h>

    @interface myview : UIViewController <UITableViewDelegate, UITableViewDataSource, UIPickerViewDelegate, UIPickerViewDataSource>    


    @property (strong, nonatomic) IBOutlet UITableView* tableView;
    @property (strong, nonatomic) IBOutlet UIPickerView* pickerView;
    @property (strong, nonatomic) NSMutableArray* tableData;
    @property (strong, nonatomic) NSMutableArray* pickerData;


    @end

这是 .m 但我会把它分解

    #import "myview.h"

    @implementation myview


    @synthesize tableView, pickerView, tableData, pickerData;





    - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
    {
        self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
        if (self) {
            // Custom initialization
        }
        return self;
    }

this is the -(void)viewDidLoad];etc..


    - (void)viewDidUnload
    {
        [super viewDidUnload];

        tableView.delegate = self;
        tableView.dataSource = self;
        pickerView.delegate = self;
        pickerView.dataSource = self;

        tableData = [[NSMutableArray alloc] init]; // table starts empty
        pickerData = [[NSMutableArray alloc] initWithObjects:@"1", @"2", @"3", @"4", @"5", nil]; // picker starts with values 1, 2, 3, 4, 5

        [tableView reloadData];
        [pickerView reloadAllComponents];    // Release any retained subviews of the main view.
        // e.g. self.myOutlet = nil;
    }

-(bool) 


        - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
        {
            // Return YES for supported orientations
            return (interfaceOrientation == UIInterfaceOrientationPortrait);
        }


        - (NSInteger)numberOfSectionsInTableView:(UITableView*)tableView {
            //The number of sections in UITableView
            return 1;

        }


        - (NSInteger)tableView:(UITableView*)tableView numberOfRowsInSection:(NSInteger)section {
            // The number of rows in the UITableView
            return [tableData count];

        }


         - (UITableViewCell*)tableView:(UITableView*)tableView1 cellForRowAtIndexPath:(NSIndexPath *)indexPath {
                static NSString *cellIdentifier = @"cell";

           UITableViewCell *cell = [tableView1 dequeueReusableCellWithIdentifier:cellIdentifier];

                if (cell == nil) {
                    cell = [ [UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:cellIdentifier];

          }
    cell.textLabel.text = [tableData objectAtIndex:indexPath.row];

        return cell;

    }  


        - (void)tableView:(UITableView*)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
            // Whatever happens when you select a table view row.
        }

        - (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
        {
            // The number of sections in the UIPickerView
            return 1;
        }

        - (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
        {
            // The number of rows in the UIPickerView
            return [pickerData count];
        }

        - (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
        {
            // The data for each row in the UIPickerView
            return [pickerData objectAtIndex:row];
        }

        - (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
        {
            // whatever you want to happen when a row is selected.

            // here I am assuming you want to remove from the picker and add to the table on selection
            [tableData addObject:[pickerData objectAtIndex:row]];
            [pickerData removeObjectAtIndex:row];

            [tableView reloadData];
            [self.pickerView reloadAllComponents];   
     }




        @end

我希望这一切都是有意义的,我期待着您的来信

非常感谢您的宝贵时间:)


没有下拉菜单自动转换。该过程是手动的,描述如下:

  1. 从 xib 剪切并粘贴到新的 Storyboard 视图控制器(打开 xib,全选并选择复制,然后转到 Storyboard 并将其粘贴到空视图控制器中)。
  2. 将新的视图控制器子类(.m 和 .h)添加到项目中。
  3. 将自定义方法从旧视图控制器子类剪切并粘贴到新视图控制器子类。请注意不要迁移加载 xib 的代码。
  4. 首先将新的自定义视图控制器子类与故事板中的视图控制器关联起来。
  5. 连接所有 IBActions 和 IBOutlet,您就可以开始了!
  6. 或者,您可以寻找使用 segues 而不是 IBActions 的方法。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

是否有可能获得一个 .xib 窗口到选项卡式故事板 的相关文章

  • UITableViewCell的detailTextLabel滚动时消失

    我正在使用一个字符串数组 我在其中设置detailTextLabel从 最初所有字幕都设置正确 但如果我滚动detailTextLabel消失 UITableViewCell tableView UITableView tableView
  • 保存一页数据并将该数据添加到 tableView

    大家好 我有 2 个视图 第一个有 UITableView 第二个有一个文本字段 当用户按下第二页上的 保存 按钮时 我希望将文本字段文本添加到 tableView 中 这是我正在使用的代码 IBAction saveButton id s
  • iOS 有没有办法通过按钮调整图像大小?

    如下图所示 按钮的图像跨越了按钮边界 有没有办法通过故事板或以编程方式使图像适合按钮的边界 更改按钮Style from Plain to Default 这是一个限制为60 x 60 with a 80 x 80图像与Style Plai
  • 如何在 iOS 中以编程方式在 UITableViewCells 中添加图像

    我需要添加不同的图像UITableViewCells以编程方式 我怎样才能做到这一点 我正在尝试一些代码 但图像不显示在UITableViewCells 这是我下面的代码 void viewDidLoad arrImages NSMutab
  • 我可以混合 UITableViewDelegate 的 didSelectRowAtIndexPath: 吗?

    问题是这样的 我需要能够在具有大量表视图的大型现有应用程序中获取 didSelectRowAtIndexPath 的分析 我的第一个想法是在 didSelectRowAtIndexPath 上进行方法调整 但是我的应用程序崩溃并显示 无法识
  • 如何搜索字典数组并在 UITableview 中显示?

    我是 IOS 新手 正在使用UISearchDisplayController用于搜索 BOOL searchDisplayController UISearchDisplayController controller shouldRelo
  • Segue Unwind 返回到最后一个特定的视图控制器

    有没有一种方法可以让一个按钮展开回特定的视图控制器 例如 假设我有 ViewController A 和 B 两者都模态地转至 ViewController C 现在我了解如何转回之前的视图控制器之一 正如这里所解释的 https stac
  • IOS:从故事板中的原型单元中触发多个segues

    有没有办法将原型单元连接到不同的场景 并在 didSelectRowAtIndexPath 方法上调用 self PerformSegueWithIdentifier NAMEOFTHESEGUE sender self 我似乎无法将多个
  • 我们如何使用 swift 在 UITableView 部分标题中添加图像?

    在我的 willDisplayHeaderView 中 我更改了节标题的颜色 但我想在节标题之前添加图像 有什么帮助吗 我的 willDisplayHeaderView 代码是 func tableView tableView UITabl
  • UITableView 滚动缓慢

    编辑 我在英语记录上做了相同的代码 滚动速度仍然像往常一样快 并且工作正常 但是当我获取阿拉伯语数据时 滚动又变慢了 这是阿拉伯数据的问题吗 我有大约 100 条记录 我的 tableview 滚动非常慢 谁能告诉我这段代码有什么问题 为什
  • 如何用RXSwift实现UIPickerView

    就像 UITableView 一样 items bindTo tableView rx items cellIdentifier cellIdentifier cellType AttentionTableViewCell self row
  • 将自动布局约束应用于多个对象

    我正在 iOS 中使用 autoLayout 约束 我的用例是这样的 我会用图片更好地解释 我正在为 UITableViewCell 使用自定义单元格 通过自动布局 我为下面的文本和分隔线设置了约束 并且它们遵守自动布局约束 现在您可以看到
  • iOS 7 故事板本地化与属性标签

    我正在使用 ibtool 从我的所有语言的基本情节提要中生成字符串文件 出于某种原因 ibtool 没有提取UILabel风格为 attributed 我没有这些标签的键 值对 有人知道为什么吗 我最终得出的结论是 使用 ibtool 无法
  • didSelectRowAtIndexPath 与点击手势识别器冲突

    我通过情节提要在 ViewController 中设置了点击手势识别器 因此 如果显示此视图中的所有点击 将隐藏键盘 问题是 现在 我在这个视图中添加了一个 TableView 当我点击一个单元格时 使用点击手势识别器设置的方法是调用 而不
  • iPhone UITableView 分页结果

    对从服务器拉取的大量结果进行分页的最佳方法是什么 就服务器而言 我可以抵消和限制结果 因此我一次只能提取 25 个结果 但是允许用户查看更多结果而不需要像应用商店一样不断向下滚动不断增长的列表的最佳方式是什么应用程序 谢谢 豪伊 要在列表底
  • MonoTouch - 编辑 xib 时缺少头文件[重复]

    这个问题在这里已经有答案了 我使用的是 Mac OSX Lion 10 7 0 带有适用于 IOS 5 的 Xcode 4 2 和 Xamarin 的 MonoTouch 跨平台移动开发工具 允许您使用 C 和 NET 创建适用于 iOS
  • UIPickerView - 对多行行使用自定义视图 - 需要布局建议

    我有一个 UIPickerView 它将为用户显示项目列表 我希望每个项目都显示为多行文本 每行使用不同的字体大小 一个粗略的模型如下所示 这将允许显示比默认 UIPickerView 的单行所能容纳的更多文本 bdesham 指出我在 U
  • iOS 自定义单元格设计放在哪里? awakeFromNib 还是 cellForRowAtIndexPath?

    所以 基本上我用笔尖做了一个定制单元 希望我应用一些定制设计 比如颜色和阴影 我发现了两种应用样式的方法 awakeFromNib override func awakeFromNib super awakeFromNib Containe
  • 滑动删除不起作用

    滑动删除功能在我的表格视图中不起作用 我已经在导航栏中实现了 commitEditingStyle 委托和编辑按钮 因此 当用户单击编辑按钮时 删除和添加按钮会相应显示 但是 在滑动时 删除按钮不会出现 并且似乎它无法将滑动识别为对 set
  • 如何禁用 UITableView 中某些行的删除操作?

    我知道使用setEditing 启用UITableView的编辑模式 但我更喜欢禁用某些特定行的操作 启用其他行 是否可以 Thanks interdev 实施the tableView canEditRowAtIndexPath meth

随机推荐

  • 2 个 3D 点之间的偏航和俯仰

    我有 2 个 3D 点 我需要获取它们之间的偏航和俯仰弧度 我已经尝试了很多公式 但它不起作用 我的坐标系如下 X left right Y forward backward Z up down 有什么帮助吗 请具体说明 我真的很感激整个公
  • syslog-ng 读取文件权限被拒绝

    我需要通过 Syslog ng 发送 tomcat Catalina out 日志内容 但是 但重新启动 Syslog 服务后 出现权限被拒绝错误 那么我如何授予 Syslog ng 的读取权限以从 CATALINA out 读取 tomc
  • java中的排列迭代器

    我想要一个类 它接受一个正整数并生成一个迭代器 让我迭代该正整数下的正数列表的所有可能的排列 例如 模拟器 p paermulator 3 p next gt 0 1 2 p next gt 0 2 1 p next gt 1 0 2 p
  • 如何使用 smtplib 和 Python 保持 SMTP 连接打开?

    我需要检查 SMTP 服务器的超时 但我的套接字刚刚关闭 我究竟做错了什么 这是我的测试 usr bin python import smtplib import time import datetime import socket soc
  • 查找二进制文件的版本

    有谁知道如何找到已传递给我的函数的二进制文件的版本 我从以下代码中得到了这一页 http www linuxquestions org questions programming 9 reading binary file in pytho
  • 在 Zend HeadScript 视图助手中修改堆栈

    我正在尝试攻击这个问题 https stackoverflow com questions 2253170 zend framework last code to execute before layout is rendered从完全不同
  • 在 JUnit 测试类中哪里配置 log4j?

    看看我写的最后一个 JUnit 测试用例 我在类构造函数中调用了 log4j 的 BasicConfigurator configure 方法 这对于仅从 Eclipse 的 作为 JUnit 测试用例运行 命令运行单个类来说效果很好 但我
  • 当用户在文本框中键入值时,在另一个文本框中显示一个文本框值

    当用户在文本框中输入值时 是否有一种方法可以从一个文本框中获取值并使用 jQuery 动态地将其添加到另一个文本框中 如果有这样的事情 有人可以解释一下该方法吗 问候 兰加纳 你的意思是像http jsfiddle net ZLr9N ht
  • 在多层架构中通过层传递业务实体

    目前我正在开发一个利用多层架构的项目 如中所述应用架构指南2 0 http apparch codeplex com 有 5 层 DAL BLL Facade 表示层和公共层 这里我们有一个业务逻辑层 它由业务组件和业务实体 它们是使用 O
  • 切换到另一个分支而不更改工作区文件

    我从 GitHub 克隆了一个 git 存储库 做了一些更改和一些提交 我做了很多 而且都很脏 所以它们不适合拉请求 现在我创建了分支cleanchanges from origin master 所以它很干净 我想将我的更改作为一次提交提
  • Android 将图像保存到 SD 卡

    UPDATE Added
  • LINQ to SQL 的编译查询何时可以提高性能

    我指的是一篇文章 http www albahari com nutshell speedinguplinqtosql aspx其重点是加速 LINQ to SQL 查询 它提到的技术之一是 使用编译查询 并解释了如何使用它 我希望看到编译
  • Sharepoint 中文档库的全局自定义视图

    在Sharepoint文档库中 当我们创建新文档库时 默认视图是 所有文档 这个 我们可以制作一个自定义视图视图 gt 创建视图 位于文档库视图的右上角 我创建了一个新的标准视图并将其命名为 Chromed View 我编辑了它 然后我发现
  • 为什么 WebGL 比 Canvas 更快?

    如果两者都使用硬件加速 GPU 来执行代码 为什么 WebGL 比 Canvas 更快 我的意思是 我想知道为什么在低级别上 从代码到处理器的链条 会发生什么 Canvas WebGL 直接与驱动程序通信 然后与显卡通信 Canvas 速度
  • Android 联系人:查找键如何工作?

    在联系人顶部id 安卓也有LOOK UP https developer android com reference android provider ContactsContract ContactsColumns html LOOKUP
  • AttributeError:“str”对象没有属性“mean_validation_score”

    我的代码中出现此错误 AttributeError str object has no attribute mean validation score 我可以做什么来解决它 def report grid scores n top 3 to
  • 通过 hilt 中的不同具体类绑定接口?

    我用希尔特 我有一个接口 但我有两个实现它们的类 我需要在 ViewModels 中实现不同的 Bind 接口 请帮助我 创建自定义组件 或使用自定义范围 您提供的代码会有所帮助 但让我们假设 您的界面 interface YourInte
  • 如何将图标和文本段落放在一行中?

    我想将我的字体很棒的图标和文本段落放到一行中 我该如何修复此代码 div class date style display inline block i class fa fa user o i p style display inline
  • Maven 3 - 值得吗? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 是否有可能获得一个 .xib 窗口到选项卡式故事板

    我没有很长时间编写代码 Xcode 所以我有点垃圾 基本上我已经创建了一个 xib 并希望它出现在故事 板中 但我真的不知道从哪里开始 因为我有一个 xib 窗口具有UITableView and UIPickerView其中所有代码在 x