我的按钮“关闭”不关闭,但隐藏页面
大家好,我在closeListener(在我的java代码中)按钮(关闭)。当我按下这个按钮时(关闭),我在第一页中正确地返回,但它没有正确关闭我的租赁页面(第二页),我的第二页在我的第一页下方仍然打开(隐藏在第一页后面),怎么可以我正确地关闭第二页(租)?我的按钮“关闭”不关闭,但隐藏页面
package albencreation.realestateapplication;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class Rent extends AppCompatActivity {
EditText price = null;
EditText profit = null;
TextView result = null;
Button envoyer = null;
Button close = null;
Button info = null;
Button clear = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.rent);
price = (EditText) findViewById(R.id.price);
profit = (EditText) findViewById(R.id.profit);
result = (TextView) findViewById(R.id.result);
envoyer = (Button) findViewById(R.id.buttcalculate);
close = (Button) findViewById(R.id.buttclose);
info = (Button) findViewById(R.id.buttinfo);
clear = (Button) findViewById(R.id.buttclear);
envoyer.setOnClickListener(envoyerListener);
close.setOnClickListener(closeListener);
info.setOnClickListener(infoListener);
clear.setOnClickListener(clearListener);
}
private OnClickListener envoyerListener = new OnClickListener() {
@Override
public void onClick(View v) {
String p = price.getText().toString();
String o = profit.getText().toString();
float pValue;
if (p.isEmpty()) {
pValue = 0;
} else {
pValue = Float.valueOf(p);
}
float oValue;
if (o.isEmpty()) {
oValue = 0;
} else {
oValue = Float.valueOf(o);
}
float resultat = oValue * pValue/100;
result.setText("the rent is " + String.valueOf(resultat) + " currency");
}
};
private OnClickListener closeListener = new OnClickListener() {
@Override
public void onClick(View v) {
Intent jumpage = new Intent(Rent.this, MainActivity.class);
startActivity(jumpage);
}
};
private OnClickListener infoListener = new OnClickListener() {
@Override
public void onClick(View v) {
Intent jumpage = new Intent(Rent.this, Inforent.class);
startActivity(jumpage);
}
};
private OnClickListener clearListener = new OnClickListener() {
@Override
public void onClick(View v) {
price.getText().clear();
profit.getText().clear();
String defaut = "result rent";
result.setText(defaut);
}
};
}
可以调用finish(
)方法来完成你的活动好:
private OnClickListener closeListener = new OnClickListener() {
@Override
public void onClick(View v) {
Intent jumpage = new Intent(Rent.this, MainActivity.class);
startActivity(jumpage);
Rent.this.finish();
}
};
取而代之的是
private OnClickListener closeListener = new OnClickListener() {
@Override
public void onClick(View v) {
Intent jumpage = new Intent(Rent.this, MainActivity.class);
startActivity(jumpage);
}
};
只要写如下
private OnClickListener closeListener = new OnClickListener() {
@Override
public void onClick(View v) {
this.finish();
}
};
,这不是一个有效的上下文,因为它是一个匿名的内部类。 –
不,“this”指向当前活动,即租 –
您处于匿名内部类中,这不是上下文。 –
刚请致电finish()
关闭Rent
活动。
试试这个:
private OnClickListener closeListener = new OnClickListener() {
@Override
public void onClick(View v) {
Intent jumpage = new Intent(Rent.this, MainActivity.class);
startActivity(jumpage);
finish();
}
};
它的工作原理:-)感谢很多 – Alex
欢迎你的兄弟:) –
我张贴了这个问题,标题:如何把一个十进制数(###,## #,###。00)中的一个字符串值。 – Alex