Android获取当前日期并在TextView中显示它

use*_*748 10 android date

我不知道下面的代码有什么问题 -

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    TextView tv = (TextView) findViewById(R.id.textView1);

    String dt;
    Date cal = (Date) Calendar.getInstance().getTime();
    dt = cal.toLocaleString();
    tv.setText(dt.toString());

}
Run Code Online (Sandbox Code Playgroud)

Roy*_*ley 30

我建议:

long date = System.currentTimeMillis(); 

SimpleDateFormat sdf = new SimpleDateFormat("MMM MM dd, yyyy h:mm a");
String dateString = sdf.format(date);   
tvDisplayDate.setText(dateString);
Run Code Online (Sandbox Code Playgroud)

以下面的示例格式显示

Mon Jan 5, 2009 4:55 PM

您可以使用任何您想要的格式 - 可以在Oracle找到选项


Sub*_*ddy 15

使用此代码:

tvDisplayDate = (TextView) findViewById(R.id.tvDate);


    final Calendar c = Calendar.getInstance();
    yy = c.get(Calendar.YEAR);
    mm = c.get(Calendar.MONTH);
    dd = c.get(Calendar.DAY_OF_MONTH);

    // set current date into textview
    tvDisplayDate.setText(new StringBuilder()
    // Month is 0 based, just add 1
            .append(yy).append(" ").append("-").append(mm + 1).append("-")
            .append(dd));
Run Code Online (Sandbox Code Playgroud)


Rag*_*dan 5

以下解决方案可能会有所帮助-

final Calendar c = Calendar.getInstance();
mYear = c.get(Calendar.YEAR);
mMonth = c.get(Calendar.MONTH);
mDay = c.get(Calendar.DAY_OF_MONTH);

updateDisplay();

private void updateDisplay() {
    mDateDisplay.setText(
        new StringBuilder()
        // Month is 0 based so add 1
        .append(mMonth + 1).append("-")
        .append(mDay).append("-")
        .append(mYear).append(" "));
}
Run Code Online (Sandbox Code Playgroud)