必须将类声明为abstract或实现抽象方法错误

时间:2015-04-22 06:06:06

标签: java android class android-studio

这是我的代码,假设在按下按钮时更改一些文字: -

public class MyActivity extends ActionBarActivity {
    TextView txtview;
    Button butto;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_my);
        ImageView imageView = (ImageView) findViewById(R.id.image);
        txtview = (TextView) findViewById(R.id.text);
        butto = (Button) findViewById(R.id.buttn);

        butto.setOnClickListener(new View.OnClickListener() {

                public void Onclick(View paramView) {
                txtview.setText("You Clicked it!");
            }
        });

    }}

View.OnClickListener带有下划线,它给出了错误“Class必须被声明为abstract或实现抽象方法”。这段代码大部分是从互联网上复制而来的,它假设工作正常。可能只是Android Studio错误。我怎样才能让它发挥作用?

3 个答案:

答案 0 :(得分:15)

View.OnClickListener必须实现函数onClick()否则您的类应该是抽象的,这样您就可以在某个子类中实现onClick()函数。但在你的情况下,你拼错了。它应该是onClick()而不是Onclick();

答案 1 :(得分:7)

您的方法名称错误:

public void Onclick(View paramView)

应该是

public void onClick(View paramView)

遵循Java命名约定可以帮助您。

答案 2 :(得分:1)

技巧:在@Override之上添加onClick(View)。如果没有@Override,警告意味着您没有实施onClickListener