0

在视图之间切换时出现错误。我android:onClick="onClick"在 xml 中的每个图像按钮上都有。这是代码

    selfHelp = (ImageButton)findViewById(R.id.selfhelpButton);
    services = (ImageButton)findViewById(R.id.services);
    messages = (ImageButton)findViewById(R.id.mailButton);
    about = (ImageButton)findViewById(R.id.aboutButton);
    more = (ImageButton)findViewById(R.id.moreButton);
    selfHelp.setOnClickListener(new View.OnClickListener() {
        public void onClick(View view) {               
                Intent myIntent = new Intent(view.getContext(), SelfHelp.class);
                startActivity(myIntent);
        }

    });
    Services.setOnClickListener(new View.OnClickListener() {
        public void onClick(View view) {          
            Intent myIntent = new Intent(view.getContext(), Services.class);
            startActivity(myIntent);
        }

    });

    messages.setOnClickListener(new View.OnClickListener() {
        public void onClick(View view) {               
            Intent myIntent = new Intent(view.getContext(), Messages.class);
            startActivity(myIntent);
        }

    });

    about.setOnClickListener(new View.OnClickListener() {
        public void onClick(View view) {               
            Intent myIntent = new Intent(view.getContext(), About.class);
            startActivity(myIntent);
        }

    });

    more.setOnClickListener(new View.OnClickListener() {
        public void onClick(View view) {               
            Intent myIntent = new Intent(view.getContext(), More.class);
            startActivity(myIntent);
        }

    });

我在另一个页面上只有一个按钮,但图像按钮不起作用。任何帮助都会很棒

4

1 回答 1

1

你有两个选择

  1. 在每个 ImageButton 上删除android:onClick="onClick",因为您已经在按钮上设置了单击侦听器,以覆盖默认的onClick()方法。
  2. 删除所有setOnclickListener()方法并在您的 ImageButtons 添加属性:

    android:onClick="onClick"   
    android:clickable="true"
    

在您的活动中使用:

public void onClick(View v){
Intent i = null;
switch(v.getId()){
case R.id.services:
       i = new Intent(this,Services.class);
       startActivity(i);
       break;
case R.id.mailButton:
..........
break;

}
于 2012-06-21T15:00:22.927 回答