我正在创建一个对话框警报,该警报将显示一个单选组,根据所选的选项,它将使用一个或另一个数组的内容填充列表。这些数组填充在主活动上,因此它们不为空。我的问题是尝试在对话框中填充列表,数组结果为空,我不知道如何将填充的值传递到那里。
这些是导致问题的行:
adapter = new populateListView(MainActivity.this, all_times_array, all_runtimes_array);
这是我的对话代码:
public void dialog_filter() {
final String[] grpname = {
"Today",
"This Month",
"This Year",
"All time"
};
AlertDialog.Builder alt_bld = new AlertDialog.Builder(this);
//alt_bld.setIcon(R.drawable.icon);
alt_bld.setTitle("See reports from ...");
alt_bld.setSingleChoiceItems(grpname, -1, new DialogInterface
.OnClickListener() {
public void onClick(DialogInterface dialog, int item) {
time_filter = item;
System.out.println(time_filter);
Toast.makeText(getApplicationContext(),
grpname[item] + " selected", Toast.LENGTH_SHORT).show();
switch (time_filter) {
case 3:
adapter = new populateListView(MainActivity.this, all_times_array, all_runtimes_array);
bannertext = "Total seizures:" + " " + total_seizures;
banner.setText(bannertext);
list.setAdapter(adapter);
break;
case 0:
adapter = new populateListView(MainActivity.this, today_times_array, today_runtimes_array);
bannertext = "Today seizures:" + " " + today_seizures;
banner.setText(bannertext);
list.setAdapter(adapter);
break;
case 1:
adapter = new populateListView(MainActivity.this, month_times_array, month_runtimes_array);
bannertext = "Month seizures:" + " " + month_seizures;
banner.setText(bannertext);
list.setAdapter(adapter);
break;
case 2:
adapter = new populateListView(MainActivity.this, year_times_array, year_runtimes_array);
bannertext = "Year seizures:" + " " + year_seizures;
banner.setText(bannertext);
list.setAdapter(adapter);
break;
}
dialog.dismiss();
}
});
AlertDialog alert = alt_bld.create();
alert.show();
以下是我的pupulateListView类的方法:
class populateListView extends ArrayAdapter <String>
{
Context context;
String [] times;
String [] runtimes;
populateListView(Context c,String [] tms, String [] rts)
{
super(c, seizure_list2,R.id.firstLine,tms);
this.context=c;
this.runtimes=rts;
this.times = tms;
}
@Override
public View getView(int position, View convertView, ViewGroup parent)
{
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View row = inflater.inflate(seizure_list2,parent,false);
TextView runtime_text = (TextView) row.findViewById(R.id.secondLine);
TextView time_text = (TextView) row.findViewById(R.id.firstLine);
time_text.setText(times[position]);
runtime_text.setText(runtimes[position]);
return row;
}
}
只是一个建议!使用单选按钮组创建布局文件,并将此布局设置为警报对话框
dialog.setContentView(R.layout.yourlayout);
之后,在布局中引用您的无线电组
RadioGroup youradiogroup = (RadioGroup) dialog.findViewById(R.id.youradiogroupID);
并获取所选项目的值
youradiogroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
public void onCheckedChanged(RadioGroup group,
int checkedId) {
if (checkedId == R.id.first_radiobutton) {
//do something}
else if (checkedId == R.id.second_radiobutton) {
//do something else }
}
});
希望它有帮助!
如何将数据从活动传递到对话框? 有关更多详细信息,请参阅下图:
访客详细信息 我在访问者活动中有一个对话框。当我点击图标,它将重定向到相机活动。然后点击Camera Activity中的Confirm按钮,将意图发送回前一个活动,即访客活动。问题是我应该如何将Camera活动的意图结果传递回Visitor活动中的对话框。意图数据应该放在Pass No Edit文本中。我使用的是材料对话框,没有任何附加到该对话框的片段。这一切都放在访客活动中。谁能帮帮我吗?谢谢
问题内容: 我正在开发一个网站,在该网站上,我在一个表中列出了来自数据库查询的一些预订,并带有来取消特定行上的预订,例如: 我的预订 最好的是,如果我可以使用弹出一条消息,询问用户是否确定要取消预订。我一直在尝试使其工作,但我一直坚持如何创建一个接受参数的jQuery函数,以便我可以替换 与 。 然后,该函数将打开对话框,并将参数10传递给对话框,以便如果用户单击“是”,它将发布href: 我已经
我想问一下如何将值从片段a传递到活动B,然后再传递回片段。我尝试使用bundle来传递值,但是它会给出错误的数据。 非常感谢。
我尝试使用 如有任何帮助,不胜感激,谢谢。
我正在尝试将3D-dulearray传递给另一个活动。我不知道为什么我得到NullpointerException?缺少什么? 主要活动 数据活动(reveiver) 而且我可以肯定的是,3d阵列已经在MainActivity中分配了。我已经测试过了! 如果有人对此有任何解决方案,并且可以回答为什么我得到NullPointerException,那将是很高兴的。 (编辑:NullpointerEx