【问题标题】:How do I call create a name of a button variable in a code, with a number in it?如何在代码中调用创建按钮变量的名称,其中包含数字?
【发布时间】:2010-04-05 04:30:51
【问题描述】:

我有一个 int,它在以前的方法中被更改,现在它必须是按钮变量名称的一部分。例如:

int numberFromLastOne;
numberFromLastOne = 4;

然后我想让“button4”做点什么。 我可以使用这样的东西吗?

[[button@"%d", numberFromLastOne] doSomething:withSomethingElse];

我以前从来没有这样做过。任何想法将不胜感激:)

【问题讨论】:

  • 这真的没有多大意义。
  • 是的,这很难解释

标签: iphone objective-c cocoa cocoa-touch iphone-sdk-3.0


【解决方案1】:

我不确定您要做什么,但是如果您有一系列按钮,并且您尝试根据某个整数值检索其中一个按钮,则可以使用 tag 属性来执行这个。

给按钮数字标签(在 IB 中,或以编程方式,但是您正在创建您的 UI)。然后在运行时执行以下操作:

int numberFromLastOne;
numberFromLastOne = 4;
UIButton* aButton = (UIButton*) [self.view viewWithTag:numberFromLastOne];

假设您是从视图控制器执行此操作;你没说。你明白了,查找 viewWithTag 成员。

【讨论】:

  • 如果 int 为 0 会抛出异常吗?因为不是所有东西的默认标签 0?
  • 好吧……看来确实如此。我只是将所有标签的值推高 1 - 因此删除标签 0。不过谢谢!
  • Cocoa 等价于 NSMatrix 的 cellWithTag: 方法:developer.apple.com/mac/library/documentation/Cocoa/Reference/…:请注意,AppKit 中的大多数视图都没有标签;只有控件和单元格,以及菜单和工具栏项。 NSMatrix 是一个包含二维单元格数组的视图。
猜你喜欢
  • 2013-02-21
  • 1970-01-01
  • 2018-07-01
  • 1970-01-01
  • 1970-01-01
  • 2019-05-28
  • 2021-12-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多