java - android studio 如何只显示日期而不显示时间

标签 java

@Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
        Date date = (Date) getArguments().getSerializable(ARG_DATE);

        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        int year = calendar.get(Calendar.YEAR);
        int month = calendar.get(Calendar.MONTH);
        int day = calendar.get(Calendar.DAY_OF_MONTH);

        View v = LayoutInflater.from(getActivity())
            .inflate(R.layout.dialog_date, null);

        mDatePicker = (DatePicker) v.findViewById(R.id.dialog_date_picker);
        mDatePicker.init(year, month, day, null);

        return new AlertDialog.Builder(getActivity())
            .setView(v)
            .setTitle(R.string.date_picker_title)
            .setPositiveButton(android.R.string.ok,
                    new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, 
                                          int      which) {
                             int year = mDatePicker.getYear();
                            int month = mDatePicker.getMonth();
                            int day = mDatePicker.getDayOfMonth();
                            Date date = new GregorianCalendar(year, 
                                                  month,  day).getTime(); 

                            sendResult(Activity.RESULT_OK, date);
                        }
                    })
            .setNegativeButton(android.R.string.cancel, null)

            .create();
}

我觉得 getTime 是什么 我的问题是,但我无法解决 我只想显示日期 根本不是时间,但它不让我这么做。它总是以 MM DD nn hhmmss zzz 的形式返回。我想要的只是显示的时间。这是我想显示它的地方

 private TextView mTitleTextView;
        private TextView mDateTextView;
        private Crime mCrime;

        public CrimeHolder(LayoutInflater inflater, ViewGroup parent) {
            super(inflater.inflate(R.layout.list_item_crime, parent, false));
            itemView.setOnClickListener(this);
            itemView.setOnLongClickListener(new View.OnLongClickListener() {
                @Override
                public boolean onLongClick(View v) {
                    return false;
                }
            });

            mTitleTextView = (TextView) itemView.findViewById
  (R.id.crime_tile);
            mDateTextView = (TextView) itemView.findViewById
  (R.id.crime_date);


        }
            public void bind(Crime crime) {
                mCrime = crime;
                mTitleTextView.setText(mCrime.getTitle());
                mDateTextView.setText(mCrime.getDate().toString());


            }

在我的 ListView 中,它始终显示带有时间的格式,我只需要日、月、月中的某一天和年份。不确定这是否有意义,但是有人有什么想法吗?

最佳答案

这就是我处理日期的方式:

public static String DATE_FORMAT_NOW="MMM d yyyy"

final SimpleDateFormat sdf = new SimpleDateFormat(DATE_FORMAT_NOW);
final Calendar cal = Calendar.getInstance();
final String timestamp = "Last Modified: " + sdf.format(cal.getTime());

您可以根据需要更改 DATE_FORMAT_NOW 这种特殊格式会将日期设置为:2017 年 7 月 15 日

SimpleDateFormat 可能有 lint 警告,如果需要,您可以添加 SuppressLint。我这样做从来没有遇到过任何问题

关于java - android studio 如何只显示日期而不显示时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45120383/

相关文章:

java - 使用二维数组查找列中的最大数字

java - 我应该使用 Java 8 Streams Api 来组合两个集合吗?

java - 使用 Apache Tomcat 模拟网络延迟?

java - 如何在sql中正确使用两个表之间的连接我有一个异常(exception)

java - API 需要 2 分钟加载数据。想要使用缓存

java - 解析错误;我已经尝试过,但无法弄清楚出了什么问题?

java - 多个类(class)的绘画

java - Play框架2.4迁移,org.apache.commons.codec.digest的NoSuchMethodError

java - 为仅在第二个 fragment 之后显示的页面查看器添加指示器?

java - 在java中扩展内部类