我有一个或多个动态创建的具有相同名称的 EditText。我根据从服务器获得的 Requirement 表的大小创建了这些 EditText。现在,当我单击 EditText 时,我正在调用 DatePickerDialog。所以在这里我想获取标签并根据标签设置我选择的日期。
在这里我不能使用setId。因为我已经将它用于 CheckBox。
所以如果我再做一次,我就会发生冲突。所以我想和 setTag 一起去。将为每个 EditText 设置标签,当我单击 EditText 的 onClick 时,我需要获取标签。我还需要在 onDateSet 函数中获取标签。这样我就可以得到EditText的位置。谁能告诉我如何自定义 DatePickerDialog?
for(int i =0;i<require.size();i++)
{
requirement = require.get(i);
date1 = new EditText(getActivity());
date1.setLayoutParams(params1);
date1.setWidth(1000);
date1.setHint("Date");
String datetag=new String();
datetag="rid" + requirement.r_id + "datetag";
date1.setTag(datetag);
date.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
DatePickerDialog dpd = new DatePickerDialog(context,
mDateSetListener, myear, mmonth, mday);
dpd.show();
}
});
}
private DatePickerDialog.OnDateSetListener mDateSetListener = new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
myear = year;
mmonth = monthOfYear + 1;
mday = dayOfMonth;
if (mmonth < 10) {
month = 0 + Integer.toString(mmonth);
} else {
month = Integer.toString(mmonth);
}
if (mday < 10) {
day = 0 + Integer.toString(mday);
} else {
day = Integer.toString(mday);
}
nextdate = (new StringBuilder().append(myear).append("-")
.append(month).append("-").append(day)).toString();
date.setText(nextdate);
}
}
};