use*_*078 3 switch-statement uibutton nsstring uiimage ios
我正在制作一个ios应用程序,并且无法使用switch语句查看是否按下了UIButton元素.这就是我希望最终产品发挥作用的人:我有多个无色图像(无色我指的是白色,UIImage).当点击未着色的图像时,子视图打开时带有彩色框(UIButton,其中24个,每个都有单独的颜色).选择彩色框按钮并按下工具栏上的后退按钮时,子视图将关闭,原始视图将重新显示,而未显示的图像(选择用于打开子视图的图像)现在使用在子视图中选择的所需颜色进行着色.
我想使用switch语句来查找哪个未着色的图像和选择的颜色(所有UIButton元素).我不知道在switch语句中将什么作为表达式放置,因为我正在处理UIButtons.switch语句的其余部分比较UIButton元素的值,看它是否等于YES(当按下按钮时),如果是,则返回一个字符串.我还想知道如何将IBAction连接到UIImage(因此当点击图像时,子视图打开).
我在iOS开发上有点生疏,但你可能会做以下事情:
将按钮设置为相同的事件处理程序,并使用sender属性访问按钮的标记元素,您可以为每个按钮指定该元素.
- (IBAction) doStuff:(id) sender {
UIButton *button = (UIButton*) sender;
switch(button.tag)
{
//do stuff
}
Run Code Online (Sandbox Code Playgroud)
如果这对您不起作用,您可以使用您认为合适的任何按钮属性来区分它们,例如标题,标题颜色等.
对于最佳实践,我建议您在尝试将其转换为对象之前检查发件人是否为UIButton类型.