gpt4 book ai didi

java - 安装时提示用户输入 - Android

转载 作者:行者123 更新时间:2023-12-02 07:58:08 25 4
gpt4 key购买 nike

我正在尝试制作一个仅在安装应用程序时才出现的警报框;我需要用户输入电话号码,然后才能使用该应用程序。我的 onCreate() 方法中有一个警报对话框,但如果用户点击警报框之外的地方,它就会消失。我尝试添加 alert.setFinishOnTouchOutside(true) 如您所见,但出现错误(将强制类型转换添加到“Alert”)。如果用户点击窗口外部,我需要做什么才能阻止警报取消?谢谢

    AlertDialog.Builder alert = new AlertDialog.Builder(this);

alert.setTitle("Please Enter Your Phone Number");
alert.setMessage("You must enter your phone number in order to use this application");
alert.setFinishOnTouchOutside(true);

// Set an EditText view to get user input
final EditText input = new EditText(this);
alert.setView(input);

alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
Editable value = input.getText();

// Do something with value!
}
});
alert.show();

最佳答案

I'm trying to make an alert box that appears only when the app is installed

这是不可能的。您在安装时无法获得控制权。

I need the user to input their phone number before they are allowed to use the app.

然后询问他们第一次运行您的应用时的值,或者您想要的数据是否不存在(例如,用户清除了您的应用的数据)。

I have an alert dialog in my onCreate() method, but if the user taps outside of the alert box, it goes away.

如果他们按“返回”按钮,它也会消失。

I've tried adding alert.setFinishOnTouchOutside(true) as you can see, but I get an error (Add cast to 'Alert')

setFinishOnTouchOutside()Activity 上的一个方法。它不是 AlertDialog.Builder 上的方法。

What do I need to do to stop the alert from cancelling if the user taps outside of the window?

Builder 构建的 AlertDialog 上调用 setCanceledOnTouchOutside()Builder 本身不提供此功能。

当然,如果您一开始就不使用 AlertDialog 会更好,因为您建议的 UX 是对用户不利的。

用户下载并安装您的应用程序,打开它,他们首先遇到的是一个他们可能无法理解的对话框。而且,您的目标是他们无法获取您应用中任何可以实际解释的内容:

  • 电话号码是什么? (家?工作?手机?性爱热线?)
  • 该电话号码有何用途?
  • 他们可以更改电话号码吗?
  • 他们能够设置多个电话号码吗?
  • 为什么他们首先要尊重您的请求?他们向您提供此类个人信息能得到什么?

如果您在 onResume() 中检测到您没有电话号码,请启动一个 Activity 以允许他们提供该号码,而不是使用对话框。利用屏幕解释一下您为什么需要该号码,并允许他们访问在线帮助以进一步解释问题。即使他们退出该 Activity ,您原来的 onResume() 也会再次触发,因此他们无法继续进行。更好的用户体验是允许他们进入应用程序,但禁用需要电话号码才能使用的功能,就像您可以打开 Microsoft Word,而无需在 Guzzle 下被迫加载现有的 Word 文档一样.

关于java - 安装时提示用户输入 - Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9341968/

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