Android-将日期输入文本视图

Android-将日期输入文本视图,android,android-date,Android,Android Date,首先,让我说,是的,我已经对此进行了大量研究,并使用了各种解决方案,但都不起作用 所以我想把昨天的日期放到文本视图中。我正在使用以下代码: Calendar cal = Calendar.getInstance(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MMMM/d"); String strDate = sdf.format(cal.getTime()); tvDate.setText(strDate); (我知道这会返回今天的

首先,让我说,是的,我已经对此进行了大量研究,并使用了各种解决方案,但都不起作用

所以我想把昨天的日期放到文本视图中。我正在使用以下代码:

Calendar cal = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MMMM/d");
String strDate = sdf.format(cal.getTime());
tvDate.setText(strDate);
(我知道这会返回今天的日期,但此时我只是想得到任何东西)

一旦我从上一个活动转到这个活动,它就会立即关闭。如果我将中间的3行和StEt文本注释为一个随机字符串,比如“BLA BLA”,则活动运行并正确显示。Android Studio没有显示任何错误,所以我不知道发生了什么

我在下面的帖子中尝试了所有的解决方案,都没有成功,所以我只能想象我缺少了一些配置。 1 - 2 - 3-

我也看过一些Youtube视频,但没有一个有答案


你能帮忙吗

我测试了你的代码,它对我来说运行良好,返回
2017/April/16
。确保类文件顶部的
import
语句正确无误。它们应该是:

import java.text.SimpleDateFormat;
import java.util.Calendar;
要获取昨天的日期,请添加以下行:

cal.add(Calendar.DATE, -1);

请检查下面的代码

import java.util.Date;
import java.util.Calendar;

public class Main{

public static void main(String ar[]){
Calendar cal  = Calendar.getInstance();

System.out.println("Today's date= "+cal.getTime());
//subtracting a day
cal.add(Calendar.DATE, -1);
System.out.println("Yesterday's date= "+cal.getTime());

}

}

我猜问题出在你的
SimpleDateFormat
中,你写了一个
d
,这是对的,因为这一天可能有两个数字。在Android监视器中,你应该有堆栈跟踪以查看引发了什么异常。请张贴,或提供更多关于你有此代码的活动的信息。就是这样!我的导入是
import android.icu.text.SimpleDateFormat;导入android.icu.util.Calendar