繁体   English   中英

多个onCreate(在一个活动下捆绑的Webview和按钮

[英]multiple onCreate(Bundle under one activity for webview and button

我构建了一个Web应用程序,并且正在制作包装程序以将其放在应用程序商店中。 我有该应用程序的主页或开始页面,并且“提交”按钮成功加载了我的Webview页面,并且该应用程序运行良好。

我想在“提交”按钮上方添加一个小的Web视图,以便在用户进入应用程序之前显示更新的新闻,例如新的使用条款。

我按照示例操作,将Webview加载到主页上,并且可以正常工作-显示了内容,但是当我添加Webview时,“提交”按钮不再起作用。

Eclipse抛出错误“ TOS类型中的重复方法OnCreate(Bundle),因此我尝试将按钮的OnCreate更改为OnStart或OnCreateView。它从布局xml呈现,但是没有功能。我确定它是新手语法错误,所以我刚刚发布了Tos.java代码:

 package com.packagename.android;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.webkit.WebView;
import android.content.Context;
import android.content.Intent;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

 public class Tos extends Activity {


    private Button button;

    public void onCreate(Bundle savedInstanceState) {
        final Context context = this;

        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_tos);

        button = (Button) findViewById(R.id.buttonUrl);

        button.setOnClickListener(new OnClickListener() {

          @Override
          public void onClick(View arg0) {
            Intent intent = new Intent(context, Mapp.class);
            startActivity(intent);
          }

        });

    }


     private WebView TermswebView;

        public void onCreate(Bundle savedInstanceState) {

            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_tos);

            WebView TermswebView = (WebView) findViewById(R.id.webView);

            TermswebView.loadUrl(someURL");

        };

    };

因此,对于每个Activity(不是对象),您只需要一个onCreate方法,这就是您在考虑(我假设)需要多个onCreate方法的地方。

所以..只需合并您拥有的两个...

 public class Tos extends Activity {

     //UI ELEMENTS
    private Button button;
    private WebView TermswebView;

    public void onCreate(Bundle savedInstanceState) {
    final Context context = this;

    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_tos);
    TermswebView = (WebView) findViewById(R.id.webView);
    TermswebView.loadUrl("http://www.barglance.com/assets/tos/tos.php");


    button = (Button) findViewById(R.id.buttonUrl);

    button.setOnClickListener(new OnClickListener() {

      @Override
      public void onClick(View arg0) {
        Intent intent = new Intent(context, Mapp.class);
        startActivity(intent);
      }

    });

}

我希望这有帮助。 有关活动以及onCreate实际执行的功能以及调用时间的详细信息,请参阅Android文档-活动

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM