将简单的Android项目转换为在Xcode中运行

时间:2012-02-23 17:19:25

标签: android xcode

长期潜伏的第一次海报

我有一个简单的android项目,我被要求在iOS上运行。我根本不是程序员,只是一个快速志愿完成任务的网络人员......

所以,这就是我的工作(在eclipse项目中):

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    // Add Click listeners for all buttons
    View firstButton = findViewById(R.id.button1);
    firstButton.setOnClickListener(this);
    View secondButton = findViewById(R.id.button2);
    secondButton.setOnClickListener(this);
    View thirdButton = findViewById(R.id.button3);
    thirdButton.setOnClickListener(this);
    View fourthButton = findViewById(R.id.button4);
    fourthButton.setOnClickListener(this);
    View fifthButton = findViewById(R.id.button5);
    fifthButton.setOnClickListener(this);
}

 // Process the button click events
public void onClick(View v) {

    //based on the button clicked display associated html file
    //html files are located under the assets folder
    switch(v.getId()){
        case R.id.button1:
            Intent j = new Intent(this, Webscreen.class);
            j.putExtra(Webscreen.URL, "file:///android_asset/deliver.html");
            startActivity(j);
        break;

        case R.id.button2:
            Intent k = new Intent(this, Webscreen.class);
            k.putExtra(Webscreen.URL, "file:///android_asset/return.html");
            startActivity(k);
        break;

        case R.id.button3:
            Intent l = new Intent(this, Webscreen.class);
            l.putExtra(Webscreen.URL, "file:///android_asset/updating.html");
            startActivity(l);
        break; 

        case R.id.button4:
            Intent m = new Intent(this, Webscreen.class);
            m.putExtra(Webscreen.URL, "file:///android_asset/repair.html");
            startActivity(m);
        break;  

        case R.id.button5:
            Intent n = new Intent(this, Webscreen.class);
            n.putExtra(Webscreen.URL, "file:///android_asset/vendor.html");
            startActivity(n);
        break;  
    }

所以这一切都是在屏幕上显示5个按钮,当点击它们时,它们会打开一个本地的html文件。

任何人都有一些很好的例子可以在Xcode中做类似的事情吗?我正在尝试使用Web视图,但我还没有太多运气。我设法得到了一些与记分牌一起使用的东西,但这个应用程序必须在以前的iOS版本中有价值,而不仅仅是5.0。

提前感谢您提供任何/所有帮助!

1 个答案:

答案 0 :(得分:0)

嗯,你说你根本就不是程序员......所以我甚至不知道从哪里开始。最简单的方法是在Safari中简单地打开这些html文件。你需要的只是一个带有html文件的html服务器。这就是你如何做到的:

 NSString *urlString = [NSString stringWithFormat:@"http:///yourdomain/deliver.html"];
 NSURL * url = [NSURL URLWithString:urlString];
 [[NSWorkspace sharedWorkspace] openURL:url];

如果您想使用webView,这就是将文件加载到视图中的方式:

-(void)loadDocument:(NSString*)documentName inView:(UIWebView*)webView
{
    NSString *path = [[NSBundle mainBundle] pathForResource:documentName ofType:nil];
    NSURL *url = [NSURL fileURLWithPath:path];
    NSURLRequest *request = [NSURLRequest requestWithURL:url];
    [webView loadRequest:request];
}

// Calling -loadDocument:inView:
[self loadDocument:@"deliver.html" inView:self.webview];

只需将您的html文件拖放到Xcode左侧的导航器列表中即可将其添加到项目中。将出现一张纸。请记住选择“复制文件...”并选中目标旁边的框。

webView变量是您在Interface Builder中定义的webview。您使用插座进行设置: https://developer.apple.com/library/mac/#recipes/xcode_help-interface_builder/CreatingOutlet.html

编辑:使用操作可以在单击按钮时触发方法。 您可以在此处了解有关操作的更多信 https://developer.apple.com/library/ios/#documentation/IDEs/Conceptual/Xcode4TransitionGuide/InterfaceBuilder/InterfaceBuilder.html