UITextView внутри UIScrollView не является первым респондентом - PullRequest
0 голосов
/ 18 мая 2010

У меня есть UITextView в представлении, которое становится первым респондентом.

Когда я встраиваю UITextView в UIScrollView в Интерфейсном Разработчике, UITextView больше не первый респондент. Я не уверен, что изменилось?

Я бы хотел, чтобы UITextView стал первым респондентом.

- (void)viewDidLoad {
    [super viewDidLoad];
    [scrollView setContentSize:CGSizeMake(540,620)];
    composeTextView.delegate = self;    
    [composeTextView becomeFirstResponder];
}

Ответы [ 3 ]

1 голос
/ 18 мая 2010

Это мой .h файл:

#import <UIKit/UIKit.h>

@interface Untitled1ViewController : UIViewController <UITextFieldDelegate> {
    UIScrollView *scrollView;
    UITextField *composeTextView;
}

@property (nonatomic,retain) IBOutlet UIScrollView *scrollView;
@property (nonatomic,retain) IBOutlet UITextField *composeTextView;

@end

это мой .m файл:

#import "Untitled1ViewController.h"

@implementation Untitled1ViewController
@synthesize scrollView;
@synthesize composeTextView;
- (void)viewDidLoad {
    [super viewDidLoad];
    [scrollView setContentSize:CGSizeMake(540,620)];
    composeTextView.delegate = self;    
    [composeTextView becomeFirstResponder];


}

в IB, я подключил следующее: textField для composeTextView scrollView для scrollView и делегат textField владельцу файла.

Попробуйте еще раз и посоветуйте.

0 голосов
/ 19 мая 2010

Текстовое представление принимает события прокрутки и, следовательно, события прокрутки не передаются дальше в его цепочке респондента. Если вы не заинтересованы в прокрутке текстового представления, отключите прокрутку в textView (используйте свойство nib или scrollEnabled), теперь scrollView начнет принимать события прокрутки.

0 голосов
/ 18 мая 2010

Я сделал то же самое, добавил немного кода, и он работает ОК:

scrollView.contentSize = CGSizeMake(540,620);
scrollView.showsHorizontalScrollIndicator = NO;
scrollView.showsVerticalScrollIndicator = NO;
scrollView.scrollsToTop = NO;
[composeTextView becomeFirstResponder];
...