FAFA.MAUI.IOS.IQKeyboardManager
1.0.5
dotnet add package FAFA.MAUI.IOS.IQKeyboardManager --version 1.0.5
NuGet\Install-Package FAFA.MAUI.IOS.IQKeyboardManager -Version 1.0.5
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="FAFA.MAUI.IOS.IQKeyboardManager" Version="1.0.5" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="FAFA.MAUI.IOS.IQKeyboardManager" Version="1.0.5" />
<PackageReference Include="FAFA.MAUI.IOS.IQKeyboardManager" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add FAFA.MAUI.IOS.IQKeyboardManager --version 1.0.5
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: FAFA.MAUI.IOS.IQKeyboardManager, 1.0.5"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#addin nuget:?package=FAFA.MAUI.IOS.IQKeyboardManager&version=1.0.5
#tool nuget:?package=FAFA.MAUI.IOS.IQKeyboardManager&version=1.0.5
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
IQKeyboardManager MAUI Bindings
YOU MAY GENERATE A NEW FRAMEWORK BY DOING THE FOLLOWING
- Clone the original creators repository
- Open terminal inside the root directory of the project
- Run a
pod install
(assumption is you had cocoapods installed) - Run the following commands
xcodebuild -target IQKeyboardManager -configuration Release -sdk iphoneos BUILD_DIR=output
xcodebuild -target IQKeyboardManager -configuration Release -sdk iphonesimulator BUILD_DIR=output
xcodebuild -create-xcframework -framework output/Release-iphoneos/IQKeyboardManager.framework -framework output/Release-iphonesimulator/IQKeyboardManager.framework -output output/IQKeyboardManager.xcframework
- There will now be an
output
folder which will have the updated .xcframework - Copy over the generated .xcframework into the .net project, rebuild the library
- Bindings may change, so you will have to update
ApiDefinition.cs
andStructsAndEnums.cs
manually (recommended to do manually).
YOU MAY TRY TO AUTO REGENERATE THE BINDING FILES USING SHARPIE
- run
sharpie bind -sdk iphoneos -scope IQKeyboardManager.framework/Headers/*.h;
- this generates a ton of garbage, find IQKeyboardManager in
ApiDefinitions.cs
, delete the rest. - same deal with
StructsAndEnums.cs
It may not work as expected, I'm not an expert, in the end I took the ApiDefinitions.cs
from here
USAGE
// in MauiProgram.cs
#if IOS
using Maui.IQKeyboardManager;
using Microsoft.Maui.Platform;
using UIKit;
#endif
...
public static MauiApp CreateMauiApp()
{
var builder = MauiApp.CreateBuilder();
builder
.UseMauiApp<App>()
.ConfigureLifecycleEvents(events =>
{
#if IOS
events.AddiOS(ios =>
{
ios.FinishedLaunching((a, b) =>
{
// disable MS Version so it doesn't interfere with IQKeyboardManager
KeyboardAutoManagerScroll.Disconnect();
IQKeyboardManager.SharedManager.Enable = true;
IQKeyboardManager.SharedManager.EnableAutoToolbar = false;
return true;
});
});
#endif
});
...
return builder.Build();
}
...
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0-ios18.0 is compatible. net9.0-ios was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net8.0-ios18.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
.NET MAUI Bindings for IQKeyboardManager.