0

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]
4

3 に答える 3

1

使用されているフォント面を保持し、スライダーを移動するときにサイズを変更するだけの場合は、既存のフォントインスタンスを取得して渡しfontWithSize:、同じ面を持つ新しいフォントインスタンスを派生させることができます。

-(IBAction)sliderValueChanged:(UISlider*)sender
{
   textView.font = [textView.font fontWithSize:sender.value];
}
于 2012-12-24T23:54:28.733 に答える
1

私が正しく理解していれば、2つのフォントから選択できるようにしたいと思います。したがって、フォントの名前をに保存する必要があります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];
}
于 2012-12-24T23:55:24.103 に答える
0

私があなたを正しく理解しているなら、あなたはスライダーの値が何であるかに基づいてフォントサイズを変更したいと思っています。次のコードを試して、スライダーの値に基づいてフォントサイズを変更してください。

- (IBAction)sliderChangeFontSize:(id)sender {
     textView.font = [UIFont fontWithName:@"Heiti TC" size:slider.value];
}

次に、IBActionをnibファイルのスライダーにフックし、送信済みイベントを「値が変更されました」として選択します。

また

使用している方法で機能するはずです。唯一の問題は、送信者の値を使用できるように、スライダーデリゲートをViewControllerに接続する必要があることです。

于 2012-12-24T23:51:04.853 に答える