我之前发过这个帖子,但iv没有运气。这是我目前的代码。我在寻找的是。我的对话框上的按钮只需返回(或关闭)origanl 屏幕。我一直在阅读关于android中的后退按钮,它只是在我脑海中。
java.code
import my.dlog.R;
import android.app.Activity;
import android.app.Dialog;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.view.View.OnClickListener;
public class DlogActivity extends Activity {
/** Called when the activity is first created. */
Dialog dialog;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
dialog = new Dialog(this);
dialog.setContentView(R.layout.main2);
dialog.setTitle("This is my custom dialog box");
dialog.setCancelable(true);
Button b=(Button)findViewById(R.id.button1);
b.setOnClickListener(new OnClickListener() {
public void onBackPressed() {
Intent intent = new Intent(DlogActivity.this, DlogActivity.class);
startActivity(intent);
finish();
}
public void onClick(View v) {
dialog.show();
}
});
}
}
xml.code
<Button
android:id="@+id/btn2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:text="Button"
android:onClick="DlogActivity"/>
<ImageView
android:layout_width="236dp"
android:layout_height="220dp"
android:layout_marginRight="100dp" android:background="@drawable/carsee"/>
<RelativeLayout
android:id="@+id/relativeLayout1"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
答案 0 :(得分:0)
您没有正确连接按钮。你在Java中找到button1的id
Button b=(Button)findViewById(R.id.button1);
但是在xml中,您为该按钮指定了一个id为btn2
<Button
android:id="@+id/btn2"
android:layout_width="wrap_content"
.
android:onClick="DlogActivity"/>
确保这些ID匹配。
答案 1 :(得分:0)
你的代码对我来说完全混乱。我怀疑你可能会对活动和对话之间的区别感到困惑。如果您要做的只是在活动之上显示一个对话框,然后在关闭对话框时返回该活动,则需要dialog.dismiss()。阅读this
如果您正在努力实现其他目标,请解释。