我已经知道如何在单击按钮时启动一个新活动,但是我在一个布局上有三个按钮。我希望该 ONE 活动上的三个按钮中的每一个都链接到其他三个活动。
我有一个我称之为“主要”的活动,按钮 1 被称为服务,我想将它链接到服务活动。按钮 2 称为搜索,我希望它转到搜索活动,第三个是“地图”,我想链接到地图活动。
有人可以帮我吗?谢谢
编辑:另外,我是 Android 编码的初学者,你能详细解释一下吗?
我已经知道如何在单击按钮时启动一个新活动,但是我在一个布局上有三个按钮。我希望该 ONE 活动上的三个按钮中的每一个都链接到其他三个活动。
我有一个我称之为“主要”的活动,按钮 1 被称为服务,我想将它链接到服务活动。按钮 2 称为搜索,我希望它转到搜索活动,第三个是“地图”,我想链接到地图活动。
有人可以帮我吗?谢谢
编辑:另外,我是 Android 编码的初学者,你能详细解释一下吗?
那么问题出在哪里?只需设置您的类将实现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;
}
}
将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);
}
}
它很容易亲爱的。只需将此代码放在按钮单击事件上
Intent myIntent = new Intent(CurrentActivity.this, NextActivity.class);
CurrentActivity.this.startActivity(myIntent);
单击按钮时很容易启动新活动 。我已经给出了这个例子。
// 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);