gpt4 book ai didi

java - DialogFragment创建和调用的问题

转载 作者:行者123 更新时间:2023-12-02 05:07:34 24 4
gpt4 key购买 nike

我正在创建一个带有两个按钮的简单 DialogFragment,当您选择这两个选项中的任何一个时,它应该只显示 Toast。当您按下 Activity 上的某个按钮时,就会显示此对话框。由于某种原因,代码没有显示任何类型的错误,但是当我单击按钮时,应用程序崩溃了。我该如何解决这个问题?

我首先尝试为Dialog创建一个自定义的XML文件和java文件,但我也无法做到这一点。 Google 的文档和其他教程也没有帮助

公共(public)类 Config 扩展 AppCompatActivity {

Button btncanc;
Button btnreestab;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_config);
btncanc = (Button) findViewById(R.id.btncnacelset);
btnreestab = (Button) findViewById(R.id.btnrest);

btncanc.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v) {
Toast toast = Toast.makeText(getApplicationContext(),"Operación cancelada",Toast.LENGTH_SHORT);
toast.show();

Config.this.finish();
}
});
btnreestab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
AlertDialog.Builder builder = new AlertDialog.Builder(getApplicationContext());

builder.setMessage("Hola");
builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast toast = Toast.makeText(getApplicationContext(),"hola",Toast.LENGTH_SHORT);
toast.show();
}
});
builder.setNegativeButton("cancela", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast toast = Toast.makeText(getApplicationContext(),"adios",Toast.LENGTH_SHORT);
toast.show();
}
});
AlertDialog dialog = builder.create(); dialog.show();
}
});
}

}

最佳答案

您可以从上下文中复制您的样式。使您的警报对话框初始化。

new AlertDialog.Builder(Config.this)

您可以通过其他方式在 style.xml 中定义自定义样式,例如

<style name="myDialog" parent="Theme.AppCompat.Dialog">
<item name="android:windowNoTitle">true</item>
...
</style

并初始化警报对话框

AlertDialog.Builder dialog = new AlertDialog.Builder(getApplicationContext(), R.style.myDialog);

此崩溃的原因是 AppCompatActivity 具有 Theme.AppCompat,因此您应该使用此主题。检查崩溃情况。

You need to use a Theme.AppCompat theme (or descendant) with this activity

关于java - DialogFragment创建和调用的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56341625/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com