MobileRuby:使用Ruby开发iOS应用的轻量级框架

移动开发 iOS
MobiRuby是一个新的开源项目,该项目的目的是使开发者可以使用Ruby来开发iOS和Android平台上的应用。

 该项目由Yuichiro MASUI发起,此人为Appcelerator工作。Appcelerator是一家提供移动平台开发框架的公司,其Titanium开发框架允许开发者使用自己熟悉的语言来开发移动应用。

MobiRuby基于mruby(轻量级的Ruby语言实现,可使用解释模式运行Ruby代码并在虚拟机中执行)构建。Yuichiro MASUI希望通过该框架,使Ruby能够替代Objective-C/C/Java语言来开发移动应用,就像Lua或Mono一样。

目前,该项目只有一个代码示例和截图,Yuichiro称,***版本将在未来几个月内发布,将基于Apache 2.0许可协议。

MobiRuby示例:

Ruby代码:

  1. # UIAlertView demo  
  2. def _S(str)  
  3.     NSString._stringWithUTF8String(str)  
  4. end 
  5. class MyAlertView < Mobi::Cocoa::UIAlertView  
  6.     define :void:didPresentAlertView:id do 
  7.         p "MyAlertView::didPresentAlertView" 
  8.     end 
  9.     define :void:alertView:id:clickedButtonAtIndex:int do |me, index|  
  10.         if index == 1  
  11.             app = UIApplication._sharedApplication  
  12.             url = NSURL._URLWithString(_S("http://mobiruby.org"))  
  13.             app._openURL url  
  14.         end 
  15.     end 
  16. end 
  17. alert = MyAlertView._alloc.  
  18.     _initWithTitle _S("Hello"),  
  19.     :message, _S("I'm MobiRuby"),  
  20.     :delegatenil,  
  21.     :cancelButtonTitle, _S("I know!"),  
  22.     :otherButtonTitles, _S("What's?"), nil 

运行结果:

【编辑推荐】

  1. 通过Titanium将Metro UI移植到iOS/Android上
  2. XCode下的iOS单元测试
  3. 为什么 iOS 6 将放弃 Google 地图?
责任编辑:冰凝儿 来源: iteye
相关推荐

2020-11-11 12:13:59

JS

2023-06-13 13:38:00

FlaskPython

2024-01-02 08:22:01

Koin框架项目

2023-06-27 16:42:18

Tinygrad深度学习工具

2021-06-26 10:03:35

Python框架Flask

2021-07-01 09:08:03

Python网页开发Flask

2022-08-10 12:21:07

PythonWebBottle

2024-02-06 09:12:55

Dapper.NETORM框架

2020-10-13 18:09:22

开发框架开源

2013-06-20 10:28:39

MVVM框架avalon架构

2022-02-12 21:05:11

异步爬虫框架

2011-03-02 10:03:44

SaturnJSJS

2014-04-21 10:01:45

前后端分离

2023-09-14 09:31:21

Docker容器

2012-02-01 09:16:18

Java

2011-11-28 09:16:24

Javajooq框架

2018-01-17 15:05:22

框架设计爬虫Scrapy

2010-07-07 09:30:41

WebMatrixWeb开发

2018-09-12 09:00:00

数据库Redis微服务

2023-08-29 15:07:35

无服务器计算云计算
点赞
收藏

51CTO技术栈公众号