दिखा रहा है मैं एंड्रॉइड/जावा के लिए अपेक्षाकृत नया हूं। ढेर ओवरफ्लो के लिए धन्यवाद, मैं यहां पूछे गए प्रश्नों से बहुत कुछ सीखने में सक्षम था। हालांकि, अब मैं इस समस्या पर फंस गया हूँ।एकाधिक अलर्टडिअलॉग
मेरे पास एक पासवर्ड इनपुट AlertDialog
है जो ऐप शुरू करते समय पॉप अप करता है। यह EditText
से पासवर्ड पढ़ता है और फ़ाइल में संग्रहीत एक के साथ इसकी तुलना करता है। मुझे एक अतिरिक्त AlertDialog
की आवश्यकता है जो एक अमान्य/गलत पासवर्ड प्रदान किए जाने पर दिखाया गया हो। यह भी मैंने लागू किया। रीसेट और पुन: प्रयास करें -
अब, यह दूसरा संवाद दो बटन है। मैं गतिविधि को फिर से पहला संवाद दिखाना चाहता हूं जब हम पर क्लिक करें। यह वह जगह है जहां मैं अनजान हूं। यदि कोई कामकाजी समाधान और थोड़ा सा स्पष्टीकरण प्रदान कर सकता है, तो मैं बहुत बाध्य होगा।
LayoutInflater li = LayoutInflater.from(context);
View passView = li.inflate(R.layout.authdialog, null);
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(context);
// set prompts.xml to alertdialog builder
alertDialogBuilder.setView(passView);
final EditText passInput = (EditText) passView.findViewById(
R.id.editTextDialogUserInput);
final TextView txtv = (TextView) findViewById(R.id.textv);
// set dialog message
alertDialogBuilder
.setCancelable(false)
.setPositiveButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
String data = "";
try {
FileInputStream fis = openFileInput("authfile");
InputStreamReader in = new InputStreamReader(fis);
BufferedReader br = new BufferedReader(in);
data = br.readLine();
} catch (Exception e) {
e.printStackTrace();
}
if (data.toString().equals(
passInput.getText().toString())) {
txtv.setText("You Have Logged in");
} else {
LayoutInflater ln = LayoutInflater.from(context);
View invalidView = ln.inflate(R.layout.invdialog,
null);
AlertDialog.Builder invalidDialogBuild = new AlertDialog.Builder(
context);
invalidDialogBuild.setView(invalidView);
// set dialog message
invalidDialogBuild
.setCancelable(false)
.setPositiveButton(
"Retry",
new DialogInterface.OnClickListener() {
public void onClick(
DialogInterface dialog,
int id) {
dialog.cancel();
}
})
.setNegativeButton(
"Reset",
new DialogInterface.OnClickListener() {
public void onClick(
DialogInterface dialog,
int id) {
dialog.cancel();
}
});
dialog.cancel();
AlertDialog invalidDialog = invalidDialogBuild
.create();
// show it
invalidDialog.show();
}
}
})
.setNegativeButton("Cancel",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.cancel();
}
});
// create alert dialog
AlertDialog alertDialog = alertDialogBuilder.create();
// show it
alertDialog.show();
मुझे पता है कि आपके पास पहले से ही संवाद आंशिक रूप से काम कर रहे हैं। लेकिन मुझे वास्तव में उस उद्देश्य के लिए संवाद का उपयोग न करने के लिए यह एक बेहतर उपयोगकर्ता अनुभव मिलता है। इसके बजाय मेरे पास उपयोगकर्ता नाम और पासवर्ड, सबमिट बटन इत्यादि के लिए 'एडिट व्यू' के साथ मेरी लॉगिन स्क्रीन 'गतिविधि' हो सकती है और मेरे पास 'टेक्स्ट व्यू' संदेश भी है जिसे मैं लाल और एक संदेश ('theTextView.setText ("") 'अगर व्यक्ति लॉगिन करने में विफल रहता है। इस तरह आप उपयोगकर्ता को चेतावनी देने के लिए बस एक संदेश पाठ को बदलना नहीं चाहते हैं, उपयोगकर्ता नाम अमान्य है – wired00
दरअसल यह केवल एक व्यक्ति है, जहां उन्हें उपयोगकर्ता नाम नहीं चाहिए बल्कि पासवर्ड और मुझे स्क्रीन को 2 सेकंड या उससे कम के लिए स्क्रीन दिखाने के बजाय स्प्लैश स्क्रीन पर करने की आवश्यकता है, पासवर्ड से पूछा जाना चाहिए। आप दृष्टिकोण के माध्यम से भी प्राप्त कर सकते हैं साथ ही पॉपिंग के बजाए शीर्ष पर मौजूद टेक्स्टव्यू को बदलकर एक नया संदेश। लेकिन फिर कोई रीसेट विकल्प नहीं होगा। क्या मेरे पास एक चेतावनी संवाद में तीन बटन हो सकते हैं – GunJack