gpt4 book ai didi

java - 单击“中性”按钮后是否可以保持对话框打开?

转载 作者:行者123 更新时间:2023-12-01 23:53:05 25 4
gpt4 key购买 nike

我有一个包含 3 个 EditText 的对话框,用于获取 ftp 地址、用户名和密码。我使用 .setNeutralButton 创建一个“测试连接”按钮。我可以连接到 ftp 并显示带有结果的 Toast,但我不希望“测试”按钮关闭对话框。如何在连接测试期间保持对话框打开?

livePreviewChk.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
LinearLayout lila1 = new LinearLayout(NewSite.this);
lila1.setOrientation(1); // 1 is for vertical orientation

final EditText serverName = new EditText(NewSite.this);
serverName.setHint("Server name");

final EditText serverAddress = new EditText(NewSite.this);
serverAddress.setHint("Server Address");

final EditText username = new EditText(NewSite.this);
username.setHint("Username:");

final EditText password = new EditText(NewSite.this);
password.setHint("Password");

AlertDialog.Builder alt_bld = new AlertDialog.Builder(
NewSite.this);
alt_bld.setIcon(R.drawable.ftpicon);
alt_bld.setTitle("Enter the login details for the host FTP")
.setCancelable(true)
.setPositiveButton("Save",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int id) {
}
}
})
.setNeutralButton("Test Connection",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int id) {
FTPConnector testConnection = new FTPConnector();
boolean status = testConnection
.ftpConnect(host, user, pass,
port);
if (status == true) {
connectionSuccessfull = true;
} else {
connectionSuccessfull = false;
}
}
})
.setNegativeButton("Cancel",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int id) {
// if this button is clicked, just close
// the dialog box and do nothing
dialog.cancel();
}
});

lila1.addView(serverName);
lila1.addView(serverAddress);
lila1.addView(username);
lila1.addView(password);

AlertDialog alert = alt_bld.create();
alert.setView(lila1);
alert.show();
}
});

最佳答案

据我所知,如果不扩展 Dialog 类,这是不可能的。但是,利用您拥有的功能,将其放入自己的 Activity 中并使用 Dialog 主题 可能会更容易、更好。您所要做的就是将代码放入新的 Activity 中,并在您的 manifest 中使用对话框主题

<activity
android:name="com.your.package.YourClassName"
android:label="YOurLabel"
android:theme="@android:style/Theme.Dialog" >
</activity>

这将提供 Dialog 的外观和感觉,同时包含在其自己的 Activity

这是一个SO answer on extending Dialog 。我没有仔细查看所有内容,但看起来如果您选择此选项,它可能会为您提供所需的内容。

关于java - 单击“中性”按钮后是否可以保持对话框打开?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16071500/

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