現在の時刻を示すコードをHH:mm:ss
形式で実装しようとしています。私はそうすることができましたが、システム時間からまだ時間差があるようです。コードはFragmentに実装されており、次のとおりです。Android:TextViewの現在の時刻にタイムラグがあります
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_alarm_list, null);
tvCurrentTime = (TextView) view.findViewById(R.id.tvCurrentTime);
tvCurrentTime.setText("H");
timeHandler.sendEmptyMessage(0);
return view;
}
Handler timeHandler = new Handler() {
public void handleMessage(Message msg) {
runClock();
timeHandler.sendEmptyMessageDelayed(0, 1000);
}
};
private void runClock() {
Calendar calendar = Calendar.getInstance();
tvCurrentTime.setText(String.format("%02d:%02d:%02d",
calendar.get(Calendar.HOUR_OF_DAY),
calendar.get(Calendar.MINUTE),
calendar.get(Calendar.SECOND)));
}
タイムラグは約0.5〜1秒のようです。このコードを実行すると、スクリーンショットが表示されます。
を使用してみてください... 001、TextClockます。https:// developer.android.com/reference/android/widget/TextClock.htmlこれを試してください。 – zerocool