我已经创建了一个应用程序,我有一个活动包含一个TextView和一个按钮。现在这个活动在应用程序中被多次使用,所以我想要的是,当我点击该活动中的后退按钮时,它应该去以前的活动。简而言之,它应该作为设备的后退按钮。我的代码如下:
此活动用于4项活动,
所以我尝试过如下:
Advance_help.java
package com.theappgeeks.kevingreenwealth;
import java.text.BreakIterator;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class AdvanceHelp extends Activity implements OnClickListener{
Button btn;
Calculator_1Activity cal1 =new Calculator_1Activity();
Calculator2 cal2 =new Calculator2();
Calculator_3Activity cal3 =new Calculator_3Activity();
Calculator_4Activity cal4 =new Calculator_4Activity();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_advance_help);
btn=(Button)findViewById(R.id.button1);
/*btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(btn.)
Intent i1=new Intent(AdvanceHelp.this,Calculator_1Activity.class);
startActivity(i1);
}
});*/
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_advance_help, menu);
return true;
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(v.equals(cal1)){
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i1= new Intent(AdvanceHelp.this,Calculator_1Activity.class);
startActivity(i1);
}
});
}
else if(v.equals(cal2)){
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i1= new Intent(AdvanceHelp.this,Calculator2.class);
startActivity(i1);
}
});
}
else if(v.equals(cal3)){
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i1= new Intent(AdvanceHelp.this,Calculator2.class);
startActivity(i1);
}
});
}
else if(v.equals(cal4)){
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i1= new Intent(AdvanceHelp.this,Calculator2.class);
startActivity(i1);
}
});
}
else
{
Intent i = new Intent(AdvanceHelp.this,MainMenuActivity.class);
startActivity(i);
}
}
}
请尽快帮助我..谢谢 提前
答案 0 :(得分:1)
糟糕的编程习惯,
正如您implements OnClickListener
btn=(Button)findViewById(R.id.button1);
btn.setOnClickListener(this);
并删除
btn.setOnClickListener(new OnClickListener() {
来自
@Override
public void onClick(View v) {
而
i want is that when i click the back button in that activity ,it should go to the previous
activity.In short it should work as back button of device.My code is as below:
只需在按钮的click()上调用Activity finish()
即可。
答案 1 :(得分:0)
只需调用方法onBackPressed()
即可。按下后退按钮时也会调用此方法。
答案 2 :(得分:0)
对于背压和完成,上述答案都是正确的,但这不是一个合适的问题,你有一个按钮,你想要调用4个不可能的活动...... !!!!因为你正在将它与id进行比较,而这只有当你有超过按钮时才有意义..... !!!!!
答案 3 :(得分:0)
在您的onClick(View v)
方法调用中super.OnBackPressed()
调用后退按钮,或调用finish()
结束当前活动并返回上一个正在运行的活动