<template>
  <view class="background">
    <!-- 人物图片 -->
    <image class="human slide-in" src="/static/information/girl_height/pictures/human.png"></image>

    <!-- 字体：你的身高是 -->
    <image class="height_text" src="/static/information/girl_height/pictures/height_text.png"></image>

    <!-- 身高选择窗口 -->
    <view class="weight_choice_window" @click="toggleHeightPicker">
      {{ height_number }} cm
    </view>

    <!-- 按钮图片 -->
    <image class="button" src="/static/information/girl_height/pictures/button.png" @click="goToWeightPage"></image>

    <!-- 身高选择轮播 -->
    <view class="height_picker" v-if="is_height_picker_visible">
      <view class="ruler" :style="{ transform: `translateY(-${currentHeightIndex * 100}px)` }"></view>

      <swiper :current="currentHeightIndex" @change="onHeightChange">
        <swiper-item v-for="(height, index) in heightOptions" :key="index">
          <view class="height_option">{{ height }} cm</view>
        </swiper-item>
      </swiper>

    </view>
  </view>
</template>



<script>
export default {
  data() {
    return {
      is_height_picker_visible: false, // 控制身高选择窗口的显示状态
      height_number: 160, // 初始身高为160cm
      heightOptions: Array.from({ length: 81 }, (_, i) => i + 150), // 150cm 到 230cm
      currentHeightIndex: 10 // 默认选择的索引
    };
  },
  methods: {
    toggleHeightPicker() {
      this.is_height_picker_visible = !this.is_height_picker_visible; // 切换显示状态
    },
    onHeightChange(event) {
      this.currentHeightIndex = event.detail.current; // 更新当前身高索引
      this.height_number = this.heightOptions[this.currentHeightIndex]; // 更新显示的身高
    },
    goToWeightPage() {
      uni.navigateTo({
        url: '/pages/information/girl_weight', // 跳转到 girl_weight 界面
      });
    },
  },
};
</script>






<style lang="scss">

.background {
  background-image: url("@/static/information/girl_height/pictures/background.png");
  background-size: cover;
  background-position: center;
  height: 100vh;
  display: flex;
  flex-direction: column; /* 纵向排列 */
  align-items: center; /* 水平居中 */
  justify-content: flex-end; /* 使内容向底部对齐 */
  position: relative; /* 为绝对定位子元素提供相对定位的上下文 */
}

.human {
  position: absolute; /* 绝对定位 */
  top: 12%;
  left: 50%;
  width: 65%;
  height: 40%;
  transform: translateX(100%); /* 初始位置在右侧 */
  animation: slide-in 1s forwards; /* 添加动画 */
}

.height_text {
  position: absolute; /* 绝对定位 */
  transform: translateX(-50%); /* 通过 translateX 使其居中 */
  top: 60%;
  left: 50%;
  width: 40%;
  height: 3%;
}

.weight_choice_window {
  position: absolute; /* 绝对定位 */
  transform: translateX(-50%); /* 通过 translateX 使其居中 */
  top: 60%;
  left: 50%;
  width: 80%;
  height: 50px;
  line-height: 50px;
  text-align: center;
  margin: 50px auto;
  font-size: 20px;
  background-color: #86A2EF;
  border-top: 2px solid #4F7CEC;
  border-bottom: 2px solid #4F7CEC;
}

.button {
  position: absolute; /* 绝对定位 */
  width: 90%;
  height: 13%;
  bottom: 1%; /* 距离底部 20% 的位置 */
  left: 50%; /* 水平居中 */
  transform: translateX(-50%); /* 通过 translateX 使其居中 */
}

.height_picker {
  position: absolute; /* 绝对定位 */
  top: 70%; /* 根据需要调整位置 */
  left: 50%;
  transform: translateX(-50%);
  width: 80%;
}

.height_option {
  font-size: 24px;
  text-align: center;
  line-height: 100px; /* 根据需要调整高度 */
}

/* 动画定义 */
@keyframes slide-in {
  0% {
    transform: translateX(100%); /* 从右侧开始 */
  }
  100% {
    transform: translateX(-50%); /* 移动到屏幕中心 */
  }
}
</style>
