我有两个标签:oneLabel和twoLabel。假设oneLabel显示“1”,两个标签显示“2”。我正在尝试创建一个按钮,按下该按钮将在标签之间切换文本。我在尝试:
- (IBAction)switchButton:(id)sender {
self.oneLabel.text = self.twoLabel.text;
self.twoLabel.text = self.oneLabel.text;
}
代码将twoLabel文本切换为oneLabel,但不将oneLabel文本切换为twoLabel。我错过了什么?
答案 0 :(得分:1)
我认为这是因为将两个标签文本复制到oneLabel之后; oneLable的文本有两个标签文本,当您尝试将文本从一个文本复制到两个文本时,一个文本具有两个内容,并且该内容仅复制到两个文件,因此在两个文本中看不到任何更改。使用断点并检查。尝试
NSString *temp = self.oneLable.text;
self.oneLable.text= self.twoLable.text;
self.twoLable.text= temp;
答案 1 :(得分:0)
设置2个临时字符串> NSString * myText1Str,* myText2Str;
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
[textField resignFirstResponder]; //to hide the keyboard
[self setString]; //calling the method when u hit enter or return
return YES;
}
-(void)setString{ //this method sets the current string values from the textfield
myText1Str = self.oneLabel.text;
myText1Str = self.twoLabel.text;
}
-(IBAction)switchButton :(id)sender{ //swaps the texts
self.oneLabel.text = myText2Str;
self.oneLabel.text = myText1Str;
}
答案 2 :(得分:0)
试试这个
-(IBAction)btnClicked:(id)sender
{
NSString *str=lbl1.text;
NSString *str1=lbl2.text;
lbl1.text=str1;
lbl2.text=str;
}