如何制作的EditText框在对话框 [英] how to make a edittext box in a dialog
本文介绍了如何制作的EditText框在对话框的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我试图做一个的EditText框在对话框中输入密码。 当我这样做我不能够做的事情。我在这一个初学者。 请帮我在这。
公共类MainActivity延伸活动{
按钮来创建,展示,设置;
//字符串传递=管理;字符串密码;
@覆盖
保护无效的onCreate(包savedInstanceState){
super.onCreate(savedInstanceState);
的setContentView(R.layout.activity_main);
创建=(按钮)findViewById(R.id.amcreate);
设置=(按钮)findViewById(R.id.amsetting);
秀=(按钮)findViewById(R.id.amshow);
//输入=(EditText上)findViewById(R.id.this);
setting.setVisibility(View.INVISIBLE);
create.setOnClickListener(新View.OnClickListener(){
公共无效的onClick(视图查看){
意图myIntent1 =新的意图(view.getContext(),Create.class);
startActivityForResult(myIntent1,0);
}
});
show.setOnClickListener(新View.OnClickListener(){
// @燮pressWarnings(德precation)
公共无效的onClick(最终查看视图){
//创建警报对话框有一个按钮
AlertDialog.Builder alertDialog =新AlertDialog.Builder(MainActivity.this);
// AlertDialog alertDialog =新AlertDialog.Builder(MainActivity.this).create();
//设置对话框标题
alertDialog.setTitle(密码);
//设置对话框消息
alertDialog.setMessage(请输入密码);
**最后的EditText输入=新的EditText(本); **
//alertDialog.setView(input);
//设置图标,以对话框
alertDialog.setIcon(R.drawable.key);
//设置正是按钮
alertDialog.setPositiveButton(是,
新DialogInterface.OnClickListener(){
公共无效的onClick(DialogInterface对话,诠释它){
//写您的code此对话框后执行
Toast.makeText(getApplicationContext(),密码匹配,Toast.LENGTH_SHORT).show();
意图myIntent1 =新的意图(view.getContext(),Show.class);
startActivityForResult(myIntent1,0);
}
});
//设置否定否按钮
alertDialog.setNegativeButton(否,
新DialogInterface.OnClickListener(){
公共无效的onClick(DialogInterface对话,诠释它){
//写您的code此对话框后执行
dialog.cancel();
}
});
// 关闭
//显示警报信息
alertDialog.show();
}
});
图片
我希望得到尽可能
AlertDialog.Builder alertDialog =新AlertDialog.Builder(MainActivity.this);
alertDialog.setTitle(密码);
alertDialog.setMessage(请输入密码);
最后的EditText输入=新的EditText(MainActivity.this);
LinearLayout.LayoutParams LP =新LinearLayout.LayoutParams(
LinearLayout.LayoutParams.MATCH_PARENT,
LinearLayout.LayoutParams.MATCH_PARENT);
input.setLayoutParams(LP);
alertDialog.setView(输入);
alertDialog.setIcon(R.drawable.key);
alertDialog.setPositiveButton(是,
新DialogInterface.OnClickListener(){
公共无效的onClick(DialogInterface对话,诠释它){
。密码= input.getText()的toString();
如果(password.compareTo()== 0){
如果(pass.equals(密码)){
Toast.makeText(getApplicationContext(),
密码匹配,Toast.LENGTH_SHORT).show();
意图myIntent1 =新的意图(view.getContext()
Show.class);
startActivityForResult(myIntent1,0);
} 其他 {
Toast.makeText(getApplicationContext(),
密码错误!,Toast.LENGTH_SHORT).show();
}
}
}
});
alertDialog.setNegativeButton(否,
新DialogInterface.OnClickListener(){
公共无效的onClick(DialogInterface对话,诠释它){
dialog.cancel();
}
});
alertDialog.show();
}
});
解决方案
使用Activtiy上下文
替换该
最后的EditText输入=新的EditText(本);
到
最后的EditText输入=新的EditText(MainActivity.this);
LinearLayout.LayoutParams LP =新LinearLayout.LayoutParams(
LinearLayout.LayoutParams.MATCH_PARENT,
LinearLayout.LayoutParams.MATCH_PARENT);
input.setLayoutParams(LP);
alertDialog.setView(输入); //取消注释这一行
i am trying to make a edittext box in a dialog box for entering a password. and when i am doing i am not able to do. I am a beginner in it. Please help me in this.
public class MainActivity extends Activity {
Button create, show, setting;
//String pass="admin";String password;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
create = (Button)findViewById(R.id.amcreate);
setting = (Button)findViewById(R.id.amsetting);
show = (Button)findViewById(R.id.amshow);
//input = (EditText)findViewById(R.id.this);
setting.setVisibility(View.INVISIBLE);
create.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
Intent myIntent1 = new Intent(view.getContext(), Create.class);
startActivityForResult(myIntent1, 0);
}
});
show.setOnClickListener(new View.OnClickListener() {
//@SuppressWarnings("deprecation")
public void onClick(final View view) {
// Creating alert Dialog with one Button
AlertDialog.Builder alertDialog = new AlertDialog.Builder(MainActivity.this);
//AlertDialog alertDialog = new AlertDialog.Builder(MainActivity.this).create();
// Setting Dialog Title
alertDialog.setTitle("PASSWORD");
// Setting Dialog Message
alertDialog.setMessage("Enter Password");
**final EditText input = new EditText(this);**
//alertDialog.setView(input);
// Setting Icon to Dialog
alertDialog.setIcon(R.drawable.key);
// Setting Positive "Yes" Button
alertDialog.setPositiveButton("YES",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,int which) {
// Write your code here to execute after dialog
Toast.makeText(getApplicationContext(),"Password Matched", Toast.LENGTH_SHORT).show();
Intent myIntent1 = new Intent(view.getContext(), Show.class);
startActivityForResult(myIntent1, 0);
}
});
// Setting Negative "NO" Button
alertDialog.setNegativeButton("NO",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
// Write your code here to execute after dialog
dialog.cancel();
}
});
// closed
// Showing Alert Message
alertDialog.show();
}
});
Image
i want to get as
AlertDialog.Builder alertDialog = new AlertDialog.Builder(MainActivity.this);
alertDialog.setTitle("PASSWORD");
alertDialog.setMessage("Enter Password");
final EditText input = new EditText(MainActivity.this);
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.MATCH_PARENT,
LinearLayout.LayoutParams.MATCH_PARENT);
input.setLayoutParams(lp);
alertDialog.setView(input);
alertDialog.setIcon(R.drawable.key);
alertDialog.setPositiveButton("YES",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
password = input.getText().toString();
if (password.compareTo("") == 0) {
if (pass.equals(password)) {
Toast.makeText(getApplicationContext(),
"Password Matched", Toast.LENGTH_SHORT).show();
Intent myIntent1 = new Intent(view.getContext(),
Show.class);
startActivityForResult(myIntent1, 0);
} else {
Toast.makeText(getApplicationContext(),
"Wrong Password!", Toast.LENGTH_SHORT).show();
}
}
}
});
alertDialog.setNegativeButton("NO",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
alertDialog.show();
}
});
解决方案
Use Activtiy Context
Replace this
final EditText input = new EditText(this);
By
final EditText input = new EditText(MainActivity.this);
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.MATCH_PARENT,
LinearLayout.LayoutParams.MATCH_PARENT);
input.setLayoutParams(lp);
alertDialog.setView(input); // uncomment this line
这篇关于如何制作的EditText框在对话框的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文