如何将简单代码添加到Android应用程序

时间:2011-02-17 19:47:19

标签: java android html oncreate

关于将常规java代码放在android应用程序中的位置,我有些困惑。

我正在使用Eclipse SDK,默认情况下,在创建应用程序时,它会使用OnCreate()方法生成.java文件。这是我在这个方法中放置代码的地方吗?

现在在我的布局中我有一个imageButton,一旦点击了这个按钮,我想打开一个新的WebView页面,它从assets文件夹中的index.html文件中获取它的HTML代码。这就是我到目前为止......

    Button button = (Button)findViewById(R.id.imagebutton1);
    if(button.isPressed())
    {
        WebView webview = new WebView(null);
        setContentView(webview);
        try {
            InputStream fin = getAssets().open("index.html");
                byte[] buffer = new byte[fin.available()];
                fin.read(buffer);
                fin.close();
                webview.loadData(new String(buffer), "text/html", "UTF-8");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

我在onCreate()方法的末尾有这段代码:

setContentView(R.layout.main);

但是,一旦我运行该程序,它就会崩溃并告诉我它无法启动。我假设它与代码在onCreate中的事实有关。我知道它不是我应该把它放在哪里,但我想不出代码应该去的任何地方。我应该制作一个新的.java文件并在那里有一个主方法吗?我目前正在上C ++和C#的课程,所以这个Android的东西对我来说还是新的。

3 个答案:

答案 0 :(得分:2)

你做过tutorials吗?如果没有,我会从那里开始了解创建和使用Android Activity的基础知识。一旦您完成了这些工作,请阅读application fundamentals以更全面地了解生命周期。

答案 1 :(得分:1)

你不应该在onCreate中多次调用setContentView。 WebView应位于main.xml布局文件中,否则启动一个新的Activity,其布局包含WebView。并且还要点击你需要拨打的按钮setOnClickListener()。

答案 2 :(得分:0)

请参阅Handling UI Events

此外,如果您的程序崩溃,如果您从logcat提供错误消息将会很有帮助。