如何在 android studio 2.3.1 中使用 "findViewById"?

how use "findViewById" in android studio 2.3.1?

我使用 android studio 2.3.1,并且在使用按钮和 setOnClickListener 时没有 "findViewById"!

并使用这个:

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_launcher);
        findViewById(R.id.button2);
        BTN_PROGRESS.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                doWork();
            }
        });
    }

    @Override
    public View findViewById(@IdRes int id) {
        BTN_PROGRESS = (Button) findViewById(R.id.button2);
        PRG_MAIN = (ProgressBar) findViewById(R.id.progressBar);
        return super.findViewById(id);
    }

    private void doWork() {
        // my code
    }
}

当 运行 应用未发生错误时!但应用程序被强制关闭! 如何处理这个问题?

findViewById 已在 Activity class 上定义,并且按预期工作。您不需要覆盖它。

您的应用因 Whosebug 而崩溃,因为您正在进行无限递归

所以,也许调用您的方法 private void findViews(),然后执行此操作

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_launcher);
    findViews();
    BTN_PROGRESS.setOnClickListener