2016-10-28 41 views
0

我已閱讀了很多關於此的帖子,但我無法讓它工作。 我需要一個textView(id - datumprikaz)來顯示當前日期是這樣的:28.11.2016。Android工作室 - Textview顯示日期

我已經成功地使用加在我的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

我只需要它顯示當前日期,如28.11.2016。

我該怎麼做?

我已經試過另一種方法與

String trenutniDatum = DateFormat.getDateTimeInstance().format(new Date()); 
    datumprikaz textView = (datumprikaz) findViewById(R.id.datumprikaz); 
    datumprikaz.setText(trenutniDatum); 

不過的setText爲紅色,將無法正常工作。

我該如何得到這個? 2016年11月28日與ID datumprikaz

回答

0

你所需要的只是你定製是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); 
} 

可以格式化在很多很多不同的方式的日期。以下是一些最常用的自定義日期格式。在2009-09-06

YYYYMMDD結果

YYYY-MM-DD導致20090906

EEE MMM DD HH:MM:SS YYYY結果在太陽06九月8時32分51秒2009

希望這會有所幫助。

+0

TextView datumprikaz =(TextView)findViewById(R.id.datumprikaz); Date danas = new Date(); //這會及時創建一個代表這個實例的日期。 SimpleDateFormat sdf = new SimpleDateFormat(「dd.MM.yyyy」); String novDatum = sdf.format(danas); datumprikaz.setText(novDatum); 這工作,謝謝! – Ivan

+0

隨時:)不要忘記請upvote – Real73

0

一個TextView可以使用SimpleDateFormat的

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

textView爲紅色,顯示無法解析符號。 – Ivan

+0

我用textView綁定更新了我的答案。你可以檢查它。 – okarakose

+0

真棒,現在它顯示的日期是正確的,但問題是,日期是:25.01.1970 出於某種原因。 – Ivan

0

試試這個

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