Java 从imagebutton启动另一个活动
因此,我想根据用户单击的imagebutton启动一个活动。Java 从imagebutton启动另一个活动,java,android,android-intent,Java,Android,Android Intent,因此,我想根据用户单击的imagebutton启动一个活动。 目前我有这样的想法: private void LoadDrawer() { // TODO Auto-generated method stub ImageButton Home, Icon, Ranking, History; Home = (ImageButton) findViewById(R.id.ibHome); Icon = (ImageButton) findViewById(R.id.
目前我有这样的想法:
private void LoadDrawer() {
// TODO Auto-generated method stub
ImageButton Home, Icon, Ranking, History;
Home = (ImageButton) findViewById(R.id.ibHome);
Icon = (ImageButton) findViewById(R.id.ibIcon);
Ranking = (ImageButton) findViewById(R.id.ibRanking);
History = (ImageButton) findViewById(R.id.ibHistory);
Home.setOnClickListener(this);
Icon.setOnClickListener(this);
Ranking.setOnClickListener(this);
History.setOnClickListener(this);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId())
{
case R.id.ibHome:
ClassLoader App2;
Intent intent2 = new Intent(this, App2.class);
break;
case R.id.ibIcon:
Intent intent1 = new Intent(this, App1.class);
break;
case R.id.ibRanking:
Intent intent4 = new Intent(this, App4.class);
break;
case R.id.ibHistory:
Intent intent5 = new Intent(this, App5.class);
break;
}
}
现在,您看到意图的原因是,我尝试使用意图启动其他活动,但没有效果
现在,我通过以下方式检索意图:
Intent intent[number] = getIntent();
String message = intent[number].getAction();
它实际上并没有停留在那个里,它只是我所拥有的,例如,我这里有2,因为这是来自app2的,我不太明白你们的问题是什么。它应该像这样简单
@Override
public void onClick(View v) {
Intent i = null;
switch (v.getId()) {
case R.id.ibHome:
i = new Intent(this, App2.class);
break;
case R.id.ibIcon:
i = new Intent(this, App1.class);
break;
case R.id.ibRanking:
i = new Intent(this, App4.class);
break;
case R.id.ibHistory:
i = new Intent(this, App5.class);
break;
}
if (i != null)
startActivity(i);
}
您也可以使用类似的方法:
Home= (ImageButton) findViewById(R.id.ibHome);
Home.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i = new Intent(MainActivity.this, App2.class);
startActivity(i);
}
});
Icon= (ImageButton) findViewById(R.id.ibIcon);
Icon.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i = new Intent(MainActivity.this, App1.class);
startActivity(i);
}
});
首先,保持编码风格。为什么不为每个图像按钮使用一个单独的“onClick”方法呢?难道你没有忘记调用
startActivity(MyActivity.this,intent)代码>实际开始您的活动?是的,您可以。但你不应该。