在ios开发中,我想使得通过button这个自己设立的按键,通过按键次数使的他值加加或者减减
1个回答
展开全部
NSInteger num = [[(UIButton *)sender titleLabel].text integerValue];
[[(UIButton *)sender titleLabel] setText:[NSString stringWithFormat:@"%d",num+1]];
这里面的sender就是被点击的button
[[(UIButton *)sender titleLabel] setText:[NSString stringWithFormat:@"%d",num+1]];
这里面的sender就是被点击的button
追问
大神,能解释下原理什么的么,刚接触。
追答
你的需求是不是 button显示有一个数字 然后点击button 对这里面的数字进行更改?
-(IBAction)开头的方法是相应button的点击事件的(就是说button被点就会调用),参数sender就是被点击的button自身。这里编译器自动为你添加了id类型,所以需要更改为(UIButton *)以便访问类属性,可以直接更改方法参数类型,就是那个(id),也可以像(UIButton *)sender这样在方法中进行强制类型转换。
button有个属性,titleLabel,负责显示这个按钮的文本信息,titleLabel的text属性可以用来更改显示的内容。
所以上面第一行代码意思就是,先获取所点击的按钮的文字信息,因为是字符串格式,通过integerValue转换为int整形,然后赋值给变量num。
第二行的意思是,通过setter方法,给这个按钮的titleLabel的text属性赋值,改变按钮显示信息,[NSString stringWithFormat:@"%d",num+1]的返回值是一个字符串,负责将整形转换为字符串,然后作为参数传给titleLabel的setText方法
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询