Comments (8)
第一个问题是指上层使用到了 resource.bundle 里的图片吗?如果是使用了 resource.bundle 里的图片,建议直接 使用 UIImage+NIM.h 里的扩展方法 nim_imageInKit:
二三问题我们会在以后的版本迭代中解决的,感谢您的反馈 :)
from nim-uikit-ios.
NSBundle * mainBundle = [NSBundle mainBundle];
NSString * resource = [mainBundle pathForResource:@"NIMKitResource"
ofType:@"bundle"];
[NIMKit sharedKit].resourceBundleName = resource;
resource是需要设置mainBundle的
emoticonBundleName
settingBundleName
这两个却不需要... 统一了岂不是很好?
from nim-uikit-ios.
这个是不需要上层去赋值的,直接拿来读就可以了,具体可以参考下 UIImage+NIM 里的 nim_imageInKit: 方法实现。
from nim-uikit-ios.
会报错哎。 我记得是哪个地方取图片的时候, 没有从mainbound里去取。。。
from nim-uikit-ios.
具体错误和步骤贴出来看看呢?组件里的图片都是在 resource.bundle里的呀,组件获取图片方法也全是直接去那个bundle里拿的。
from nim-uikit-ios.
@implementation NIMKit
-
(instancetype)init
{
if (self = [super init]) {
_resourceBundleName = @"NIMKitResource.bundle";
_emoticonBundleName = @"NIMKitEmoticon.bundle";
_settingBundleName = @"NIMKitSettings.bundle";
_firer = [[NIMKitNotificationFirer alloc] init];
_provider = [[NIMKitDataProviderImpl alloc] init]; //默认使用 NIMKit 的实现_layoutConfig = [[NIMCellLayoutConfig alloc] init];
}
return self;
}
UIImage (NIMKit)
- (UIImage *)nim_imageInKit:(NSString *)imageName{
NSString *name = [[[NIMKit sharedKit] resourceBundleName] stringByAppendingPathComponent:imageName];
return [UIImage imageNamed:name];
}
直接拿的图片,这个时候,不会去MainBundle里去取
========
@implementation NIMKitGlobalConfig
- (instancetype)init{
self = [super init];
if (self) {
NSString *name = [[[NIMKit sharedKit] settingBundleName] stringByAppendingPathComponent:@"NIMKitGlobalSetting.plist"];
NSString *path = [[NSBundle mainBundle] pathForResource:name ofType:nil];
NSDictionary *globalSetting = [NSDictionary dictionaryWithContentsOfFile:path];
这里的时候取得是mainbundle
from nim-uikit-ios.
Bundle 说白了其实也就是个文件目录。
第一个取图片是从 resourceBundleName 这个目录里取的。
第二个取配置 plist 其实是从 settingBundleName 这个目录里取的。
两处的 name 变量其实都是拼接的目录名。
mainBundle 是资源根目录的意思,是可以通过 * / * 这样的方式去拿子目录里的资源的。
而 imageNamed 默认也是走资源根目录,其实跟 [NSBundle mainBundle] 是一个意思。
from nim-uikit-ios.
而 imageNamed 默认也是走资源根目录,其实跟 [NSBundle mainBundle] 是一个意思。
你真的试过pod引入之后,是一个意思吗?你可以测试下的。
from nim-uikit-ios.
Related Issues (20)
- 你们自己有试过 可以运行起来吗? NELog 报错 找不到
- Module compiled with Swift 5.6 cannot be imported by the Swift 5.7 compiler: xxx/Pods/NECoreIMKit/NEKitCoreIM.framework/Modules/NEKitCoreIM.swiftmodule/x86_64-apple-ios-simulator.swiftmodule HOT 1
- 方法都是public不是open,没法使用。用回OC版本了。 HOT 4
- 在控制台,通过「帐号管理」创建帐号后,登录Demo,提示NIMRemoteErrorCodeForbidden HOT 2
- 你们自己有试过 可以运行起来吗? NELog 报错 找不到
- 有oc版本吗? HOT 1
- 既然已经用swift重构了,为什么还要用选用一些oc都第三方库做依赖,比如sd HOT 1
- oc项目cocoapods导入 HOT 1
- 运行项目,报错,Xcode 14.0 HOT 5
- Debug 是Ok,但是Release 包的时候就会报一下错误 HOT 1
- Debug 是Ok,但是Release 包的时候就会报一下错误 HOT 1
- 下载的demo pod文件爆红,编译不了 HOT 2
- pod 会话列表和单聊模块后,编译成功,直接崩溃 HOT 2
- 'NEKitConversationUI/NEKitConversationUI-Swift.h' file not found HOT 3
- sdk源码都是swift维护的,可以集成到oc项目里面吗? HOT 1
- 查看源码模式下could not build Objective-C module 'NEChatUIKit HOT 2
- 阿语带有emoji显示错误 HOT 2
- xcode14.3 swift版本不同报错 9.4.0有问题,9.3.0是好的,BUILD_LIBRARY_FOR_DISTRIBUTION设置也是一样的。xcode14.2是好的 HOT 2
- Module compiled with Swift 5.6 cannot be imported by the Swift 5.8 compiler:
- mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64') HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nim-uikit-ios.