在onCreate中定义onClick方法

时间:2015-11-18 04:00:11

标签: android

我试图在onCreate活动中定义这个onClick方法

public void GetMusicListLock(View v) {

    Intent getNameScreenIntent = new Intent(this, SecondScreen.class);
    final int resultLock=1;
    getNameScreenIntent.putExtra("Lock","LockScreen");
    startActivityForResult(getNameScreenIntent, resultLock);

}

但它给了我错误说"无法解析符号v"。

如果我在onCreate之外定义方法,它的工作正常。我想知道是否有办法在onCreate中定义onClick方法。

2 个答案:

答案 0 :(得分:1)

在你的onCreate中这样做:

   Button button = (Button) findViewById(R.id.button1);
     button.setOnClickListener(new OnClickListener() {

        public void onClick(View v) {
            // TODO Auto-generated method stub
        Intent getNameScreenIntent = new Intent(this, SecondScreen.class);
        final int resultLock=1;
        getNameScreenIntent.putExtra("Lock","LockScreen");
        startActivityForResult(getNameScreenIntent, resultLock);
        }
     });

答案 1 :(得分:1)

您的方法适用于XML onClick

button1.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent getNameScreenIntent = new Intent(this, SecondScreen.class);
            final int resultLock=1;
            getNameScreenIntent.putExtra("Lock","LockScreen");
            startActivityForResult(getNameScreenIntent, resultLock);
        }
    });

如果您想将其设置为视图,可以尝试使用

{{1}}