123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- //
- // AccompanyAlertView.m
- // KulexiuForTeacher
- //
- // Created by 王智 on 2022/4/11.
- //
- #import "AccompanyAlertView.h"
- #import "KSStarView.h"
- @interface AccompanyAlertView ()<UITextViewDelegate>
- @property (weak, nonatomic) IBOutlet NSLayoutConstraint *viewLeft;
- @property (weak, nonatomic) IBOutlet KSStarView *starView;
- @property (nonatomic, copy) AccompanyAlertCallback callback;
- @end
- @implementation AccompanyAlertView
- - (void)awakeFromNib {
- [super awakeFromNib];
- self.inputView.delegate = self;
- self.starView.hidden = YES;
- self.starView.allowMark = YES;
- if (IS_IPAD) {
- self.viewLeft.constant = KPortraitWidth / 4;
- }
- }
- + (instancetype)shareInstance {
- AccompanyAlertView *view = [[[NSBundle mainBundle] loadNibNamed:@"AccompanyAlertView" owner:nil options:nil] firstObject];
- view.frame = CGRectMake(0, 0, kScreen_Width, kScreen_Height);
- return view;
- }
- - (void)showInView:(UIView *)displayView showStarView:(BOOL)showStarView {
- if (showStarView) {
- self.starView.hidden = NO;
- }
- [displayView addSubview:self];
- }
- - (void)sureCallback:(AccompanyAlertCallback)callback {
- if (callback) {
- self.callback = callback;
- }
- }
- - (IBAction)cancelAction:(id)sender {
- [self removeFromSuperview];
- }
- - (IBAction)sureAction:(id)sender {
- NSInteger starNum = self.starView.rate * 5;
- if (self.callback) {
- self.callback(self.inputView.text, starNum);
- }
- [self removeFromSuperview];
- }
- #pragma mark ---- text view delegate
- - (void)textViewDidBeginEditing:(UITextView *)textView {
- self.tipsLabel.hidden = YES;
- }
- - (void)textViewDidEndEditing:(UITextView *)textView {
- if ([NSString isEmptyString:textView.text]) {
- self.tipsLabel.hidden = NO;
- }
- }
- - (BOOL)textViewShouldEndEditing:(UITextView *)textView {
- [self endEditing:YES];
- return YES;
- }
- - (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {
- [self endEditing:YES];
- }
- - (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {
-
- // 输入控制
- NSString *newString = [textView.text stringByReplacingCharactersInRange:range withString:text];
- if (newString.length > 200) {
- return NO;
- }
- return YES;
- }
- /*
- // Only override drawRect: if you perform custom drawing.
- // An empty implementation adversely affects performance during animation.
- - (void)drawRect:(CGRect)rect {
- // Drawing code
- }
- */
- @end
|