可能的方法将Uislider连接到FontSize [(IBACTION)FONT1和(IBACTION)FONT2]。这是代码
.h
@interface ViewController : UIViewController
{
IBOutlet UISlider* fontSizeSlider;
IBOutlet UITextView* textView;
}
-(IBAction)sliderValueChanged:(UISlider*)sender;
-(IBAction)font1;
-(IBAction)font2;
@end
.m
-(IBAction)sliderValueChanged:(UISlider*)sender
{
textView.font = [UIFont fontWithName:@"??????" size:sender.value];
}
-(IBAction)font1{
textView.font = [UIFont fontWithName:@"Heiti TC" size:18];
}
-(IBAction)font2{
textView.font = [UIFont fontWithName:@"Marker Felt" size:18];
}
-(IBAction)font1; //[UIButton]
-(IBAction)font1; //[UIButton]
-(IBAction)sliderValueChanged; //[UISlider]
如果我正确理解,您希望能够从两种字体中进行选择。因此,您必须将字体的名称存储在NSString
中。这样的东西:
.h
@interface ViewController : UIViewController
{
IBOutlet UISlider* fontSizeSlider;
IBOutlet UITextView* textView;
NSString *currentFont;
}
-(IBAction)sliderValueChanged:(UISlider*)sender;
-(IBAction)font1;
-(IBAction)font2;
@end
.m
-(void)viewDidLoad {
[super viewDidLoad];
currentFont = @"Heiti TC"; //Or whatever your default font is
textView.font = [UIFont fontWithName:currentFont size:sender.value];
}
-(IBAction)sliderValueChanged:(UISlider*)sender
{
textView.font = [UIFont fontWithName:currentFont size:sender.value];
}
-(IBAction)font1{
currentFont = @"Heiti TC";
textView.font = [UIFont fontWithName:currentFont size:fontSizeSlider.value];
}
-(IBAction)font2{
currentFont = @"Marker Felt";
textView.font = [UIFont fontWithName:currentFont size:fontSizeSlider.value];
}
如果要保留使用的字体面孔,并且在移动滑块时调整了大小,则可以抓住现有的字体实例并将其传递给fontWithSize:
,以使用该实例衍生新的字体实例同一脸:
-(IBAction)sliderValueChanged:(UISlider*)sender
{
textView.font = [textView.font fontWithSize:sender.value];
}
如果我正确理解您,您希望根据滑块的值更改字体大小。尝试根据滑块值更改字体大小:
- (IBAction)sliderChangeFontSize:(id)sender {
textView.font = [UIFont fontWithName:@"Heiti TC" size:slider.value];
}
然后将ibaction挂在笔尖文件中的滑块上,然后选择" value更改"
时发送的事件或
使用您使用的方法应起作用。唯一的问题是您将必须将滑块委托连接到视图控制器,以便您可以使用发件人值。