tab2.page.html 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <ion-header>
  2. <ion-toolbar>
  3. <ion-title>自律计时</ion-title>
  4. </ion-toolbar>
  5. </ion-header>
  6. <ion-content>
  7. <div class="timer-container">
  8. <!-- 计时器显示 -->
  9. <div class="timer-display">
  10. <h1>{{ currentTime }}</h1>
  11. </div>
  12. <!-- 活动类型选择 -->
  13. <div class="type-selector">
  14. <ion-segment [(ngModel)]="selectedType" *ngIf="!isTimerRunning">
  15. <ion-segment-button *ngFor="let type of activityTypes" [value]="type.id">
  16. <ion-icon [name]="type.icon"></ion-icon>
  17. <ion-label>{{ type.name }}</ion-label>
  18. </ion-segment-button>
  19. </ion-segment>
  20. </div>
  21. <!-- 控制按钮 -->
  22. <div class="timer-controls">
  23. <ion-button expand="block" (click)="startTimer()" *ngIf="!isTimerRunning" [disabled]="!selectedType">
  24. 开始计时
  25. </ion-button>
  26. <ion-button expand="block" color="danger" (click)="stopTimer()" *ngIf="isTimerRunning">
  27. 结束计时
  28. </ion-button>
  29. </div>
  30. </div>
  31. <!-- 历史记录 -->
  32. <div class="records-container">
  33. <h2 class="ion-padding">历史记录</h2>
  34. <ion-list>
  35. <ion-item *ngFor="let record of records">
  36. <ion-icon slot="start" [name]="getTypeIcon(record.type)"></ion-icon>
  37. <ion-label>
  38. <h2>{{ getTypeName(record.type) }}</h2>
  39. <p>{{ record.startTime | date:'yyyy-MM-dd HH:mm' }}</p>
  40. <p>时长: {{ formatDuration(record.duration) }}</p>
  41. </ion-label>
  42. </ion-item>
  43. </ion-list>
  44. </div>
  45. </ion-content>