Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在XCODE中使用字符串引用UIImageView控件

在XCODE中使用字符串引用UIImageView控件
EN

Stack Overflow用户
提问于 2011-08-08 03:35:38
回答 4查看 3.1K关注 0票数 0

我有大约10个名为pop1 to pop10的UIImageView控件。

我在UIImageView上每个都有10个按钮。这些按钮有一个从1到10的“标签”,所以我知道哪个按钮被按下了:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
UIButton * aButton =(UIButton *)sender;
aButton.tag - gives me the tag

我想引用按钮下面的UIImageView,以便在按钮上方的按钮被按下时更改其图像:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
UIImage *image = [UIImage imageNamed: @"NewImage.png"];
[pop1 setImage:image];

但在上面的代码中,我不想硬编码"pop1“或"pop2”等,我想使用按钮标记构建一个字符串

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
NSString *img = [NSString stringWithFormat:@"pop%d",aButton.tag];

给出"pop1“或"pop2”等,因为我使用的是aButton.tag。

那么,使用这些信息,我如何编写代码来引用UIImage来更改其图像呢?

在他的代码行中,"pop1“需要更改,以便使用构建的字符串- img:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[pop1 setImage:image];

我不想为每个标记键入switch语句,因为稍后我打算添加大量这样的控件,而这不是一个选项。

有没有什么方法,或者我可以使用的其他方法?

更新

我尝试了John给出的答案,代码如下

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
-(IBAction)pop:(id)sender{
  UIButton * aButton =(UIButton *)sender;
  NSLog(@"clicked button with TAG %d",aButton.tag);

  if (aButton.tag > 0) {
    UIImageView *img = (UIImageView *)[self.view viewWithTag:aButton.tag];

    UIImage *ix = [UIImage imageNamed:@"Newimage.png"];

    [img setImage:ix];
    // stop any more clicks
    aButton.tag = 0;
  }    


}

一切正常,但在运行时,我得到了一个错误,因为"img“在调试窗口中显示为"UIButton”,而不是UIImage (我认为)。

我完全对此感到困惑,因为在IB中,控件显示为Class:UIImageView,但在代码中,我将其引用为UIImage?它们可以互换吗?

如何访问"UIImageView -显示由图像数组描述的单个图像或动画(帮助)“的"tag”属性

基本上,这些按钮也有一个标签,所以如果点击按钮2,它的标签就是2。所以我想用标签=2来改变UIImageView的图像,依此类推。

我目前正在学习C/C,在大多数其他语言中,这样一个简单的任务在这方面是如此乏味。

我不知所措。请帮帮忙。

EN

回答 4

Stack Overflow用户

发布于 2012-10-13 11:23:32

UIImageView标记-1指定为-10,然后将pop函数替换为:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
-(IBAction)pop:(id)sender{
  UIButton * aButton =(UIButton *)sender;
  NSLog(@"clicked button with TAG %d",aButton.tag);

  if (aButton.tag > 0) {
    UIImageView *img = (UIImageView *)[self.view viewWithTag:(aButton.tag*-1)];

    UIImage *ix = [UIImage imageNamed:@"Newimage.png"];

    [img setImage:ix];
    // stop any more clicks

  }    
}
票数 3
EN

Stack Overflow用户

发布于 2011-08-08 04:03:11

把标签放在相关的视图上-比如说101-110,然后取按钮标签,加100,然后用这个数字调用viewWithTag……

票数 0
EN

Stack Overflow用户

发布于 2011-08-08 04:24:13

我建议你用UIButton代替UIImageView。将您的图像设置为按钮图像,并为其添加标签,但是这将使您的用户单击该图像,而不是单独的按钮。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6977495

