<EditText
android:id="@+id/dob"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:inputType="date"
android:hint="Date Of Birth"
android:textSize="12sp"
android:drawableRight="@drawable/ic_perm_contact_calendar_black_24dp"
android:drawableTint="@android:color/holo_orange_light"/>
Java代码:
dob.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final Calendar myCalendar = Calendar.getInstance();
DatePickerDialog.OnDateSetListener date = new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
// TODO Auto-generated method stub
myCalendar.set(Calendar.YEAR, year);
myCalendar.set(Calendar.MONTH, monthOfYear);
myCalendar.set(Calendar.DAY_OF_MONTH, dayOfMonth);
String myFormat = "dd-MMM-yyyy"; // your format
SimpleDateFormat sdf = new SimpleDateFormat(myFormat, Locale.getDefault());
dob.setText(sdf.format(myCalendar.getTime()));
}
};
new DatePickerDialog(PersonalDetailsFormActivity.this, date, myCalendar.get(Calendar.YEAR), myCalendar.get(Calendar.MONTH), myCalendar.get(Calendar.DAY_OF_MONTH)).show();
}
});
我已经通过许多在线链接,但都显示如何在edittext中设置日期,但我想要的是相反的。edittext中有一个值,datepicker对话框将打开,该日期将作为预选值。
您可以使用参数调用datePickerDialog,
DatePickerDialog dialog = new DatePickerDialog(this, mDateSetListener, year, month, day);
这里的月份、日期和年份是整数。
找到下面的示例代码:
public class MainActivity extends AppCompatActivity {
private EditText chooseDate;
private DatePickerDialog.OnDateSetListener mDateSetListener;
final Calendar myCalendar = Calendar.getInstance();
private Date date;
SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy", Locale.getDefault());
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
chooseDate = (EditText) findViewById(R.id.choose_date);
chooseDate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mDateSetListener = new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
// TODO Auto-generated method stub
myCalendar.set(Calendar.YEAR, year);
myCalendar.set(Calendar.MONTH, monthOfYear);
myCalendar.set(Calendar.DAY_OF_MONTH, dayOfMonth);
chooseDate.setText(formatter.format(myCalendar.getTime()));
}
};
try {
if (chooseDate.getText().toString().isEmpty()) {
date = new Date();
} else {
date = formatter.parse(chooseDate.getText().toString());
}
Calendar calendar = new GregorianCalendar();
calendar.setTime(date);
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH);
int day = calendar.get(Calendar.DAY_OF_MONTH);
new DatePickerDialog(MainActivity.this, mDateSetListener, year, month, day).show();
} catch (ParseException e) {
Log.d(TAG, "ParseException" + e);
}
}
});
}
我有一个带有的自定义对话框。在我的上,我有一个按钮,当我按下它时,对话框就会显示出来,我可以从中选择日期。我希望选定的日期显示在我的中的上。我的代码如下: 这是我的主上包含的对话框的代码: 我从中获取日、月和年,并使用 在我的片段中,我使用下面的代码调用我的对话框: 当我运行我的应用程序时,我在以下行中得到一个nullPointerException: 我做错了什么?提前致谢
当单击时,我使用这个问题来获取。请注意,我正在将代码放在一个片段中。我改变了以下内容: 在settime.java中添加了:Context 它告诉我:构造函数没有定义。 我试着把它改成: 当试图运行应用程序时,我会遇到以下错误 appoinfragment.java settime.java
我正试图从回收器视图图像点击打开一个对话框...该对话框包含一个视图页来创建一个滑动视图库.. 错误>>> E/AndroidRuntime:致命异常:main process:com.example.cosmic.zumi_test,pid:22289 java.lang.nullpointerException:试图在Android.support.v4的Android.support.v4的
问题内容: 我正在开发一个程序,该程序可以从文本文件加载和保存数据,并且正在询问用户加载和保存JFileChooser的文件名。 这个问题与 保存 对话框有关:。然后,用户可以在没有任何警告的情况下覆盖现有文件,这 将是一个问题 。 关于如何解决此问题的任何建议?我一直在寻找某种方法或选项,但没有发现任何东西。 提前致谢。 问题答案: 感谢您提供答案,但是我发现了另一个解决方法,可以用这种方法覆盖
我有一个DialogFragment,它有一个包含的视图。每次我显示对话框时,edittext就会有焦点,键盘就会出现。 我怎样才能阻止它自动出现? 这是我的布局
问题内容: 我将要做出一个按钮来采取行动,并将数据保存到数据库中。 用户单击按钮后,我希望JavaScript警报提供“是”和“取消”选项。如果用户选择“是”,则数据将被插入数据库,否则将不执行任何操作。 如何显示这样的对话框? 问题答案: 您可能正在寻找,显示提示并根据用户的决定返回或: