程序没有问题,但是Toast却没有显示,这是怎么回事啊?

解决方案 »

  1.   

    代码是这样的:
    package my.widget.radiabutton;import android.app.Activity;
    import android.os.Bundle;
    import android.widget.RadioButton;
    import android.widget.RadioGroup;
    import android.widget.RadioGroup.OnCheckedChangeListener;
    import android.widget.Toast;public class RadiaButtonProjectActivity extends Activity implements OnCheckedChangeListener{
        /** Called when the activity is first created. */
    private RadioButton rb1,rb2,rb3,rb4;
    private RadioGroup rg;
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            rb1=(RadioButton)findViewById(R.id.rb1);
            rb2=(RadioButton)findViewById(R.id.rb2);
            rb3=(RadioButton)findViewById(R.id.rb3);
            rb4=(RadioButton)findViewById(R.id.rb4);
            rg=(RadioGroup)findViewById(R.id.radGrp);
            rg.setOnCheckedChangeListener(this);
            
        }
        public void onCheckedChange(RadioGroup group,int checkedId){
        
         String rbName=null;
        
         if(checkedId==rb1.getId()){
         rbName=rb1.getText().toString();
         }
         else if(checkedId==rb2.getId()){
         rbName=rb2.getText().toString();
         }
         else if(checkedId==rb3.getId()){
         rbName=rb3.getText().toString();
         }
         else if(checkedId==rb4.getId()){
         rbName=rb4.getText().toString();
         }
         Toast.makeText(this,rbName, Toast.LENGTH_LONG).show();
        
        
        }
    public void onCheckedChanged(RadioGroup group, int checkedId)
    {
    // TODO Auto-generated method stub

    }
    }就是监听四个radiobutton用toast显示信息而已,怎么就是没有显示呢/?
      

  2.   

    调试下onCheckedChange 这个方法有没有进入执行吧
    如果执行了还不出来那试试用handler延时弹出toast
      

  3.   

    哎,这都看不出来,Toast第一个参数用this没用,你这个this指的是onCheckedChange这个事件,他的第一个参数应该是上下文,用RadiaButtonProjectActivity.this替换即可!
      

  4.   

    将Toast.makeText(this,rbName, Toast.LENGTH_LONG).show();
    改成Toast.makeText(RadiaButtonProjectActivity.this,rbName, Toast.LENGTH_LONG).show();
      

  5.   

    onCheckedChanged()是系统方法,onCheckedChange()是什么?事件触发的是onCheckedChanged(),而不是onCheckedChange()。至于6,7,8楼说的是多余的,你实现了接口,可以这样写。
      

  6.   

    我试过了,9楼说的确实是对的,你写的onCheckedChange()这个方法里面干吗,这应该是你自定义的吧,你定义了又没调用当然不会显示,下次这种问题就别问了,最起码你要在里面设个断点,看看又没有执行!