复制
相关文章
iOS-UI控件之UIImageView
contentMode属性 带有scale单词的:图片有可能会拉伸 UIViewContentModeScaleToFill 将图片拉伸至填充整个imageView 图片显示的尺寸跟imageView的尺寸是一样的 带有aspect单词的:保持图片原来的宽高比 UIViewContentModeScaleAspectFit 保证刚好能看到图片的全部 UIViewContentModeScaleAspectFill 拉伸至图片的宽度或者高度跟imageView一样 没有scale单词的:图片绝
用户1941540
2018/05/11
9010
WindowsXamlHost:在 WPF 中使用 UWP 控件库中的控件
在 WindowsXamlHost:在 WPF 中使用 UWP 的控件(Windows Community Toolkit) 一文中,我们说到了在 WPF 中引入简单的 UWP 控件以及相关的注意事项。不过,通常更有实际价值的是更复杂的 UWP 控件的引入,通常是一整个 Page。
walterlv
2020/02/10
5.9K0
【 iOS 应用开发 】 UIKit 控件 ( 代码生成控件 | UIView 属性方法 | Storyboard | Bundle | Property List | 动画 | 图片内存优化 )
项目创建流程 : ① 选择 Create a new Xcode project , ② 创建 Single View Application 项目 , ③ 设置项目信息 , ④ 设置代码路径并创建 ;
韩曙亮
2023/03/27
4.1K0
【 iOS 应用开发 】 UIKit 控件 ( 代码生成控件 | UIView 属性方法 | Storyboard | Bundle | Property List | 动画 | 图片内存优化 )
【IOS 开发】基本 UI 控件详解 (UISegmentedControl | UIImageView | UIProgressView | UISlider | UIAlertView )
转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/50163725
韩曙亮
2023/03/27
3.3K0
【IOS 开发】基本 UI 控件详解 (UISegmentedControl | UIImageView | UIProgressView | UISlider | UIAlertView )
WindowsXamlHost:在 WPF 中使用 UWP 的控件(Windows Community Toolkit)
Windows Community Toolkit 再次更新到 5.0。以前可以在 WPF 中使用有限的 UWP 控件,而现在有了 WindowsXamlHost,则可以使用更多 UWP 原生控件了。
walterlv
2020/02/10
4.7K0
iOS常见问题总结(一)1 Xcode中出现的问题
AEE851A3-CFC3-404C-B795-2B8D13992529.png 解决办法如下:
hrscy
2018/08/30
7060
iOS常见问题总结(一)1 Xcode中出现的问题
WPF 在image控件用鼠标拖拽出矩形
今天有小伙伴问我一个问题,在image控件用鼠标拖拽出矩形,本文告诉大家如何使用鼠标画出矩形
林德熙
2018/09/19
1.3K0
WPF 在image控件用鼠标拖拽出矩形
在Java中字符串是通过引用传递的?
这是一个经典的java问题。在stackoverflow上,许多类似的问题已经被问过了,但是许多回答是错误的或不完整的。 如果你不想深入思考的话,这个问题很简单。如果你想明白的更彻底,那么问题可能容易让人迷惑不清。 1. 一段有趣但令人困惑的代码 public static void main(String[] args) { String x = new String("ab"); change(x); System.out.println(x); } public static void c
三哥
2018/06/15
6.2K3
用swift开发仪表盘控件(一)
苹果swift刚刚推出不久,接触到这个语言是一个偶然的机会,无聊之余随便看了下它的语法:
全栈程序员站长
2022/07/10
7010
用swift开发仪表盘控件(一)
iOS常见问题总结(二)
在导入框架libxml2.2.dylib后, 最到了XCode仍然找不到<libxml/tree.h>的情况, 最后解决过程如下: 1 )项目 -Targets 中的 Build P hases , 找到 Link Binary With Libraries , 点击 “+”, 添加 “libxml2.dylib”
hrscy
2018/08/30
8520
iOS常见问题总结(二)
用Groovy在JMeter中使用正则提取赋值
正则表达式是特殊的文本字符串,用作查找与之匹配的其他字符串的模板。它们是从字符串中检索数据(子字符串)的非常强大的机制。在Apache JMeter™中,可以从内置组件正则表达式提取器中使用正则表达式,也可以用Groovy编写它们。
FunTester
2020/04/03
1.2K0
用Groovy在JMeter中使用正则提取赋值
SDWebImage: 带你制作精美的相册
说起 SDWebImage 大家肯定都不陌生,它在GitHub上的星星有16300多个,可见其火爆程度;作为目前最受欢迎的第三方图片下载框架,在app开发中使用率很高,尤其是需要处理大量图片的项目。
HelloWorld杰少
2022/08/03
8160
SDWebImage: 带你制作精美的相册
【IOS开发基础系列】Storyboard专题
        如果你的 app 有大量的窗口,故事板能帮你减少许多用于从一个窗口转到另一个窗口的导航代码。与每个viewcontroller一个单独的 nib 文件不同,你的 app 只需用一个故事板文件(其中可以包含所有的viewcontroller 以及它们之间的关系)即可。
江中散人_Jun
2023/10/16
1.3K0
【IOS开发基础系列】Storyboard专题
iOS面试题-UI篇
面试题持续整理更新中,如果你正在面试或者想一起进阶,不妨添加一下交流群1012951431一起交流。
会写bug的程序员
2020/06/29
2.1K0
iOS面试题-UI篇
iOS开发系列——纯代码实现iOS开发
storyboard进行界面设计固然不错,特别是对于初学者经常会使用设计器进行界面设计,但是实际开发过程中我们很多情况下会直接使用代码进行界面布局,特别是对于复杂的界面布局更是如此。下面我们就从一个空项目建立一个类似于前面的登录界面。
Kris大鲨
2018/05/05
3.6K5
iOS开发系列——纯代码实现iOS开发
UIImageView圆角,教你远离cornerRadius
由于设置masksToBounds 会导致离屏渲染(离屏渲染:GPU在当前屏幕缓冲区外新开辟一个渲染缓冲区进行工作),这会给我们带来额外的性能损耗,如果这样的圆角操作达到一定数量,会触发缓冲区的频繁合并和上下文的的频繁切换,性能的代价会宏观地表现在用户体验上----掉帧。 当然这些效果不会直接显示在屏幕上,可以使用Instruments的CoreAnimation检测,当然你也可以自己写一个检测帧频的方法。
sweet说好的幸福
2020/12/23
2.2K0
UILabel、UIImageView和UIButton
第一个是lineBreakMode属性,该属性设置了当文字内容大于label所能承载的内容的时候该如何展示,也就是说,当文字超长的时候如何截断。
拉维
2019/08/12
7740
【已解决】Xcode在StoryBoard设置UIView的控件类是Cocoapods的类,运行还是UIView?
ZHVerifyCodeFiled作为我写在Cocoapods的空间,现在我在测试例子的Main.storyboard直接添加一个UIView使用我们Cocoapods的这个类,但是我们运行发现出来的对象还是UIView类。
君赏
2018/09/07
7930
点击加载更多

相似问题

xcode:在NSTimers中使用UIImageView子类

10

Xcode - UIImageView在边缘停止

20

Xcode :使用UIImageView

12

xcode中的Bug?在UIImageView中使用PNG的问题

10

xcode 12 + Swift + UIImageView

28
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文