Appcelerator IOS模块开发

时间:2016-05-10 13:22:25

标签: ios module appcelerator appcelerator-titanium

我很难尝试为Titanium / Appc创建一个IOS模块我试图集成https://github.com/antiguab/BAFluidView所以我可以在钛中使用它。

我已经按照模块教程使用它只使用标准视图,但是当我尝试添加BAFluidView时它不起作用。

我已将这些类包含在xcode中,并且代码如下。

#import "ComExampleFluidView.h"
#import "TiUtils.h"
#import "BAFluidView.h"
#import "UIColor+ColorWithHex.h"

@implementation ComExampleFluidView
- (void)initializeState
{
    // Creates and keeps a reference to the view upon initialization
    square = [[UIView alloc] initWithFrame:[self frame]];

    BAFluidView *view = [[BAFluidView alloc] initWithFrame:view.frame];
    [view fillTo:@1.0];
    view.fillColor = [UIColor colorWithHex:0x397ebe];
    [view startAnimation];
    [square addSubview:view];

    [self addSubview:square];
    [super initializeState];
}
-(void)dealloc
{
    // Deallocates the view
    RELEASE_TO_NIL(square);
    [super dealloc];
}
-(void)frameSizeChanged:(CGRect)frame bounds:(CGRect)bounds
{
    // Sets the size and position of the view
    [TiUtils setView:square positionRect:bounds];
}
-(void)setColor_:(id)color
{
    // Assigns the view's background color
    square.backgroundColor = [[TiUtils colorValue:color] _color];
}
@end

头文件是

#import "TiUIView.h"
@interface ComExampleFluidView: TiUIView {
    UIView *square;
}
@end

有人可以对此提出一些建议吗?

1 个答案:

答案 0 :(得分:0)

因为您正在尝试桥接本机视图,所以需要一些布局助手来正确处理Titanium-layout系统。请检查ti.googlemaps等模块,尤其是initialization视图。此外,setColor等自定义设置者需要将颜色应用于BAFluidView,而不是UIView,因此您需要在标题中保留该颜色的引用。我想ti.googlemaps示例应该解释您正在寻找的所有概念。祝你好运!