在 WSI 中使用 C++ 开发 iOS 应用

在 WSI 中使用 C++ 开发 iOS 应用

使用C++不但能有效提高程序运行速度,而且可以减少BUG的发生,加强应用的软件工程质量,缩短应用开发周期。

WSI 封装了大多数常用的iOS NextStep 以及 UI(NS) 界面类,采用 Signals/Slots 模式转换了原始的消息回调,使用 virtual 实现 Objective-C 的 delegate 模式,达到使用 C++ 对象完成整个 iOS 应用的开发的目的。

UIView 例子:

class MainView
: public ::wsi::ns::View


public:
MainView()
{
// 设置按钮
button.set_text(tr(@”BUTTON”));

    // 添加按钮到View
    add_sub(button);

    view().button.connect(kSignalButtonClicked, _action(MainView:: act_button_clicked), this);
    // 绑定按钮的点击信号
   }

void layout_subviews()
{
    //排版
    ::wsi::CGRectLayoutHBox lyt(bounds());
    ::wsi::CGRectLayoutLinear lnr(lyt);
    lnr << (::wsi::flex)1 << (::wsi::flex)1 << (::wsi::flex)1;
    lyt << lnr;
    button.set_frame(lyt << lnr);
    // 居中放置这个按钮
    }

::wsi::ui::Button button;

protected:

{
    // process.}

};

UIViewController 例子:
class MainController
: public ::wsi::ui::Controller
{
public:

void view_loaded()
{
    view().button.connect(kSignalButtonClicked, _action(MainController::act_button_clicked), this);
    // 绑定按钮的点击信号
}

protected:

{
    // process...
}

};


你可能感兴趣的:(ios,C++,Flex,action,UIView,button)