Изменение TextView Android, пока время меняется
Я новичок в Android, и я пытаюсь узнать некоторые новые вещи.
Я хочу изменить свой textview
когда время изменится. Например, если между 12:00 и 12:00, то должно появиться "Доброе утро", в противном случае должно появиться "Добрый вечер".
код, который я попробовал, как показано ниже..
SimpleDateFormat df = new SimpleDateFormat("HH:mm:ss");
String formattedDate = df.format(c.getTime());
Toast.makeText(this, formattedDate, Toast.LENGTH_SHORT).show();
if(formattedDate.equals("00:00:00")&&formattedDate.equals("12:00:00")){
textView.setText("good morning");
}else{
textView.setText("good Evening");
}
Проблема с этим кодом заключается в том, что если вы откроете это приложение в 12:00 или 12:00, оно покажет текст "Доброе утро", а если нет, то оно покажет добрый вечер… я хочу, чтобы текст показывал "Доброе утро с 12:00 до 12 вечера и в остальное время должно показывать Добрый вечер..
если вы можете помочь, то спасибо заранее..:)
3 ответа
Решение
Проверьте ниже код
public static String Convert24to12(String time)
{
String convertedTime ="";
try {
SimpleDateFormat displayFormat = new SimpleDateFormat("hh:mm a");
SimpleDateFormat parseFormat = new SimpleDateFormat("HH:mm:ss");
Date date = parseFormat.parse(time);
convertedTime=displayFormat.format(date);
System.out.println("convertedTime : "+convertedTime);
} catch (final ParseException e) {
e.printStackTrace();
}
return convertedTime;
//Output will be 10:23 PM
}
здесь вы просто проверьте это условие
if(Convert24to12(formattedDate).contains("AM")){
textView.setText("good morning");
}else{
textView.setText("good Evening");
}
Calendar c = Calendar.getInstance();
SimpleDateFormat df = new SimpleDateFormat("HH:mm:ss a");
String formattedDate = df.format(c.getTime());
if (formattedDate.contains("AM")) {
textView.setText("Good Morning");
} else {
textView.setText("Good Evening");
}
Calendar calendar = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("HH");
int temp = Integer.parseInt(sdf.format(calendar.getTimeInMillis()));
if(temp > 12)
{
System.out.println("Good Evening");
}
else
{
System.out.println("Good Morning");
}