gpt4 book ai didi

ios - 使用对象数据的按钮的 NSArray

转载 作者:行者123 更新时间:2023-11-29 13:10:03 25 4
gpt4 key购买 nike

我不确定我这样做是否正确,所以我将首先解释我正在尝试做什么。

我正在使用 Annotation 对象数组中的数据生成按钮。

然后我希望用户能够点击一个按钮,出现一个文本字段,无论他们输入什么,都会覆盖相关注释对象和按钮中的文本。

所以我有注释数据生成的按钮,但这是我卡住的地方。

//Make a button for each Annotion if x value within 0 - 1400 boundary.
for(Annotation * ack in markerPoints)
{
if ([ack x] > 0 && [ack x] < 1401)
{
UIButton * marker = [UIButton buttonWithType:UIButtonTypeRoundedRect];

[marker addTarget:self
action:@selector(markerPressed:)
forControlEvents:UIControlEventTouchDown];
marker.frame=CGRectMake([ack x],[ack y],100,50);
[marker setTitle:[ack textData] forState:UIControlStateNormal ];

[marker setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
[marker setBackgroundColor:[UIColor whiteColor]];
[self addSubview:marker ];
[markerButtonList addObject:marker];

}
}

当用户按下按钮时,我如何知道它与哪个 Annotation 对象相关,以便我可以更改 Annotation textData?

最佳答案

您可以使用数组索引值设置每个按钮的标签,并在方法被调用时获取标签。示例:

//Make a button for each Annotion if x value within 0 - 1400 boundary.
NSInteger index = 0;
for(Annotation * ack in markerPoints)
{
if ([ack x] > 0 && [ack x] < 1401)
{
UIButton * marker = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[marker addTarget:self
action:@selector(markerPressed:)
forControlEvents:UIControlEventTouchDown];
marker.frame=CGRectMake([ack x],[ack y],100,50);
[marker setTitle:[ack textData] forState:UIControlStateNormal ];
[marker setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
[marker setBackgroundColor:[UIColor whiteColor]];
[market setTag:index];
[self addSubview:marker ];
[markerButtonList addObject:marker];
}
index++;
}

-(void)markerPressed:(UIButton*)sender{
Annotation * ack_selected = [markerPoints objectAtIndex:sender.tag];
}

关于ios - 使用对象数据的按钮的 NSArray,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17596505/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com