android - 在android中切换布局时出错

标签 android android-layout

我正在尝试切换布局,但下面的错误不断出现。

java.lang.NullPointerException: Attempt to invoke virtual method 'void android.view.ViewGroup.setId(int)' on a null object reference

android studio 提示“setContentView(R.layout.activity_main);”

我不确定如何修复此错误。我只搜索了错误并尝试了几个修复程序,但没有一个适用于添加的网络线程。我可能只是缺少一些简单的东西。任何帮助深表感谢。

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    new Thread(new Runnable() {
        public void run() {
            try {
                new ChatServer();
            } catch (IOException e) {
                e.printStackTrace();
            }
            setContentView(R.layout.activity_main);
            client = new Client();
            client.start();
            Network.register(client);
            client.addListener(new Listener() {
                public void connected(Connection connection) {
                    Network.RegisterName registerName = new Network.RegisterName();
                    registerName.name = name;
                    client.sendTCP(registerName);
                }

                public void received(Connection connection, Object object) {
                    if (object instanceof Network.ChatMessage) {
                        Network.ChatMessage chatMessage = (Network.ChatMessage) object;
                        System.out.println(chatMessage.text);
                        return;
                    }
                }
            });
            host = client.discoverHosts(54777, 5000);
            while (host == null) {
                host = client.discoverHosts(54777, 5000);
                System.out.println(host);
            }
            if (host.isEmpty()) {
                addmsg("no hosts available");
                System.exit(1);
            }
            final InetAddress address = host.get(0);
            setContentView(R.layout.promptname);
        }
    }).start();




}

最佳答案

setContentView(R.layout.activity_main); 移到匿名内部线程类之外,并摆脱 setContentView(R.layout.promptname); 你需要要在 View 之间切换,您应该查看 Fragment

关于android - 在android中切换布局时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30172468/

相关文章:

android - 套接字输入流和 Unicode

Android Studio 3.5 我的按钮怎么了?

java - 有什么方法可以在距离约束布局处设置障碍或在没有约束的情况下向 View 添加边距?

java - 发出 SubStrings 和 outofboundsexception 错误

java - Google Drive API - 添加和更新权限

java - 如何隐藏或显示按钮上的元素单击下一个 Activity

android - 使用带有两个菜单的 SlidingPaneLayout 设置 View - 一个在左侧,一个在右侧

java - 如何在 Android 上以编程方式使用 View

android - 从完整 url 中提取基本 url

android - MediaRecorder 在启动时崩溃