Android studio - Textview 显示日期

Iva*_*van 2 java android textview android-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);
}
Run Code Online (Sandbox Code Playgroud)

问题是我得到的结果是:格林威治标准时间 10 月 28 日星期五 19:57:37

我只需要它来显示当前日期,如 28.11.2016。

我该怎么做呢 ?

我试过另一种方法

    String trenutniDatum = DateFormat.getDateTimeInstance().format(new Date());
    datumprikaz textView = (datumprikaz) findViewById(R.id.datumprikaz);
    datumprikaz.setText(trenutniDatum);
Run Code Online (Sandbox Code Playgroud)

但是 setText 是红色的并且不起作用。

我怎么得到这个?28.11.2016 在 id 为 datumprikaz 的 textView 中

Rea*_*l73 8

您需要的只是自定义您的日期。这是您的 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);
}
Run Code Online (Sandbox Code Playgroud)

you can format a date in many, many different ways. Here are some of the most common custom date formats.

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

Hope this will help.