Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/185.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 另一个类方法的setContentView_Java_Android - Fatal编程技术网

Java 另一个类方法的setContentView

Java 另一个类方法的setContentView,java,android,Java,Android,我试图从另一个类方法中显示布局,但我找到的唯一方法是通过 startActivity(新意图(Login.this、User.class)) 问题是,通过这种方式,我只能从我的用户类中使用onCreate()方法,而我要使用的方法是ChooseServer 在我的主类上(登录): 在我的用户类上: public class User extends Login { public void chooseUser() { setContentView(R.layout.escolheuser

我试图从另一个类方法中显示布局,但我找到的唯一方法是通过
startActivity(新意图(Login.this、User.class))

问题是,通过这种方式,我只能从我的用户类中使用
onCreate()
方法,而我要使用的方法是ChooseServer

在我的主类上(登录):

在我的用户类上:

public class User extends Login {
public void chooseUser() {
    setContentView(R.layout.escolheuser);
}
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.escolheuser);
}
}
有没有办法选择在使用startActivity时调用哪种方法? 或者我应该用另一种方式显示屏幕? 我是Java和Android的新手,所以,如果我说错话,我很抱歉

编辑: 我想要实现的是:
从我的第一个类(名为Login)调用另一个名为User的类中名为chooseser的方法,此方法将显示一个新屏幕。

有很多方法可以管理应用程序的导航

主要途径是:

  • 活动

  • 碎片

  • 正如您所写的,这是一种定制的方式,在您当前停留的活动上使用setContentView。这是不推荐的,因为你必须做大量的工作来管理一切,包括配置更改(如方向更改)时会发生什么,以及应用程序在长时间后恢复时会发生什么


  • 你需要多读一些书,也许是一本好的Android开发书籍。布局只不过是一个UI定义。布局可以在没有活动的情况下存在。活动可以在没有布局的情况下存在。一个活动可以使用多个布局。鉴于此,你的问题毫无意义。我建议编辑你的问题,关注你想做什么以及为什么,然后询问如何实现它。使用尽可能少的单词,准确无误。请记住,阅读这些问题的人除了你对问题的回答之外什么都不知道。谢谢你的回答,但既然这不是最好的回答方式,我该如何回答呢?正如我已经写的,你可以使用活动或片段。其实没那么难。只需检查API演示中的活动示例,或者检查支持库示例中的片段示例。最近,谷歌还引入了另一种很酷的导航方式——使用导航抽屉。您必须选择最适合您的应用程序的方法。每种方法都有其优缺点。
    public class User extends Login {
    public void chooseUser() {
        setContentView(R.layout.escolheuser);
    }
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.escolheuser);
    }
    }