.java中的问题

时间:2010-11-28 17:29:49

标签: android

这是我的java代码,我真的找不到我的错误

  package com.example.RateMates;



      import  android.app.Activity;
      import android.content.Intent;
      import android.os.Bundle;
      import android.view.View;
      import android.view.View.OnClickListener;
      import android.widget.Button;
      import android.widget.RadioButton;
      import android.widget.Toast;


  public class RateMates extends Activity {


/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    final RadioButton radio_red = (RadioButton) findViewById(R.id.radio_red);
    final RadioButton radio_blue = (RadioButton) findViewById(R.id.radio_blue);
    radio_red.setOnClickListener(radio_listener);
    radio_blue.setOnClickListener(radio_listener);
} 
private OnClickListener radio_listener = new OnClickListener() {
    public void onClick(View v) {
        // Perform action on clicks
        RadioButton rb = (RadioButton) v;
        Toast.makeText(RateMates.this, rb.getText(), Toast.LENGTH_SHORT).show();
    }

};

Button next = (Button) findViewById(R.id.button);
next.setOnClickListener(new View.OnClickListener() {
    public void onClick(View view) {
        Intent myIntent = new Intent(view.getContext(), RateMates2.class);
        startActivityForResult(myIntent, 0);
    }

});

}}

2 个答案:

答案 0 :(得分:1)

问题是你的陈述

Button next = (Button) findViewById(R.id.button);
next.setOnClickListener....

属于该类的主体,这是非法的,您需要将这些行移动到onCreate函数中。

但是如果您已经给出了错误消息,我相信有人会发现这个更快。我没有正确阅读这些评论。 仍然,不清楚为什么你得到这个错误,因为你的OnClickListeners不需要在这里是最终的,我的答案是(我猜)仍然有效。

答案 1 :(得分:0)

您必须使用“final OnClickListener radio_listener”而不是“private OnClickListener radio_listener”