UITableView 如何一次显示两个不同的数组?

2024-05-09

下面的代码有效,但不符合我的意愿。我希望当我单击 UIbutton 时,它会自动更新 UITableview 中的新值而不是旧值。下面的代码仅在我按下 UIbuttons 时有效,之后当我滚动 UITableview 时它会更新具有新值的 UItableview。 在我的应用程序中,我使用 UITableview 作为我的主类的子类。如下图所示

我在我的主类中添加 Tableview ,就像这样“测试 ViewController” 在测试ViewController.h中

#import "Inputtableview.h"
@interface testingViewController :UIViewController<UITableViewDelegate,UITableViewDataSource> {
     Inputtableview *inputview;
     IBOutlet UITableView *inputtbl; 
}
@end

在testingViewController.m中

- (void)viewDidLoad {
btn1bool=FALSE;
if (inputview == nil) {
    inputview = [[Inputtableview alloc] init];
}

[inputtbl setDataSource:inputview];
[inputtbl setDelegate:inputview];
inputview.view = inputview.tableView;
}

现在在按钮操作方法中

-(IBAction)input:(id)sender
  {
  btn1bool=TRUE;
}

我的子类代码“inputtableview.m”如下所示

- (void)viewDidLoad {
 [super viewDidLoad];
listOfItems=[[NSMutableArray alloc] initWithObjects:@"Iceland",@"Greenland",@"Switzerland",
             @"Norway",@"New Zealand",@"Greece",@"Italy",@"Ireland",nil];

  array1 = [[NSMutableArray alloc] initWithObjects:@"A",@"B",@"C",@"D",@"E",@"F",@"G",@"H", nil] ;
 }

  #pragma mark -
  #pragma mark Table View datasource methods
-(NSInteger) tableView:(UITableView *)table numberOfRowsInSection:(NSInteger)section
    {
    if (btn1bool) {
        return [array1 count];
    }
else {
    return [listOfItems count];
}

[self.tableView reloadData];
   }


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

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

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

NSLog(@"Row: %i", indexPath.row);
if (btn1bool) {
    NSString *cellValue = [array1 objectAtIndex:indexPath.row];
    cell.text = cellValue;
}
else {
    NSString *cellValue = [listOfItems objectAtIndex:indexPath.row];
    cell.text = cellValue;
      }
   return cell;
 }

任何帮助将不胜感激。


只需输入以下代码:

[inputtbl reloadData];

您需要在项目中更改一些内容,但我认为该项目只是用于测试内容。


您希望在按下按钮后重新加载日期,因此您调用 IBAction 中的方法。

-(IBAction)input:(id)sender
{
    btn1bool=TRUE;
    [inputview.tableView reloadData];
}

要在按下按钮时在 2 个数据源之间切换,您可以更改为以下代码行:btn1bool=!btn1bool;

(NSInteger) tableView:(UITableView *)table numberOfRowsInSection:(NSInteger)section
{
    if (btn1bool) {
        return [array1 count];
    } else {
        return [listOfItems count];
    }
}

