Articles of alertdialog

带有列表视图和消息的对话框

我需要创建包含ListView和消息的对话框,但是根据http://code.google.com/p/android/issues/detail?id=10948 ,使用标准AlertDialog是不可能的。 所以我决定使用text和listview创建自定义视图,并将其附加到对话框。 但是,我的列表视图是空的。 这是java代码: AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle(“Hello, title!”); LayoutInflater factory = LayoutInflater.from(this); View content = factory.inflate(R.layout.dialog, null); ListView lv = (ListView) content.findViewById(R.id.list); lv.setAdapter(new ArrayAdapter(this, android.R.layout.simple_list_item_single_choice, ITEMS)); lv.setChoiceMode(ListView.CHOICE_MODE_SINGLE); builder.setView(content).setPositiveButton(“OK”, this).setNegativeButton(“Cancel”, this); AlertDialog alert = builder.create(); alert.show(); 我也有: final String[] ITEMS = new String[] { “a”, “b”, “c” }; 这是对话框布局: 结果如下: 任何帮助是极大的赞赏。 谢谢!

android上的密码提示

我正在尝试输入密码,当用户输入错误的密码时,会显示一个询问“取消”或“重试”的对话框,当用户点击“重试”时,它会再次显示密码提示。 下面的图片来说明我的意思 这就是我做到的 /** RETRIEVE VIEW FROM DIALOGPROMPT.XML AND SET VIEW AS AN ALERTDIALOG BUILDER **/ LayoutInflater li = LayoutInflater.from(context); View promptsView = li.inflate(R.layout.searchprompt, null); AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(context); alertDialogBuilder.setView(promptsView); final EditText userInput = (EditText) promptsView .findViewById(R.id.user_input); // set dialog message alertDialogBuilder .setCancelable(false) .setNegativeButton(“Go”, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog,int id) { /** […]

Android:AlertDialog导致内存泄漏

我的应用程序显示了一个带有ListView的AlertDialog 。 一切都工作得很好然后我决定测试这个内存泄漏。 运行应用程序一段时间后,我打开了MAT并生成了Leak Suspects报告。 MAT发现了几个类似的泄漏: 由“”加载的“com.android.internal.app.AlertController $ RecycleListView”的一个实例占用… 我花了很多时间寻找这次泄漏的原因。 代码审查没有帮助我,我开始谷歌搜索。 这就是我发现的: 问题5054:AlertDialog似乎通过MessageQueue中的Message导致内存泄漏 我决定检查这个bug是否重现。 为此我创建了一个由两个活动组成的小程序。 MainActivity是一个enrty点。 它只包含一个运行LeakedActivity的按钮。 后者只在其onCreate()方法中显示AlertDialog 。 这是代码: public class MainActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); findViewById(R.id.button).setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { startActivity( new Intent(MainActivity.this, LeakedActivity.class)); } }); } } public class LeakedActivity extends […]

AlertDialog – 不要忽略项目点击

好吧我正在创建一个ArrayAdapter并在我的Alert Dialog中使用它,因为我不想在SingleItemSelection对话框中显示默认的单选按钮。 相反,我想要更改所选项目的背景,然后当用户按下肯定按钮时,我将执行与所选项目相关的操作。 private void showAlertDialog() { final String[] options = getResources().getStringArray(R.array.dialog_options); ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, options); AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(this); dialogBuilder.setTitle(“My Dialog”); dialogBuilder.setAdapter(adapter, new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Toast.makeText(getApplicationContext(), “item clicked at index ” + which, Toast.LENGTH_LONG).show(); // Here I need to change the background […]

如何在android的屏幕底部实现自定义对话框

哪个组件我必须选择在底部实现自定义对话框,如下图所示? 我应该选择alertdialog,popupwindow还是fragmentdialog?

AlertDialog中的Android EditText似乎太宽了

看起来下图中的EditText太宽了。 我假设我以某种方式滥用了SDK,直到确信我不想在EditText的两侧指定一定数量的边距/填充像素。 这个看起来更合适。 这是我的代码(创建第一个“创建标记”对话框): final Dao tagDao = getHelper().getTagDao(); final EditText input = new EditText(this); input.setSingleLine(true); input.setHint(R.string.create_tag_dialog_hint); AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setView(input); builder.setTitle(getString(R.string.create_tag_dialog_title)); builder.setPositiveButton( getString(R.string.create_tag_dialog_positive), new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int whichButton) { String value = input.getText().toString().trim(); Toast.makeText(getApplicationContext(), value, Toast.LENGTH_SHORT).show(); Tag tag = new Tag(value); try { tagDao.create(tag); } catch (SQLException e) […]

AlertDialog列表中的自定义对象; 如何获取显示字符串,然后获取实际值?

我一直在寻找Android AlertDialog,它很容易使用setItems(…)来添加要显示的字符串列表。 但是,在大多数情况下,您需要一个显示漂亮字符串的列表,但是当从列表中选择某些内容时,您需要实际值而不是字符串。 我一直无法以一种简单而好的方式find如何做到这一点。 提示? =) final Button Button1 = (Button) findViewById(R.id.Button1); Button1.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { final CharSequence[] items = { “String 1”, “String 2”, “String 3” }; // INstead of a string array, I want something like: // ArrayList test = new ArrayList(myArray); // And the CustomObject has a […]

将ArrayAdapter与AlertDialog和.setAdapter一起使用

我的代码进入OnOptionsItemSelected方法。 我试过显示一个简单的吐司,它工作正常,所以至少我知道我“到了那里”。 ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.select_dialog_multichoice); adapter.add(“whatever data1”); adapter.add(“whatever data2”); adapter.add(“whatever data3”); AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle(“whatever title”); builder.setAdapter(adapter, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int item) { } }); 问题是没有警报对话框。 我尝试用简单的数组构建一个警告对话框,它可以工作。

是否可以创建可扩展的列表AlertDialog?

在我的应用程序中,用户可以使用不同的标准选择要下载的文章。 其中一个是年月。 为此,我想要一个带有年份列表的AlertDialog。 如果用户点击一年,列表将展开并显示1月,2月等。 我知道如何使用SimpleExpandableListAdapter创建可扩展的列表视图,但这不是我想要的。 由于其他标准(例如类别)也列出了AlertDialogs,我想要一些外观和感觉相似的东西。 是否有可能实现这样的可扩展列表AlertDialog? 解 这是我最终基于CommonsWare的解决方案: AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle(“Select something”); ExpandableListView myList = new ExpandableListView(this); MyExpandableListAdapter myAdapter = new MyExpandableListAdapter(); myList.setAdapter(myAdapter); builder.setView(myList); AlertDialog dialog = builder.create(); dialog.show(); 仅剩下问题:如何为AlertDialog实现onClick侦听器? 通常我会在setItems()方法中执行此操作,但不使用setItems。 我在myList.setAdapter()之后添加了myList.setOnItemClickListener,但它被忽略了。 单击某个项目时没有任何反应: myList.setOnItemClickListener(new ListView.OnItemClickListener() { @Override public void onItemClick(AdapterView a, View v, int i, long l) { try { Toast.makeText(ExpandableList1.this, […]

如何validation在Android 2.1中输入的EditTextPreference的格式和值?

有没有人有示例代码来validation用户在首选项中输入的文字? 例如,我有一个EditTextPreference供用户输入电子邮件地址。 我想validation输入的电子邮件地址的格式,如果格式不正确,则popup警告对话框。 有人有任何示例代码吗? 谢谢