Re: [請益] textview不能輸入文字
P大你好 我已經把用IBOutlet的方式改成frame的方式還是不行...
程式改寫成如下:
感謝~
//***從a view controller切換到 postStatus view controller
PostStatusViewController *postStatus = [[PostStatusViewController alloc]
initWithNibName:@"PostStatusViewController" bundle:nil];
[self.navigationController pushViewController:postStatus animated:YES];
//***PostStatusViewController.m
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)
nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
self.textView = [[UITextView alloc] initWithFrame:CGRectMake(10.0f,
10.0f, 300.0f, 200.0f)];
[self.view addSubview: self.textView];
}
return self;
}
- (void)viewDidLoad
{
[super viewDidLoad];
UIBarButtonItem *retwitterBtn = [[UIBarButtonItem alloc]initWithTitle:
@"發佈" style:UIBarButtonItemStylePlain target:self action:
@selector(send:)];
self.navigationItem.rightBarButtonItem = retwitterBtn;
[[UIBarButtonItem appearance] setTintColor:[UIColor grayColor]];
}
-(void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
}
-(void)viewDidAppear:(BOOL)animated
{
[self.textView becomeFirstResponder];
[super viewWillAppear:animated];
}
- (void)viewDidDisappear:(BOOL)animated
{
[self.textView resignFirstResponder]; //離開時放掉responder
[super viewDidDisappear:animated];
}
- (void)send:(id)sender
{
NSString *content = self.theTextView.text;
if (content != nil && [content length] != 0) {
NSLog(@"%@",self.theTextView.text);
}
}
※ 引述《PurGle (Purple )》之銘言:
: ※ 引述《leepair (leepair)》之銘言:
: : 最近遇到一個很怪的現象,就是在第一次切換到這有一個textview的view controller
: : 可以正常的輸入文字,當用navication back回到上一個view controller再切回到這個
: : 有textview的這個view controller的時候就沒有辨法再輸入任何文字,不知道是那里
: : 寫錯了@@? 懇請版上的大大解惑一下 程式碼如下~
: : //從a view controller切換到 postStatus view controller
: : PostStatusViewController *postStatus = [[PostStatusViewController alloc]
: : initWithNibName:@"PostStatusViewController" bundle:nil];
: : [self.navigationController pushViewController:postStatus animated:YES];
: : //postStatus view controller的內容
: : - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)
: : nibBundleOrNil
: : {
: : self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
: : if (self) {
: : // Custom initialization
: : }
: : return self;
: : }
: : - (void)viewDidLoad
: : {
: : [super viewDidLoad];
: : UIBarButtonItem *retwitterBtn = [[UIBarButtonItem alloc]initWithTitle:
: : @"發佈" style:UIBarButtonItemStylePlain target:self action:
: : @selector(send:)];
: : self.navigationItem.rightBarButtonItem = retwitterBtn;
: : [[UIBarButtonItem appearance] setTintColor:[UIColor grayColor]];
: : theTextView = [[[UITextView alloc] init];
: : }
: 你的theTextView 跟 self.theTextView是同一個物件嗎?沒有給Frame是用IB
: outlet吧。
: : -(void)viewWillAppear:(BOOL)animated
: : {
: : [super viewWillAppear:animated];
: : [self.theTextView becomeFirstResponder];
: 建議寫在viewDidAppear,當然只是建議。
: : }
: : -(void)viewWillDisappear:(BOOL)animated
: : {
: : [super viewWillDisappear:animated];
: : }
: - (void)viewDidDisappear:(BOOL)animated
: {
: [self.theTextView resignFirstResponder]; //離開時放掉responder
: [super viewDidDisappear:animated];
: }
: 沒測試,你試試看。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.32.31.33
→
04/30 00:02, , 1F
04/30 00:02, 1F
→
04/30 06:19, , 2F
04/30 06:19, 2F
→
04/30 06:19, , 3F
04/30 06:19, 3F
推
04/30 10:05, , 4F
04/30 10:05, 4F
→
04/30 19:30, , 5F
04/30 19:30, 5F
→
04/30 19:36, , 6F
04/30 19:36, 6F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):
MacDev 近期熱門文章
PTT數位生活區 即時熱門文章