UITextView在输入时无法向上移动

4

我在我的项目中安装了一个名为 IQKeyboardManager 的pod文件,但它没有起作用。

这是截图, enter image description here

图片1:这是我创建工单的其中一个视图。

主题和消息是文本视图,不是文本字段。

当我开始在主题(subjectTextView)中输入时,我无法看到自己正在输入的内容,同样的事情也发生在消息(messageTextView)中。 我无法看到我在文本视图中输入的内容(请参见图像2A)

当我点击完成后,我们可以看到内容(请参见图像2B)

有什么解决办法吗?当我在subjectTextView和messageTextview中开始输入时,我希望在输入时将文本视图向上移动。

更新: 我在appdelegate文件中添加了以下代码,但仍然无效。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.
    [[IQKeyboardManager sharedManager] setEnable:YES];

    return YES;
}

你需要从AppDelegate中启用管理器。 - dahiya_boy
@dahiya_boy [[IQKeyboardManager sharedManager] setEnableAutoToolbar:true]; 这行代码我需要写在AppDelegate里面,对吗? - Nikita Patil
写下这个 -> [[IQKeyboardManager sharedManager] setEnable:YES]; - dahiya_boy
我添加了这行代码,但它仍然无法工作。 - Nikita Patil
4个回答

4

您需要启用 IQKeyboardManager 。您可以在应用程序委托的 didFinishLaunchingWithOptions 方法中启用它。

Swift 4 Xcode 9

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    IQKeyboardManager.sharedManager().enable = true
    return true
}

Objective C

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    [[IQKeyboardManager sharedManager] setEnable:YES];
    return YES;
}

我在AppDelegate文件中添加了这行代码,但仍然无法工作。 - Nikita Patil
请使用文本字段,基本上您需要使用textView。 - Khawar Islam

2

您需要在AppDelegatedidFinishLaunchingWithOptions方法中启用 IQKeyboardManager

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.
    [[IQKeyboardManager sharedManager] setEnable:YES];

    return YES;
}

应该能够正常工作


1

在应用程序委托的didFinishLaunchingWithOptions方法中添加以下代码:

[[IQKeyboardManager sharedManager] setEnable:YES];

或者您可以在该类的viewWillDisappear或viewDidLoad方法中添加。

您可能犯了一个小错误。 您是否在viewWillAppear或viewWillDisappear方法中写了任何内容?


0

尝试在您的“创建工单控制器”的viewWillAppear中添加以下行以重新启用

[[IQKeyboardManager sharedManager] setEnable:YES];

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接