2

我已经知道如何在单击按钮时启动一个新活动,但是我在一个布局上有三个按钮。我希望该 ONE 活动上的三个按钮中的每一个都链接到其他三个活动。

我有一个我称之为“主要”的活动,按钮 1 被称为服务,我想将它链接到服务活动。按钮 2 称为搜索,我希望它转到搜索活动,第三个是“地图”,我想链接到地图活动。

有人可以帮我吗?谢谢

编辑:另外,我是 Android 编码的初学者,你能详细解释一下吗?

4

4 回答 4

3

那么问题出在哪里?只需设置您的类将实现View.OnClickListener并覆盖onClick()您得到的方法。

public class MainActivity extends Activity implements View.OnClickListener {
   // body
}

@Override
public void onClick(View view) {
   switch (view.getId()) {

      case R.id.serviceBtn:
         Intent serviceIntent = new Intent(this, ServiceActivity.class);
         startActivity(serviceIntent);
         break;
      case R.id.searchBtn:
         Intent searchIntent = new Intent(this, SearchActivity.class);
         startActivity(searchIntent);
         break;
      case R.id.mapBtn:
         Intent mapIntent = new Intent(this, MapActivity.class);
         startActivity(mapIntent);
         break;
   } 
}
于 2012-06-14T18:18:57.293 回答
1

onclick监听器绑定到所有三个按钮。在侦听器中,检索按钮的 ID。创建一个类型的变量Class。根据按钮 ID 的值,将其初始化为要调用的活动的类。然后Intent为该类构造一个,并调用startActivity().

编辑 hawaii.five-0:这是我的做法:

@Override
public void onClick(View view) {
   Class c = null;
   switch (view.getId()) {
      case R.id.serviceBtn:
         c = ServiceActivity.class;
         break;
      case R.id.searchBtn:
         c = SearchActivity.class;
         break;
      case R.id.mapBtn:
         c = MapActivity.class;
         break;
   } 
   Intent i = new Intent(YourActivity.this, c);
   startActivity(i);
}

编辑2:

class CurrentActivity extends Activity
    implements OnClickListener  
{
    void onCreate(Bundle b)
    {
        //Other initialization goes here...

        ((Button)findViewById(R.id.MyButton1)).setOnClickListener(this);
        ((Button)findViewById(R.id.MyButton2)).setOnClickListener(this);
        ((Button)findViewById(R.id.MyButton3)).setOnClickListener(this);
    }

}
于 2012-06-14T18:20:09.337 回答
0

它很容易亲爱的。只需将此代码放在按钮单击事件上

Intent myIntent = new Intent(CurrentActivity.this, NextActivity.class);
CurrentActivity.this.startActivity(myIntent);
于 2012-06-14T18:18:48.053 回答
0

单击按钮时很容易启动新活动 。我已经给出了这个例子。

// R.id.btnAdd -> which is present in your layout page
Button btnStart = (Button) findViewById(R.id.btnAdd); // declare button
// declare listener evernt for button
OnClickListener listener = new OnClickListener() {

   @Override
   public void onClick(View v) {
        // declare the Intent for moving another activity
        Intent view = new Intent(YourCurrentClassName.this,
        anotherClassName.class);
        // startActivity is used to navigating the view
        startActivity(view);
    }
};
// set the listener evernt to button
btnStart.setOnClickListener(listener);
于 2013-06-10T10:38:50.893 回答