java - Android开发-使用多个图像按钮

标签 java android imagebutton

我正在尝试创建一个Android应用程序,我是一个相对新手。 我正在尝试使用多个图像按钮,但是,我无法让它工作,这是我正在使用的代码。

Public class MapScreen extends Activity
{

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.belfast_map);


  ImageButton ib1,ib2,ib3,ib4,ib5;

   ib1= (ImageButton) findViewById(R.id.go_to_lagan_screen);
   ib2= (ImageButton) findViewById(R.id.go_to_city);
   ib3= (ImageButton) findViewById(R.id.go_to_university);
   ib4= (ImageButton) findViewById(R.id.go_to_icon_screen);
   ib5= (ImageButton) findViewById(R.id.map_to_home_screen);


   ib1.setOnClickListener(new View.OnClickListener()
   {
      @Override
      public void onClick(View v)
      {
         Intent intent = new Intent (v.getContext(), LaganArea.class);
         startActivityForResult(intent,0);
         //To change body of implemented methods use File | Settings | File Templates.
      }
   } );

   ib2.setOnClickListener((new View.OnClickListener()
   {
      @Override
      public void onClick(View v)
      {
         Intent intent1= new Intent (v.getContext(), CityCentre.class);
         startActivityForResult(intent1,0);
         //To change body of implemented methods use File | Settings | File Templates.
      }
   }));
   ib3.setOnClickListener((new View.OnClickListener()
   {
      @Override
      public void onClick(View v)
      {
         Intent intent2= new Intent (v.getContext(), UniversityArea.class);
         startActivityForResult(intent2,0);
         //To change body of implemented methods use File | Settings | File Templates.
      }
   }));
   ib4.setOnClickListener((new View.OnClickListener()
   {
      @Override
      public void onClick(View v)
      {
         Intent intent3= new Intent (v.getContext(), TheIcons.class);
         startActivityForResult(intent3,0);

         //To change body of implemented methods use File | Settings | File Templates.
      }
   }));
   ib5.setOnClickListener((new View.OnClickListener()
   {
      @Override
      public void onClick(View v)
      {
         Intent intent4= new Intent (v.getContext(), MyActivity.class);
         startActivityForResult(intent4,0);
         //To change body of implemented methods use File | Settings | File Templates.
      }
   }));
}

}

我不知道我是否错过了一些愚蠢的事情,或者我是否以完全错误的方式设置了它。但如果能有一双额外的眼睛来观察它,我们将不胜感激。

最佳答案

试试这个。不要忘记将这些 Activity 添加到 list 中。您可以使用 switch/case 来获得干净且小的代码。

@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.belfast_map);


          ImageButton ib1,ib2,ib3,ib4,ib5;

           ib1= (ImageButton) findViewById(R.id.go_to_lagan_screen);
           ib2= (ImageButton) findViewById(R.id.go_to_city);
           ib3= (ImageButton) findViewById(R.id.go_to_university);
           ib4= (ImageButton) findViewById(R.id.go_to_icon_screen);
           ib5= (ImageButton) findViewById(R.id.map_to_home_screen);


           ib1.setOnClickListener(new View.OnClickListener()
           {
              @Override
              public void onClick(View v)
              {
                 Intent intent = new Intent (MapScreen.this, LaganArea.class);
                 startActivity(intent);

              }
           } );

           ib2.setOnClickListener((new View.OnClickListener()
           {
              @Override
              public void onClick(View v)
              {
                 Intent intent1= new Intent (MapScreen.this, CityCentre.class);
                 startActivity(intent1);
                 //To change body of implemented methods use File | Settings | File Templates.
              }
           }));
           ib3.setOnClickListener((new View.OnClickListener()
           {
              @Override
              public void onClick(View v)
              {
                 Intent intent2= new Intent (MapScreen.this, UniversityArea.class);
                 startActivity(intent2);
                 //To change body of implemented methods use File | Settings | File Templates.
              }
           }));
           ib4.setOnClickListener((new View.OnClickListener()
           {
              @Override
              public void onClick(View v)
              {
                 Intent intent3= new Intent (MapScreen.this, TheIcons.class);
                 startActivity(intent3);

                 //To change body of implemented methods use File | Settings | File Templates.
              }
           }));
           ib5.setOnClickListener((new View.OnClickListener()
           {
              @Override
              public void onClick(View v)
              {
                 Intent intent4= new Intent (MapScreen.this, MyActivity.class);
                 startActivity(intent4);
                 //To change body of implemented methods use File | Settings | File Templates.
              }
           }));
        }

关于java - Android开发-使用多个图像按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20291633/

相关文章:

java - RestTemplate:有没有办法保护 jvm 免受巨大响应大小的影响?

java - 通过比较进行字符串预测

java - 无法使用java去除pdf中的页面线

java - 在循环中执行重处理方法

java - Android Studio - 图像展开按钮(并打破重量规则?)

java - 如果应用程序关闭并重新打开,动态创建的图像按钮即使在使用后也为空

java - 单击主页/后退按钮时的 android 进度条

java - 通过 Post Android 发送数据到 PHP

java - 编舞问题

java - 如何将一侧边框和背景添加到一个可绘制对象中?