-(UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath是正确的

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

UITableView 如何一次显示两个不同的数组? 的相关文章

  • 我如何获取用户的电子邮件? iPhone SDK

    我需要获取 Mail app 中使用的用户的电子邮件地址 如何使用 iPhone SDK 做到这一点 谢谢你 简短的回答 你不能 如果需要 您应该提示用户输入电子邮件地址
  • 在运行时获取 iPhone 应用程序的产品名称?

    如何才能实现这一目标 我想获取名称 以便可以在应用程序中显示它 当然 每次更改名称时不必在代码中更改它 Try this NSBundle bundle NSBundle mainBundle NSDictionary info bundl
  • 仅将 UIImage 移动到另一个 UIImage 内部

    I have an UIImage which is shown in an UIImageView I also have another image in an UIImageView which lays above the firs
  • 如何检查 BOOL 是否为空?

    有没有办法在将值分配给 BOOL 之前检查该值是否为 NULL Nil 例如 我在 NSDictionary 中有一个值可以是 TRUE FALSE NULL mySTUser current user following results
  • 在不同的捆绑包上测试 iPhone 应用内购买?

    我们有一组 iPhone 应用程序的 Beta 测试人员 最近 我们在应用程序中添加了应用内购买功能 在此之前 我们会使用单独的捆绑 ID 和名称向 Beta 测试人员发送临时版本 以便他们可以在手机上拥有商店版本和临时版本 然而 似乎我们
  • Xcode 无法找到 strip-frameworks.sh 目录

    我最近将 Xcode 更新到版本 7 1 其中包括 Swift 2 1 我安装了 Swift 2 1 没有遇到任何问题 在尝试运行我的项目后 我意识到我需要获取最新版本的 Realm 因为之前的版本不支持 Swift 2 1 我删除了旧框架
  • “同时创建 xib 文件”按钮已禁用

    我在创建时遇到这个问题UIView s子类 创建 例如 UIViewControllers or UITableViewCells没关系 为什么会出现这种情况 I create view using cmd N and Xcode Vers
  • 从 Xcode 中的存储库中删除未引用的图像

    我从资源文件夹中删除了 default png 因为我想要为加载屏幕使用不同的图像 但我只是删除了引用 这显然是一件愚蠢的事情 我将新图像拖到资源中并尝试将名称更改为 Default png 但它不允许我这样做 我认为这是因为第一个 Def
  • UIDatePickerModeCountDownTimer模式中的UIDatePicker:如何更改为分钟和秒模式?

    我在故事板中添加了 UIDatePicker 并将模式设置为 CountDownTimer 它只显示小时和分钟 但我需要的是分钟和秒模式 我不需要小时列 需要分钟和秒列 我尝试更改间隔 但最小值是 1 分钟 是否可以 我怎样才能做到这一点
  • 如何快速更改按钮图像?

    我正在开发一个有按钮的应用程序 该按钮没有文本 图像或背景 所以我想做的就是在viewDidLoad函数中给它一个图像 这就是我所拥有的 IBOutlet var tapButton UIButton override func viewD
  • 适用于 Objective-C / iPhone 的良好 HTTP 库? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 UPDATE 这个问题显然已经过时了 参见日期 我建议只使用现代 iOS7 功能 例如 NSURLSession 我想 这个问题是为了历史
  • UICollectionView 未出现

    我正在尝试设置UICollectionView 以编程方式在我的视图控制器中扩展UIViewController 由于某种原因 我的收藏视图根本没有显示 以下是我所拥有的 为什么没有出现 我将它连接到委托和数据源并将其添加为子视图self
  • iOS UIButton 带有圆角和背景 bug

    我发现圆形 UIButton 存在一个奇怪的问题 这是我创建此按钮的代码块 let roundedButton UIButton type System roundedButton frame CGRectMake 100 100 100
  • UISearchController 保留问题

    我正在尝试使用 UISearchController 但是我遇到了无法解决的保留问题 MainTableview 有两个部分 第1节 基于某些正则表达式过滤数据 第2节 All Data 我将 UISearchController 添加到我
  • Swift 中具有透明背景的按钮边框

    我怎样才能做一个UIButton边框看起来像下图 入门 按钮一样具有透明背景吗 我应该如何使用情节提要来实现这一点 或者如何以编程方式实现这一点 设置backgroundColor to clearColor使按钮透明 例如尝试下面的代码
  • Objective C 如何将文本字段添加到导航栏中

    我正在尝试将文本字段添加到导航栏中 但它没有显示在模拟器中 我在 viewdidload 中按如下方式执行 UITextView textField UITextView alloc initWithFrame CGRectMake 0 0
  • 对于某些纹理尺寸,glFramebufferTexture2D 在 iPhone 上失败

    当我尝试将纹理附加到帧缓冲区时 glCheckFramebufferStatus 报告某些纹理大小的 GL FRAMEBUFFER UNSUPPORTED 我已经在第二代和第四代 iPod Touch 上进行了测试 两个模型之间失败的纹理尺
  • xcode 6.1 (Swift) 中的 SIGABRT 运行时错误

    与最初的代码相比 唯一的更改是在ViewControl swift override func viewDidLoad newMessage hidden true super viewDidLoad Do any additional s
  • 将 iPhone 上的 stderr 写入文件和控制台

    我正在遵循答案中的建议here https stackoverflow com questions 5179108 iphone how to read application logs from device用于将 iOS 设备上的 NS
  • XCode 4.2.1 在 Lion 10.7.2 上启动时崩溃

    这周我买了大约 10 年来的第一台 Mac 是的 这是一台二手 Mac Pro 2x2GHz 双核 Xeon 2GB RAM 它全新安装了 Mac OS X Lion 10 7 2 我只安装了 OmniOutlner Pro Textmat

随机推荐

  • 需要哈希表和数组列表

    我正在尝试在我的 Windows 7 Phone 应用程序中使用其他人的 C 类 这些类使用 Hashtable 类型的对象 有问题的文件有 using System Collections 在顶部 所以我假设这就是它想要的 Hashtab
  • 网站地址 URL 更改后,Wordpress 中未显示很棒的字体图标

    对于那些比我更精通编码的人来说 这可能是一个明显的问题 但我在 WordPress 中创建了一个网站 但他们的域名托管在其他地方 他们更改了 A 名称 现在它指向该网站 但字体很棒的图标现在是方框 我怎样才能解决这个问题 有简单的方法吗 非
  • Assert.Are Equal 和 Assert.AreSame 之间的区别?

    有什么区别断言 AreEqual and 断言 AreSame 这意味着 AreSame 检查它们是否是完全相同的对象 如果引用指示内存中的同一对象 AreEqual 检查对象是否具有相同的类型和值 相同的对象可以存在于内存中的两个不同位置
  • 设置存储在 Blob 上的媒体文件的内容类型

    我们有一个托管在 Azure 上的网站 它是基于媒体的 我们使用 JWPlayer 通过 HTTP 伪流来播放媒体 媒体文件以 3 种格式存储在 blob 上 mp4 ogg webm 问题是所有类型的媒体文件的内容类型都设置为应用程序 八
  • 通过鼻子测试检查某个函数是否发出警告

    我正在使用编写单元测试nose http somethingaboutorange com mrl projects nose 0 11 2 我想检查函数是否引发警告 该函数使用warnings warn 这是很容易就能做到的事情吗 def
  • 批量请求 - Dynamics CRM

    All 我正在尝试使用以下源代码对 Dynamics CRM 实施批量请求 public async Task
  • C# - 如何进行 HTTP 调用

    我想对网站进行 HTTP 调用 我只需要点击 URL 不想上传或下载任何数据 最简单 最快的方法是什么 我尝试了下面的代码 但它很慢 并且在第二次重复请求后 它只是超时 59 秒 然后恢复 WebRequest webRequest Web
  • 如何设置上拉刷新SwipeRefreshLayout

    我看到很多 ListView 下拉刷新的库 但是当从上到下拉动时它们是工作的 但是从下到上拉动时我如何刷新 我可以用这个做吗滑动刷新布局 http developer android com reference android suppor
  • NodeJS 内存增长 - (系统)内存泄漏?

    我在我们的生活环境中遇到了奇怪的内存泄漏 其中 system 堆中的对象不断增长 堆转储 Here is a memory dump where the memory usage grew to 800MB 请注意 该内存保留在Genera
  • C# 系统 CPU 使用情况并与 Windows 任务管理器同步

    这是一个由两部分组成的问题 我想将我的代码发布到堆栈上以帮助其他人完成相同的任务 问题一 我有一个代码子集 我相信它可以根据测量间隔正确测量 CPU 使用情况 根据检索的时间跨系统中的尽可能多的核心 我在线程调用中使用 1 秒 我必须从网上
  • 如何使用 bash 脚本关闭所有终端,在每个终端中有效地按 Ctrl+Shift+Q

    我经常打开许多终端 其中一些正在运行重要的进程 例如服务器 而另一些则没有运行任何东西并且可以关闭 如果您按 重要 则会弹出确认提示Cntrl Shift Q在其中 如下所示 我想要一个 bash 脚本 它可以关闭所有终端 但将 重要 终端
  • 如何更改Mysql的连接排序规则

    如何更改 mysql 数据库的连接排序规则 我在 ubuntu 14 中使用 Mysql workbench 5 5 和 mysql 5 5 当我执行存储过程时 出现错误 错误代码 1267 操作 的排序规则 utf8 general ci
  • 在 RichTextBox 顶部插入

    这段代码有什么问题吗 尝试让我的文本插入到文本框的开头而不是底部 private void execute Click object sender EventArgs e startFinshBox Text Start Time prin
  • 为什么 Julia 中的“where”语法对换行符敏感?

    在 Stack Overflow 上的另一个问题中 答案包括以下函数 julia gt function nzcols b SubArray T 2 P Tuple UnitRange Int64 UnitRange Int64 where
  • 将数组中的所有值作为参数传递给函数

    我有一个值数组 a b c d 我需要将它们作为参数传递给函数 window myFunction a b c d 如果我可以将数组 对象传递到函数中 那么这会更容易 但这些函数是由其他人编写的或已经存在 我无法更改它们 它们需要作为单独的
  • OCaml 2 和 3 之间的差异

    我有兴趣学习这门语言 但似乎有关该主题的教程和书籍很少 我只找到一本关于这个主题的合适的书 用 Objective Caml 这绝对是完美的 但问题是它是基于 2 04 版本的 所以我唯一关心的是使用这本书 对于 OCaml 3 x 是否会
  • 禁止 .codeanalysislog.xml 和 .lastcodeanalysisuccceeded 文件被删除

    有没有办法可以抑制 codeanalysislog xml 和 lastcodeanalysisuccceeed 在构建时被丢弃在我的输出目录中 我同意 bin文件夹不适合存放这些 FxCop 文件 然而 禁止生成这些文件 或者在构建后无条
  • 可以向 @ManyToMany Hibernate 额外表添加额外字段吗?

    我有这两类 表 Entity Table name course public class Course Id Column name courseid private String courseId Column name coursen
  • Rails 模型中的多个 counter_cache

    我正在学习 Rails 遇到了一个小问题 我正在编写带有任务列表的非常简单的应用程序 因此模型看起来像这样 class List lt ActiveRecord Base has many tasks has many undone tas
  • UITableView 如何一次显示两个不同的数组?

    下面的代码有效 但不符合我的意愿 我希望当我单击 UIbutton 时 它会自动更新 UITableview 中的新值而不是旧值 下面的代码仅在我按下 UIbuttons 时有效 之后当我滚动 UITableview 时它会更新具有新值的