ビューviewDidLoadイベントでプログラムで作成するUITextViewがあります。
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
inputText = [[UITextView alloc] initWithFrame:CGRectMake(15, 90, 290, 150)];
[inputText.layer setBackgroundColor: [[UIColor whiteColor] CGColor]];
[inputText.layer setBorderColor: [[UIColor grayColor] CGColor]];
[inputText.layer setBorderWidth: 3.0f];
[inputText.layer setCornerRadius:8.0f];
[inputText.layer setMasksToBounds:YES];
[inputText setFont:[UIFont systemFontOfSize:15]];
[self.view addSubview:inputText];
}
これは、ビューが最初に表示されるときは正常に機能しますが、2 回目に表示されると、UITextView はタッチに応答せず、キーボードはポップアップしません。
これは、私がビューに向ける方法です。
someotherView.m
-(IBAction)insertToTable:(id)sender {
[self performSegueWithIdentifier:@"insertSegue" sender:self];
}
編集1
完全なコード:
.h @interface ViewControllerInsert : UIViewController { UITextView *inputText; UISegmentedControl *経験値; }
- (IBAction)InsertAction:(id)sender;
@property (strong, nonatomic) IBOutlet UISegmentedControl *experienceValue;
@property (strong, nonatomic) IBOutlet UITextView *inputText;
@end
.m
上記でリンクしたコード以外は、これだけです
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
NSLog(@"touchesBegan:withEvent:");
[self.view endEditing:YES];
[super touchesBegan:touches withEvent:event];
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
編集2
問題が見つかりました。これは私が使用したアニメーションが原因でしたか? 非常に奇妙なことに、私は Flip Vertically を使用していましたが、デフォルトに切り替えると完全に機能しましたか?