Android studio - Textview 放映日期

Android studio - Textview show date

我已经阅读了很多关于此的帖子,但我无法让它工作。 我需要一个 textView (id - datumprikaz) 来显示当前日期,如下所示:28.11.2016.

我已经使用这种方法在 java:

中添加了日期
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    TextView dateView = (TextView)findViewById(R.id.datumprikaz);
    setDate(dateView);

}

public void setDate (TextView view){
    String str = String.format("%tc", new Date());
    view.setText(str);
}

问题是我得到的结果是:10 月 28 日星期五 19:57:37 GMT

我只需要它来显示当前日期,例如 2016 年 11 月 28 日。

我该怎么做?

我已经用

尝试了另一种方法
    String trenutniDatum = DateFormat.getDateTimeInstance().format(new Date());
    datumprikaz textView = (datumprikaz) findViewById(R.id.datumprikaz);
    datumprikaz.setText(trenutniDatum);

但是 setText 是红色的,无法正常工作。

我如何得到这个? 2016 年 11 月 28 日在 ID 为 datumprikaz

的文本视图中

您可以使用 SimpleDateFormat

TextView textView = (TextView)findViewById(R.id.datumprikaz);
SimpleDateFormat dateFormatter = new SimpleDateFormat("dd.MM.yyyy", Locale.getDefault());
textView.setText(dateFormatter.format(trenutniDatum));

试试这个

public void setDate (TextView view) {
String str = new SimpleDateFormat("dd.MM.yyyy", Locale.getDefault()).format(new Date());
view.setText(str); }

您需要的只是自定义您 date.Here 是 setDate 方法的简单解决方案。

public void setDate (TextView view){

    Date today = Calendar.getInstance().getTime();//getting date
    SimpleDateFormat formatter = new SimpleDateFormat("dd.MM.yyyy");//formating according to my need
    String date = formatter.format(today);
    view.setText(date);
}

您可以用很多很多不同的方式来格式化日期。以下是一些最常见的自定义日期格式。

yyyy-MM-dd results in 2009-09-06

yyyyMMdd results in 20090906

EEE MMM dd hh:mm:ss yyyy results in Sun Sep 06 08:32:51 2009

希望这会有所帮助。

内置的TextClock非常方便显示格式化的date/time信息,无需关注不断更新TextView的内容

<android.widget.TextClock
    android:id="@+id/datumprikaz"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:format12Hour="dd.MM.yyyy"
    android:format24Hour="@null"
    />

SimpleDateFormat 是一个具体的 class,用于以区域设置敏感的方式格式化和解析日期。它允许格式化(日期 → 文本)、解析(文本 → 日期)和规范化。

示例:

import java.text.SimpleDateFormat;

import java.util.Calendar;

///

Calendar calendar;

calendar = Calendar.getInstance();

/////

SimpleDateFormat simpleDateFormat;

simpleDateFormat = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss aaa z");

// For your case : simpleDateFormat = new SimpleDateFormat("dd.MM.yyyy");

////

String dateTime;

dateTime = simpleDateFormat.format(calendar.getTime()).toString();