iOS4 のアプリ (iPad) に問題があります。キーボードが機能せず、最初のビュー (ログイン ビュー) の後、Web ビューに表示されません。
Appdelagate :
AppDelegate.h
@class RootViewController;
@interface StandardFacileAppDelegate : NSObject <UIApplicationDelegate> {
UIWindow *window;
RootViewController *rootViewController;
}
@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet RootViewController *rootViewController;
AppDelegate.m
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
rootViewController = [[RootViewController alloc] init];
window.rootViewController = rootViewController;
//[window addSubview:rootViewController.view];
[window makeKeyAndVisible];
return YES;
}
ルートビューコントローラー:
- (void)viewDidLoad {
[super viewDidLoad];
[self loadViewController];
[self.view addSubview:viewController.view];
}
- (void)loadViewController {
ViewController *viewControllertemp = [[ViewController alloc]initWithNibName:@"ViewController" bundle:nil];
self.viewController = viewControllertemp;
[viewControllertemp release];}
viewController は、リクエスト後のログイン ビューです。ビューを変更するためのメソッドを呼び出します (私の webview):
- (void)changeViewToIpadTheWebView:(UIViewController *)fromView{
UIViewController *currentView = (UIViewController*)fromView;
NSLog(@"currentView =>%@",currentView);
if(!ipadTheWebView)
[self loadipadTheWebView];
[currentView.view removeFromSuperview];
for (UIView *view in [self.view subviews]) {
[view removeFromSuperview];
}
[self.view addSubview:ipadTheWebView.view];
NSURL *url = [NSURL URLWithString:@"http://www.google.com/"];
NSURLRequest *requestURL = [NSURLRequest requestWithURL:url];
[ipadTheWebView.webView loadRequest:requestURL];
私の Web ビューは問題ありませんが、Google で検索語が必要な場合、テキスト フィールドにフォーカスがあるときにキーボードが表示されません (ビュー スクロール)。
このコードは iOS5 では動作しますが、ios4 では動作しません。
ご協力いただきありがとうございます ;)
編集:ありがとうマチュー、
RootViewController.h
#import <UIKit/UIKit.h>
@class ViewController;
@class IpadTheWebView;
@interface RootViewController : UIViewController {
ViewController *viewController;
IpadTheWebView *ipadTheWebView;
}
@property (nonatomic,retain) ViewController *viewController;
- (void)loadViewController;
- (void)changeViewToViewController:(UIViewController *)fromView;
@property (nonatomic,retain) IpadTheWebView *ipadTheWebView;
- (void)loadipadTheWebView;
- (void)changeViewToIpadTheWebView:(UIViewController *)fromView;
- (void)keyboardWillShow:(NSNotification *)notification;
- (void)keyboardWillHide:(NSNotification *)note;
@end