Android Java:View无法应用于()

时间:2014-01-21 06:08:10

标签: java android view

我有几个EditText我希望隐藏,直到通过众多方法之一显示。为了达到这个目的,我希望让我的控件在它自己的公共空白中可见并将其调回。

    public void showControls(View view) {
            EditText showV = (EditText) findViewById(R.id.vedit);
            EditText showH = (EditText) findViewById(R.id.hedit);

            showH.setVisability(view.VISABLE);
            showV.setVisability(view.VISABLE);
    }


    //calling on showControls
    public void onMethodOne (View view) {
        showControls();
    }

我的输出显示:

com.rayman.raysgame.MainActivity.showControls(android.view.View) in com.rayman.raysgame.MainActivity cannot be applied to ()

我不太了解输出,所以我不确定如何搞砸代码。我想了解我的错误。

4 个答案:

答案 0 :(得分:1)

您已声明showControlsView作为参数,但您在没有参数的情况下调用它。您可能想要更改:

showControls();

为:

showControls(view);

但是,我没有看到您在showControls中使用视图本身。 (您还需要在该方法中将view.VISABLE的拼写更改为view.VISIBLE。)

答案 1 :(得分:1)

您需要致电showControls(view);而不是showControls();,因为您的方法需要View作为参数

答案 2 :(得分:0)

您必须通过添加其参数showControls(View view)来调用正确的函数。它虽然是编程语言的基础。

你必须以适当的方式调用findViewById。它应该是view的实例。

使用此:

public void showControls(View view) {
      EditText showV = (EditText) view.findViewById(R.id.vedit);
      EditText showH = (EditText) view.findViewById(R.id.hedit);

      showH.setVisability(view.VISIBLE);
      showV.setVisability(view.VISIBLE);
}


//calling on showControls
public void onMethodOne (View view) {
     showControls(view);
}

答案 3 :(得分:0)

更改您的代码

showH.setVisability(view.VISABLE);
showV.setVisability(view.VISABLE);

showH.setVisability(View.VISIBLE);
showV.setVisability(View.VISIBLE);