Java 我无法在主活动之外设置ContentView()?请阅读

Java 我无法在主活动之外设置ContentView()?请阅读,java,android,xml,Java,Android,Xml,我可以在主类中轻松设置内容视图,而在其他类中设置内容视图时,应用程序会崩溃 举个例子: 主要活动类别: public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.a

我可以在主类中轻松设置内容视图,而在其他类中设置内容视图时,应用程序会崩溃

举个例子:

主要活动类别:

public class MainActivity extends Activity
{
    @Override
    protected void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main); //HERE <-----

            new SecondClass();
    }
}
公共类MainActivity扩展活动
{
@凌驾
创建时受保护的void(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);//此处不能以这种方式创建活动的新实例,必须使用意图机制。请参见此处:。然后重写第二个活动的onCreate()方法,调用super和setContentView()。

活动中不应该有
构造函数

public SecondClass(){
setContentView(R.layout.activity_info); //HERE <----
 }
创建具有
意图的
活动的实例

public class MainActivity extends Activity
{
    @Override
    protected void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main); //HERE <-----

         Intent i = new Intent(MainActivity.this, SecondClass.class);
         startActivity(i);
    }
}
公共类MainActivity扩展活动
{
@凌驾
创建时受保护的void(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);//这里你能给我们看一下错误日志吗?还有,为什么你要在一个活动中创建一个布局相同的活动?这似乎是一个更大的问题。我的应用程序仍在崩溃,下面是代码:pastebin.com/d0PhLuf1再次感谢@codeMagicOh耶,我的坏@codeMagicThank!非常感谢!我会实现这个。如果我的代码是NT遵循任何逻辑实践,因为我用Android java学习的一切都是自学的,不遵循教程。我看到了你的意思,还有更多的代码,这只是问题的最基本的要素。你可能想考虑Google一些教程和浏览。谢谢你的建议,我要去做一个O。在线免费课程在一个名为coursera的网站上,尽管目前还没有设置。顺便说一句,感谢您的快速响应,并帮助我代表您,如果我可以的话。我想我听说过一些人将其用于scala和其他东西,所以这可能是一个不错的选择。同时,请查看我给您的链接,以获得入门。这是一个学习但学习的好地方简单教程中的一些基础知识将是一个很好的开始。我的应用程序仍在崩溃,下面是代码:再次感谢。感谢链接:D&quick Response我会投票,但不幸的是,我有一个必要的代表。尽管我再次接受了感谢!@svenoaks
 new SecondClass();
public class MainActivity extends Activity
{
    @Override
    protected void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main); //HERE <-----

         Intent i = new Intent(MainActivity.this, SecondClass.class);
         startActivity(i);
    }
}