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();
我已经阅读了很多关于此的帖子,但我无法让它工作。 我需要一个 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();