上传Android项目

This commit is contained in:
pengxiaolong
2025-11-26 16:47:15 +08:00
commit be276ae65d
209 changed files with 59142 additions and 0 deletions

View File

@@ -0,0 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<!-- 页面内容区域:用于切换 Fragment -->
<androidx.fragment.app.FragmentContainerView
android:id="@+id/nav_host_fragment"
android:name="androidx.navigation.fragment.NavHostFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:navGraph="@navigation/nav_graph"
app:defaultNavHost="true" />
<!-- 底部导航栏 -->
<com.google.android.material.bottomnavigation.BottomNavigationView
android:id="@+id/bottom_nav"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:background="@android:color/white"
app:menu="@menu/menu_bottom_nav"
app:itemIconTint="@null"
app:itemTextColor="@color/nav_text_color"/>
</androidx.coordinatorlayout.widget.CoordinatorLayout>

View File

@@ -0,0 +1,198 @@
<!-- 引导页 --><androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="match_parent"
android:layout_height="218dp"
android:background="@drawable/activity_onboarding_bg"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_horizontal"
android:orientation="vertical"
android:padding="16dp"
app:layout_constraintStart_toStartOf="parent">
<!-- 跳过 -->
<LinearLayout
android:id="@+id/ll_skip"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="end"
android:orientation="horizontal">
<TextView
android:id="@+id/tv_skip"
android:layout_width="54dp"
android:layout_height="27dp"
android:layout_gravity="center"
android:background="@drawable/tv_skip_bg"
android:gravity="center"
android:text="Skip"
android:textColor="#1B1F1A"
android:textSize="12sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" />
</LinearLayout>
<!-- 标题 -->
<TextView
android:id="@+id/tv_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="30dp"
android:elevation="2dp"
android:gravity="center"
android:text="Please select your gender"
android:textColor="#1B1F1A"
android:textSize="24sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<ImageView
android:id="@+id/iv_avatar"
android:layout_width="219dp"
android:layout_height="99dp"
android:layout_marginTop="-80dp"
android:elevation="1dp"
android:src="@drawable/pleaseselectyourgender_bg" />
<!---->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="12dp"
android:orientation="vertical">
<ImageView
android:id="@+id/iv_avatar"
android:layout_width="109dp"
android:layout_height="140dp"
android:layout_marginStart="20dp"
android:elevation="1dp"
android:src="@drawable/male" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="87dp"
android:layout_marginTop="-87dp"
android:background="@drawable/gender_background"
android:gravity="end"
android:orientation="horizontal">
<TextView
android:id="@+id/tv_male"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginEnd="60dp"
android:text="Male"
android:textColor="#1B1F1A"
android:textSize="20sp" />
</LinearLayout>
</LinearLayout>
<!---->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="12dp"
android:gravity="end"
android:orientation="vertical">
<ImageView
android:id="@+id/iv_avatar"
android:layout_width="109dp"
android:layout_height="140dp"
android:layout_marginEnd="20dp"
android:elevation="1dp"
android:gravity="end"
android:src="@drawable/female" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="87dp"
android:layout_marginTop="-87dp"
android:background="@drawable/gender_background"
android:orientation="horizontal">
<TextView
android:id="@+id/tv_male"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginStart="60dp"
android:text="Female"
android:textColor="#1B1F1A"
android:textSize="20sp" />
</LinearLayout>
</LinearLayout>
<!-- 第三性别 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="97dp"
android:layout_marginTop="12dp"
android:orientation="vertical">
<ImageView
android:id="@+id/iv_avatar"
android:layout_width="57dp"
android:layout_height="72dp"
android:layout_marginStart="12dp"
android:elevation="1dp"
android:src="@drawable/question_mark_two" />
<ImageView
android:id="@+id/iv_avatar"
android:layout_marginTop="-17dp"
android:layout_width="36dp"
android:layout_height="41dp"
android:layout_marginStart="12dp"
android:elevation="1dp"
android:layout_gravity="end"
android:src="@drawable/question_mark_one" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="87dp"
android:layout_marginTop="-87dp"
android:background="@drawable/gender_background"
android:gravity="center"
android:orientation="horizontal">
<TextView
android:id="@+id/tv_male"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="The third gender"
android:textColor="#1B1F1A"
android:textSize="20sp" />
</LinearLayout>
</LinearLayout>
<TextView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1" />
<TextView
android:id="@+id/tv_description"
android:layout_width="match_parent"
android:layout_height="59dp"
android:text="Turn on the keyboard"
android:layout_gravity="bottom"
android:gravity="center"
android:textColor="#FFFFFF"
android:background="@drawable/turn_keyboard_btn_bg"
android:textSize="16sp"/>
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -0,0 +1,305 @@
<androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/rootCoordinator"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F6F7FB"
tools:context=".ui.home.HomeFragment">
<!-- 内容 -->
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
android:overScrollMode="never">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<!-- recharge背景 -->
<ImageView
android:layout_width="match_parent"
android:layout_height="224dp"
android:src="@drawable/recharge_bg"
android:scaleType="fitXY"
android:adjustViewBounds="true" />
<!-- 关闭按钮 -->
<FrameLayout
android:layout_width="46dp"
android:layout_height="46dp"
android:layout_marginTop="-198dp">
<ImageView
android:id="@+id/iv_close"
android:layout_width="26dp"
android:layout_height="26dp"
android:layout_gravity="center"
android:src="@drawable/recharge_close"
android:rotation="180"
android:scaleType="fitCenter" />
</FrameLayout>
<!-- vip -->
<ImageView
android:id="@+id/iv_close"
android:layout_width="321dp"
android:layout_height="269dp"
android:layout_marginStart="24dp"
android:elevation="1dp"
android:src="@drawable/vip_two"/>
<!-- 权益背景 -->
<ImageView
android:id="@+id/iv_close"
android:layout_width="match_parent"
android:layout_height="391dp"
android:elevation="2dp"
android:layout_marginTop="-198dp"
android:src="@drawable/recharge_equity_bg"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="-380dp"
android:elevation="3dp"
android:padding="16dp"
android:orientation="vertical">
<TextView
android:id="@+id/member"
android:layout_marginTop="28dp"
android:layout_width="290dp"
android:layout_height="wrap_content"
android:textSize="18sp"
android:textStyle="bold"
android:textColor="#1B1F1A"
android:layout_gravity="center_horizontal"
android:text="Become A Member Of LOVE KEY" />
<TextView
android:id="@+id/Unlock"
android:layout_marginTop="3dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="14sp"
android:textColor="#1B1F1A"
android:layout_gravity="center_horizontal"
android:text="Unlock all functions" />
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp">
<ImageView
android:id="@+id/imgLeft"
android:layout_width="150dp"
android:layout_height="113dp"
android:scaleType="fitXY"
android:src="@drawable/recharge_wireless_sub_ai_dialogue"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintBottom_toBottomOf="parent"/>
<ImageView
android:id="@+id/imgRight"
android:layout_width="150dp"
android:layout_height="109dp"
android:scaleType="fitXY"
android:src="@drawable/recharge_personalized_keyboard"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintBottom_toBottomOf="parent"/>
</androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp">
<ImageView
android:id="@+id/imgLeft"
android:layout_width="150dp"
android:layout_height="122dp"
android:scaleType="fitXY"
android:src="@drawable/recharge_chat_persona"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintBottom_toBottomOf="parent"/>
<ImageView
android:id="@+id/imgRight"
android:layout_width="150dp"
android:layout_height="115dp"
android:scaleType="fitXY"
android:src="@drawable/recharge_emotional_counseling"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintBottom_toBottomOf="parent"/>
</androidx.constraintlayout.widget.ConstraintLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="16dp"
android:gravity="center_horizontal">
<!-- 卡片 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="75dp"
android:orientation="horizontal"
android:background="@drawable/recharge_card_bg"
android:gravity="center_vertical">
<!-- 左侧文字区域 -->
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginStart="16dp"
android:orientation="vertical">
<!-- 标题Monthly Subscription -->
<TextView
android:id="@+id/tvTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Monthly Subscription"
android:textSize="14sp"
android:textColor="#1B1F1A" />
<!-- 价格区域:新价格 + 划线旧价格 -->
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="4dp">
<!-- 当前价格 -->
<TextView
android:id="@+id/tvPrice"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="$4.49"
android:textSize="20sp"
android:textStyle="bold"
android:textColor="#000000" />
<!-- 旧价格(划线) -->
<TextView
android:id="@+id/tvOldPrice"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:text="$4.49"
android:textSize="20sp"
android:textColor="#b3b3b3" />
</LinearLayout>
</LinearLayout>
<!-- 右侧选中 -->
<ImageView
android:id="@+id/ivCheck"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_marginEnd="16dp"
android:src="@drawable/unchecked"
android:scaleType="centerInside" />
</LinearLayout>
<!-- ··························· -->
</LinearLayout>
<!-- 评论 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="16dp"
android:gravity="center_vertical">
<!-- 卡片 -->
<LinearLayout
android:layout_width="204dp"
android:layout_height="115dp"
android:background="@drawable/settings"
android:orientation="vertical"
android:padding="10dp">
<!-- 头像昵称 -->
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<de.hdodenhof.circleimageview.CircleImageView
android:layout_width="24dp"
android:layout_height="24dp"
android:src="@drawable/bg" />
<TextView
android:id="@+id/tvNickname"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="6dp"
android:text="Nickname"
android:singleLine="true"
android:ellipsize="end"
android:maxLines="1"
android:textSize="14sp"
android:textColor="#1B1F1A" />
</LinearLayout>
<!-- 五星好评 -->
<ImageView
android:id="@+id/ivStar"
android:layout_width="77dp"
android:layout_height="10dp"
android:layout_marginTop="8dp"
android:src="@drawable/five_star_review"
android:scaleType="fitXY" />
<!-- 评论内容 -->
<TextView
android:id="@+id/tvComment"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="I highly recommend this APP. It taught me how to chat"
android:ellipsize="end"
android:maxLines="2"
android:textSize="10sp"
android:textColor="#1B1F1A" />
</LinearLayout>
</LinearLayout>
<!-- 按钮 -->
<LinearLayout
android:id="@+id/rechargeButton"
android:layout_marginTop="24dp"
android:layout_width="343dp"
android:layout_height="51dp"
android:layout_gravity="center_horizontal"
android:gravity="center"
android:background="@drawable/button_bg"
android:elevation="4dp"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="15sp"
android:textStyle="bold"
android:gravity="center"
android:textColor="#1B1F1A"
android:text="Recharge now" />
</LinearLayout>
<!-- 协议 -->
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="17dp"
android:textSize="10sp"
android:text="By clicking &quot;pay&quot;, you indicate your agreement to the"
android:textColor="#1B1F1A"
android:gravity="center_horizontal"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="4dp"
android:textSize="10sp"
android:text="《Embership Agreement》"
android:textColor="#02BEAC"
android:gravity="center_horizontal" />
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</androidx.coordinatorlayout.widget.CoordinatorLayout>

View File

@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="@drawable/keyboard_background"
android:id="@+id/keyboard_root"
android:gravity="center"
android:padding="16dp">
<!-- 暂时空的 AI 键盘区域 -->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="AI 键盘功能区"
android:textColor="#A9A9A9"
android:textSize="16sp"/>
</LinearLayout>

View File

@@ -0,0 +1,210 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.core.widget.NestedScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/scrollContent"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="15dp">
<!-- 排名前3 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:gravity="center_horizontal"
android:orientation="horizontal">
<!-- 第2名 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:layout_marginTop="18dp"
android:layout_weight="1"
android:orientation="vertical">
<de.hdodenhof.circleimageview.CircleImageView
android:layout_width="67dp"
android:layout_height="67dp"
android:elevation="4dp"
android:src="@drawable/bg"
app:civ_border_color="#DFF346"
app:civ_border_width="2dp" />
<ImageView
android:id="@+id/backgroundImage"
android:layout_width="96dp"
android:layout_height="148dp"
android:layout_marginTop="-33dp"
android:adjustViewBounds="true"
android:elevation="1dp"
android:scaleType="fitXY"
android:src="@drawable/second_place" />
<TextView
android:layout_width="60dp"
android:layout_height="28dp"
android:background="@drawable/round_bg_two"
android:gravity="center"
android:text="+"
android:textColor="#6EA0EB"
android:textSize="20dp"
android:textStyle="bold" />
</LinearLayout>
<!-- 第一名 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_horizontal"
android:orientation="vertical">
<de.hdodenhof.circleimageview.CircleImageView
android:layout_width="67dp"
android:layout_height="67dp"
android:elevation="4dp"
android:src="@drawable/bg"
app:civ_border_width="2dp"
app:civ_border_color="#DFF346" />
<ImageView
android:id="@+id/backgroundImage"
android:layout_marginTop="-33dp"
android:layout_width="96dp"
android:layout_height="148dp"
android:elevation="1dp"
android:src="@drawable/first_place"
android:scaleType="fitXY"
android:adjustViewBounds="true" />
<TextView
android:layout_width="60dp"
android:layout_height="28dp"
android:gravity="center"
android:text="+"
android:textSize="20dp"
android:textStyle="bold"
android:textColor="#F0C729"
android:background="@drawable/round_bg_one" />
</LinearLayout>
<!-- 第三名 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginTop="18dp"
android:gravity="center_horizontal"
android:orientation="vertical">
<de.hdodenhof.circleimageview.CircleImageView
android:layout_width="67dp"
android:layout_height="67dp"
android:elevation="4dp"
android:src="@drawable/bg"
app:civ_border_width="2dp"
app:civ_border_color="#DFF346" />
<ImageView
android:id="@+id/backgroundImage"
android:layout_marginTop="-33dp"
android:layout_width="96dp"
android:layout_height="148dp"
android:elevation="1dp"
android:src="@drawable/third_place"
android:scaleType="fitXY"
android:adjustViewBounds="true" />
<TextView
android:layout_width="60dp"
android:layout_height="28dp"
android:gravity="center"
android:text="+"
android:textSize="20dp"
android:textStyle="bold"
android:textColor="#FFD9C4"
android:background="@drawable/round_bg_three" />
</LinearLayout>
</LinearLayout>
<!-- 排名靠后 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="1000dp"
android:layout_gravity="center_horizontal"
android:gravity="center_horizontal"
android:orientation="horizontal">
<!-- 内容卡片 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="90dp"
android:layout_marginTop="20dp"
android:layout_weight="1"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="10dp"
android:layout_weight="1"
android:text="4"
android:textSize="14sp"
android:textColor="#1B1F1A"
/>
<de.hdodenhof.circleimageview.CircleImageView
android:layout_width="67dp"
android:layout_height="67dp"
android:layout_weight="1"
android:layout_marginEnd="10dp"
android:elevation="4dp"
android:src="@drawable/bg"/>
<LinearLayout
android:layout_width="140dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
<TextView
android:layout_width="140dp"
android:layout_height="wrap_content"
android:singleLine="true"
android:ellipsize="end"
android:maxLines="1"
android:text="NameNameNameNameNameNameNameNameNameNameName"
android:textStyle="bold"
android:textSize="16sp"
android:textColor="#1B1F1A" />
<TextView
android:layout_width="140dp"
android:layout_height="wrap_content"
android:ellipsize="end"
android:maxLines="2"
android:text="nullnullnullnullnullnullnullnullnullnullnullvnullnullnullnullnull"
android:textSize="12sp"
android:textColor="#9A9A9A" />
</LinearLayout>
<TextView
android:layout_width="56dp"
android:layout_height="38dp"
android:gravity="center"
android:layout_weight="1"
android:text="+"
android:textSize="14sp"
android:textStyle="bold"
android:textColor="#02BEAC"
android:background="@drawable/round_bg_others" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
</androidx.core.widget.NestedScrollView>

View File

@@ -0,0 +1,99 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.core.widget.NestedScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/scrollContent"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="1000dp"
android:orientation="vertical"
android:padding="14dp">
<!-- 内容卡片 -->
<LinearLayout
android:layout_width="150dp"
android:layout_height="240dp"
android:gravity="center"
android:orientation="vertical">
<de.hdodenhof.circleimageview.CircleImageView
android:layout_width="67dp"
android:layout_height="67dp"
android:elevation="7dp"
android:src="@drawable/bg"
app:civ_border_width="2dp"
app:civ_border_color="#DFF346" />
<androidx.cardview.widget.CardView
android:layout_width="150dp"
android:layout_height="200dp"
android:layout_marginTop="-40dp"
android:background="#ffffff"
app:cardCornerRadius="15dp"
app:cardElevation="6dp"
app:cardUseCompatPadding="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:layout_marginTop="10dp"
android:gravity="center"
android:padding="12dp">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="name"
android:singleLine="true"
android:gravity="center"
android:textStyle="bold"
android:ellipsize="end"
android:maxLines="1"
android:textSize="16sp"
android:textColor="#1B1F1A" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Be neither too closenor too distant"
android:ellipsize="end"
android:layout_marginTop="5dp"
android:gravity="center"
android:maxLines="2"
android:textSize="12sp"
android:textColor="#9A9A9A" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Be neither too closenor too distant"
android:ellipsize="end"
android:layout_marginTop="5dp"
android:gravity="center"
android:maxLines="2"
android:textColor="#02BEAC"
android:textSize="10sp" />
<TextView
android:layout_width="100dp"
android:layout_height="32dp"
android:text="+"
android:gravity="center"
android:layout_marginTop="5dp"
android:background="@drawable/list_two_bg"
android:textColor="#FFFFFF"
android:textStyle="bold"
android:textSize="20sp" />
</LinearLayout>
</androidx.cardview.widget.CardView>
</LinearLayout>
</LinearLayout>
</androidx.core.widget.NestedScrollView>

View File

@@ -0,0 +1,103 @@
<androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/rootCoordinator"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F6F7FB"
tools:context=".ui.mine.myotherpages.FeedbackFragment">
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
android:overScrollMode="never">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:orientation="vertical">
<!-- 标题和返回 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="16dp"
android:gravity="center_vertical">
<!-- 返回按钮 -->
<FrameLayout
android:id="@+id/iv_close"
android:layout_width="46dp"
android:layout_height="46dp">
<ImageView
android:layout_width="13dp"
android:layout_height="13dp"
android:layout_gravity="center"
android:src="@drawable/more_icons"
android:rotation="180"
android:scaleType="fitCenter" />
</FrameLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginEnd="49dp"
android:gravity="center"
android:textStyle="bold"
android:text="Feedback"
android:textColor="#1B1F1A"
android:textSize="16sp" />
</LinearLayout>
<!-- 多行文本框 -->
<com.google.android.material.textfield.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="16dp"
app:boxBackgroundMode="outline"
app:boxStrokeColor="#FFFFFF"
app:boxBackgroundColor="#FFFFFF"
app:boxStrokeWidth="0dp"
app:boxCornerRadiusTopStart="8dp"
app:boxCornerRadiusTopEnd="8dp"
app:boxCornerRadiusBottomStart="8dp"
app:boxCornerRadiusBottomEnd="8dp"
app:hintTextColor="#02BEAC"
app:placeholderText="Your Feedback">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/et_feedback"
android:layout_width="match_parent"
android:layout_height="259dp"
android:gravity="top|start"
android:hint="Please enter your feedback..."
android:padding="12dp"
android:inputType="textMultiLine"
android:overScrollMode="never"
android:maxLines="6"
android:minLines="4" />
</com.google.android.material.textfield.TextInputLayout>
<TextView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"/>
<!-- 按钮 -->
<TextView
android:id="@+id/btn_keyboard"
android:layout_width="343dp"
android:layout_height="45dp"
android:gravity="center"
android:layout_marginBottom="20dp"
android:text="Save"
android:textColor="#FFFFFF"
android:textSize="16sp"
android:background="@drawable/my_keyboard_delete"
android:clickable="true"
android:focusable="true"/>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</androidx.coordinatorlayout.widget.CoordinatorLayout>

View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center">
<TextView
android:id="@+id/tv_circle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Circle 页面"
android:textSize="24sp" />
</FrameLayout>

View File

@@ -0,0 +1,321 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/rootCoordinator"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".ui.home.HomeFragment">
<!-- 原来的内容:背景 + VIP + 权益 + 按钮 -->
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- 背景 -->
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/bg"
android:scaleType="fitXY"
android:adjustViewBounds="true" />
<!-- 内容 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:orientation="vertical">
<!-- vip -->
<!-- 成为会员 -->
<ImageView
android:id="@+id/vip"
android:layout_width="216dp"
android:layout_height="161dp"
android:layout_gravity="top|center_horizontal"
android:layout_marginTop="40dp"
android:scaleType="fitCenter"
android:src="@drawable/vip" />
<TextView
android:id="@+id/member"
android:layout_marginTop="28dp"
android:layout_width="290dp"
android:layout_height="wrap_content"
android:textSize="18sp"
android:textStyle="bold"
android:textColor="#1B1F1A"
android:layout_gravity="center_horizontal"
android:text="Become A Member Of LOVE KEY" />
<TextView
android:id="@+id/Unlock"
android:layout_marginTop="3dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="14sp"
android:textColor="#1B1F1A"
android:layout_gravity="center_horizontal"
android:text="Unlock all functions" />
<!-- 权益 -->
<LinearLayout
android:layout_marginTop="22dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:gravity="center_horizontal"
android:orientation="horizontal">
<!-- 权益1 -->
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ai_dialogue"
android:scaleType="fitCenter" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="12sp"
android:gravity="center"
android:textColor="#1B1F1A"
android:text="Wireless sub-AI dialogue" />
</LinearLayout>
<!-- 权益2 -->
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:layout_gravity="center_horizontal"
android:orientation="vertical">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/personalized_keyboard"
android:scaleType="fitCenter" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="12sp"
android:gravity="center"
android:textColor="#1B1F1A"
android:text="Personalized keyboard" />
</LinearLayout>
<!-- 权益3 -->
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:layout_gravity="center_horizontal"
android:orientation="vertical">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/chat_persona"
android:scaleType="fitCenter" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="12sp"
android:gravity="center"
android:textColor="#1B1F1A"
android:text="Chat persona" />
</LinearLayout>
<!-- 权益4 -->
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:layout_gravity="center_horizontal"
android:orientation="vertical">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/emotional_counseling"
android:scaleType="fitCenter" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="12sp"
android:gravity="center"
android:textColor="#1B1F1A"
android:text="Emotional counseling" />
</LinearLayout>
</LinearLayout>
<!-- 按钮 -->
<LinearLayout
android:id="@+id/rechargeButton"
android:layout_marginTop="22dp"
android:layout_width="257dp"
android:layout_height="57dp"
android:layout_gravity="center_horizontal"
android:gravity="center"
android:background="@drawable/button_bg"
android:elevation="4dp"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="15sp"
android:textStyle="bold"
android:gravity="center"
android:textColor="#1B1F1A"
android:text="Recharge now" />
</LinearLayout>
</LinearLayout>
</FrameLayout>
<!-- 半透明遮罩:点击 / 下滑关闭底部盒子 -->
<View
android:id="@+id/view_scrim"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#66000000"
android:visibility="gone" />
<!-- 圆角底部盒子BottomSheet -->
<com.google.android.material.card.MaterialCardView
android:id="@+id/bottomSheet"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="bottom"
android:backgroundTint="@android:color/white"
app:cardUseCompatPadding="false"
app:cardElevation="8dp"
app:cardBackgroundColor="@android:color/white"
app:shapeAppearance="@style/ShapeAppearance.TopRoundedOnly"
app:layout_behavior="@string/bottom_sheet_behavior">
<ImageView
android:id="@+id/backgroundImage"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/option_background"
android:scaleType="fitXY"
android:adjustViewBounds="true" />
<!-- 盒子内容 -->
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- 顶部“可点击的头部区域”,点击可展开/收起 -->
<LinearLayout
android:id="@+id/bottomSheetHeader"
android:layout_width="match_parent"
android:layout_height="48dp"
android:gravity="center"
android:paddingTop="8dp"
android:paddingBottom="8dp"
android:orientation="vertical">
<!-- 小横条指示器 -->
<View
android:layout_width="40dp"
android:layout_height="4dp"
android:background="@drawable/bs_handle_bg" />
</LinearLayout>
<!-- 顶部选项栏:两个选项,对应两个列表 -->
<LinearLayout
android:id="@+id/topTabs"
android:layout_width="match_parent"
android:layout_height="40dp"
android:orientation="horizontal"
android:gravity="center_vertical"
android:paddingStart="16dp"
android:paddingEnd="16dp">
<TextView
android:id="@+id/tab_list1"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:layout_marginEnd="20dp"
android:gravity="center"
android:text="Ranking List"
android:textSize="14sp"
android:textStyle="bold"
android:textColor="#1B1F1A" />
<TextView
android:id="@+id/tab_list2"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:layout_marginStart="20dp"
android:gravity="center"
android:text="Persona circle"
android:textSize="14sp"
android:textColor="#801B1F1A" />
</LinearLayout>
<!-- 第二个列表下面的标签行(数量不固定),只在第二个列表时可见 -->
<HorizontalScrollView
android:id="@+id/tagScroll"
android:layout_width="match_parent"
android:layout_height="40dp"
android:visibility="gone"
android:fillViewport="true"
android:scrollbars="none"
android:overScrollMode="never">
<LinearLayout
android:id="@+id/tagContainer"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="horizontal"
android:gravity="center_vertical" />
</HorizontalScrollView>
<!-- 内容区ViewPager2 里放不同的 RecyclerView卡片列表-->
<androidx.viewpager2.widget.ViewPager2
android:id="@+id/viewPager"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1" />
</LinearLayout>
</com.google.android.material.card.MaterialCardView>
<!-- 浮动按钮 -->
<ImageView
android:id="@+id/floatingImage"
android:layout_width="92dp"
android:layout_height="78dp"
android:elevation="99dp"
android:layout_gravity="center_vertical|end"
android:layout_marginEnd="16dp"
android:layout_marginTop="80dp"
android:src="@drawable/floating"
android:scaleType="centerInside" />
</androidx.coordinatorlayout.widget.CoordinatorLayout>

View File

@@ -0,0 +1,405 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/rootCoordinator"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".ui.home.HomeFragment">
<!-- 背景-->
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/bg"
android:scaleType="fitXY"
android:adjustViewBounds="true" />
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
android:overScrollMode="never">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="16dp">
<!-- 设置 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="Personal"
android:textColor="#1B1F1A"
android:textStyle="bold"
android:layout_weight="1"
android:textSize="30sp"
android:layout_alignParentStart="true" />
<LinearLayout
android:id="@+id/keyboard_settings"
android:layout_width="102dp"
android:layout_height="33dp"
android:layout_alignParentEnd="true"
android:background="@drawable/keyboard_ettings"
android:gravity="center"
android:orientation="horizontal"
android:padding="10dp">
<ImageView
android:layout_width="16dp"
android:layout_height="10dp"
android:scaleType="centerCrop"
android:src="@drawable/keyboard_elements" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="5dp"
android:text="My keyboard"
android:textColor="#FFFFFF"
android:textSize="10sp" />
</LinearLayout>
</LinearLayout>
<!-- 头像昵称 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="80dp"
android:layout_marginTop="20dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<de.hdodenhof.circleimageview.CircleImageView
android:id="@+id/avatar"
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginStart="5dp"
android:src="@drawable/bg"
android:clickable="true"
android:focusable="true"/>
<!-- 下标 -->
<ImageView
android:layout_width="16dp"
android:layout_height="16dp"
android:layout_marginStart="-16dp"
android:layout_marginTop="30dp"
android:elevation="5dp"
android:scaleType="centerCrop"
android:src="@drawable/subscript"/>
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:text="Username"
android:textColor="#1B1F1A"
android:textStyle="bold"
android:ellipsize="end"
android:singleLine="true"
android:maxLines="1"
android:layout_weight="1"
android:textSize="20sp" />
</LinearLayout>
<!-- 充值 -->
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp">
<ImageView
android:id="@+id/imgLeft"
android:layout_width="150dp"
android:layout_height="90dp"
android:scaleType="centerCrop"
android:src="@drawable/member_recharge"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"/>
<ImageView
android:id="@+id/imgRight"
android:layout_width="150dp"
android:layout_height="90dp"
android:scaleType="centerCrop"
android:src="@drawable/recharge_points"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"/>
</androidx.constraintlayout.widget.ConstraintLayout>
<!-- 注意 -->
<LinearLayout
android:id="@+id/click_Notice"
android:layout_width="match_parent"
android:layout_height="64dp"
android:layout_marginTop="20dp"
android:background="@drawable/settings"
android:gravity="center_vertical"
android:orientation="horizontal">
<LinearLayout
android:layout_width="wrap_content"
android:layout_weight="1"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<ImageView
android:layout_width="20dp"
android:layout_height="24dp"
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
android:src="@drawable/notice" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:text="Notice"
android:textColor="#1B1F1A"
android:textStyle="bold"
android:layout_weight="1"
android:textSize="20sp" />
</LinearLayout>
<ImageView
android:layout_width="9dp"
android:layout_height="13dp"
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
android:src="@drawable/more_icons" />
</LinearLayout>
<!-- 分享应用 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="64dp"
android:layout_marginTop="20dp"
android:background="@drawable/settings"
android:gravity="center_vertical"
android:orientation="horizontal">
<LinearLayout
android:layout_width="wrap_content"
android:layout_weight="1"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<ImageView
android:layout_width="20dp"
android:layout_height="24dp"
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
android:src="@drawable/share" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:text="Share app"
android:textColor="#1B1F1A"
android:textStyle="bold"
android:layout_weight="1"
android:textSize="20sp" />
</LinearLayout>
<ImageView
android:layout_width="9dp"
android:layout_height="13dp"
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
android:src="@drawable/more_icons" />
</LinearLayout>
<!-- 其他 -->
<LinearLayout
android:id="@+id/click_Feedback"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:background="@drawable/settings"
android:orientation="vertical">
<!-- 反馈 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="64dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<LinearLayout
android:layout_width="wrap_content"
android:layout_weight="1"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<ImageView
android:layout_width="20dp"
android:layout_height="24dp"
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
android:src="@drawable/feedback" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:text="Feedback"
android:textColor="#1B1F1A"
android:textStyle="bold"
android:layout_weight="1"
android:textSize="20sp" />
</LinearLayout>
<ImageView
android:layout_width="9dp"
android:layout_height="13dp"
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
android:src="@drawable/more_icons" />
</LinearLayout>
<!-- 电子邮件 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="64dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<LinearLayout
android:layout_width="wrap_content"
android:layout_weight="1"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<ImageView
android:layout_width="20dp"
android:layout_height="24dp"
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
android:src="@drawable/e_mail" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:text="E-mail"
android:textColor="#1B1F1A"
android:textStyle="bold"
android:layout_weight="1"
android:textSize="20sp" />
</LinearLayout>
<ImageView
android:layout_width="9dp"
android:layout_height="13dp"
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
android:src="@drawable/more_icons" />
</LinearLayout>
<!-- 协议 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="64dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<LinearLayout
android:layout_width="wrap_content"
android:layout_weight="1"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<ImageView
android:layout_width="20dp"
android:layout_height="24dp"
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
android:src="@drawable/agreement" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:text="Agreement"
android:textColor="#1B1F1A"
android:textStyle="bold"
android:layout_weight="1"
android:textSize="20sp" />
</LinearLayout>
<ImageView
android:layout_width="9dp"
android:layout_height="13dp"
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
android:src="@drawable/more_icons" />
</LinearLayout>
<!-- 隐私政策 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="64dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<LinearLayout
android:layout_width="wrap_content"
android:layout_weight="1"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<ImageView
android:layout_width="20dp"
android:layout_height="24dp"
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
android:src="@drawable/privacy_policy" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:text="Privacy Policy"
android:textColor="#1B1F1A"
android:textStyle="bold"
android:layout_weight="1"
android:textSize="20sp" />
</LinearLayout>
<ImageView
android:layout_width="9dp"
android:layout_height="13dp"
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
android:src="@drawable/more_icons" />
</LinearLayout>
</LinearLayout>
<TextView
android:layout_width="match_parent"
android:layout_height="63dp"
android:layout_marginTop="20dp"
android:layout_marginBottom="20dp"
android:gravity="center"
android:text="Log Out"
android:textColor="#FF0000"
android:textSize="16sp"
android:textStyle="bold"
android:background="@drawable/settings"/>
<TextView
android:layout_width="match_parent"
android:gravity="bottom"
android:layout_height="40dp"/>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</androidx.coordinatorlayout.widget.CoordinatorLayout>

View File

@@ -0,0 +1,208 @@
<androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/rootCoordinator"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F6F7FB"
tools:context=".ui.shop.search.SearchFragment">
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
android:overScrollMode="never">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:orientation="vertical">
<!-- 标题和返回 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="10dp"
android:paddingEnd="16dp"
android:gravity="center_vertical">
<!-- 返回按钮 -->
<FrameLayout
android:id="@+id/iv_close"
android:layout_width="46dp"
android:layout_height="46dp">
<ImageView
android:layout_width="13dp"
android:layout_height="13dp"
android:layout_gravity="center"
android:rotation="180"
android:scaleType="fitCenter"
android:src="@drawable/more_icons" />
</FrameLayout>
<!-- 搜索框 -->
<LinearLayout
android:layout_width="0dp"
android:layout_height="36dp"
android:layout_weight="1"
android:gravity="center"
android:paddingStart="10dp"
android:background="@drawable/search_input_bg"
android:orientation="horizontal">
<EditText
android:id="@+id/et_input"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:layout_gravity="center"
android:textSize="13sp"
android:background="@null"
android:hint="Themes" />
<TextView
android:id="@+id/tv_search"
android:layout_width="76dp"
android:layout_height="28dp"
android:layout_gravity="center"
android:text="Search"
android:gravity="center"
android:background="@drawable/my_keyboard_delete"
android:layout_marginEnd="4dp"
android:textColor="#FFFFFF"
android:textSize="14sp" />
</LinearLayout>
</LinearLayout>
<!-- 搜索历史记录 -->
<LinearLayout
android:id="@+id/layout_history_section"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<!-- 历史记录标题以及删除 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginStart="16dp"
android:gravity="center_vertical">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:textStyle="bold"
android:text="Historical search"
android:textColor="#1B1F1A"
android:textSize="14sp" />
<FrameLayout
android:id="@+id/iv_delete_history"
android:layout_width="46dp"
android:layout_height="46dp">
<ImageView
android:layout_width="13dp"
android:layout_height="13dp"
android:layout_gravity="center"
android:scaleType="fitCenter"
android:src="@drawable/delete_icon" />
</FrameLayout>
</LinearLayout>
<!-- 历史记录列表 -->
<com.google.android.flexbox.FlexboxLayout
android:id="@+id/layout_history_list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingStart="16dp"
android:paddingEnd="16dp"
android:paddingTop="10dp"
app:flexWrap="wrap"
app:flexDirection="row"
app:justifyContent="flex_start">
</com.google.android.flexbox.FlexboxLayout>
</LinearLayout>
<!-- 推荐皮肤 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="16dp"
android:gravity="center_horizontal">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Recommended skins"
android:textStyle="bold"
android:textColor="#1B1F1A"
android:textSize="14sp" />
<!-- 推荐皮肤列表 -->
<LinearLayout
android:id="@+id/layout_recommend_list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingTop="10dp">
<!-- 卡片 -->
<androidx.cardview.widget.CardView
android:id="@+id/card_view"
android:layout_width="170dp"
android:layout_height="wrap_content"
android:background="#F8F8F8"
app:cardCornerRadius="15dp"
app:cardUseCompatPadding="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<ImageView
android:layout_width="match_parent"
android:layout_height="127dp"
android:scaleType="centerCrop"
android:src="@drawable/bg" />
<TextView
android:layout_width="130dp"
android:layout_height="20dp"
android:layout_marginTop="8dp"
android:layout_marginStart="6dp"
android:text="Dopamine"
android:textColor="#1B1F1A"
android:textSize="14sp"
android:textStyle="bold" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="23dp"
android:layout_marginStart="6dp"
android:layout_marginTop="8dp"
android:layout_marginBottom="12dp"
android:padding="4dp"
android:gravity="center"
android:background="@drawable/gold_coin_background_required"
android:orientation="horizontal">
<ImageView
android:layout_width="17dp"
android:layout_height="17dp"
android:scaleType="centerCrop"
android:src="@drawable/gold_coin" />
<TextView
android:layout_width="17dp"
android:layout_height="17dp"
android:layout_marginStart="4dp"
android:text="20"
android:textColor="#02BEAC"
android:textSize="14sp" />
</LinearLayout>
</LinearLayout>
</androidx.cardview.widget.CardView>
<!-- ········· -->
</LinearLayout>
</LinearLayout>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</androidx.coordinatorlayout.widget.CoordinatorLayout>

View File

@@ -0,0 +1,143 @@
<androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/rootCoordinator"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F6F7FB"
tools:context=".ui.shop.search.searchResultFragment">
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
android:overScrollMode="never">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:orientation="vertical">
<!-- 标题和返回 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="10dp"
android:paddingEnd="16dp"
android:gravity="center_vertical">
<!-- 返回按钮 -->
<FrameLayout
android:id="@+id/iv_close"
android:layout_width="46dp"
android:layout_height="46dp">
<ImageView
android:layout_width="13dp"
android:layout_height="13dp"
android:layout_gravity="center"
android:rotation="180"
android:scaleType="fitCenter"
android:src="@drawable/more_icons" />
</FrameLayout>
<!-- 搜索框 -->
<LinearLayout
android:layout_width="0dp"
android:layout_height="36dp"
android:layout_weight="1"
android:gravity="center"
android:paddingStart="10dp"
android:background="@drawable/search_input_bg"
android:orientation="horizontal">
<EditText
android:id="@+id/et_input"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:layout_gravity="center"
android:textSize="13sp"
android:background="@null"
android:hint="Themes" />
<TextView
android:id="@+id/tv_search"
android:layout_width="76dp"
android:layout_height="28dp"
android:layout_gravity="center"
android:text="Search"
android:gravity="center"
android:background="@drawable/my_keyboard_delete"
android:layout_marginEnd="4dp"
android:textColor="#FFFFFF"
android:textSize="14sp" />
</LinearLayout>
</LinearLayout>
<!-- 搜索结果列表 -->
<LinearLayout
android:id="@+id/layout_recommend_list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingTop="10dp">
<!-- 卡片 -->
<androidx.cardview.widget.CardView
android:layout_width="170dp"
android:layout_height="wrap_content"
android:background="#F8F8F8"
app:cardCornerRadius="15dp"
app:cardUseCompatPadding="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<ImageView
android:layout_width="match_parent"
android:layout_height="127dp"
android:scaleType="centerCrop"
android:src="@drawable/bg" />
<TextView
android:layout_width="130dp"
android:layout_height="20dp"
android:layout_marginTop="8dp"
android:layout_marginStart="6dp"
android:text="Dopamine"
android:textColor="#1B1F1A"
android:textSize="14sp"
android:textStyle="bold" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="23dp"
android:layout_marginStart="6dp"
android:layout_marginTop="8dp"
android:layout_marginBottom="12dp"
android:padding="4dp"
android:gravity="center"
android:background="@drawable/gold_coin_background_required"
android:orientation="horizontal">
<ImageView
android:layout_width="17dp"
android:layout_height="17dp"
android:scaleType="centerCrop"
android:src="@drawable/gold_coin" />
<TextView
android:layout_width="17dp"
android:layout_height="17dp"
android:layout_marginStart="4dp"
android:text="20"
android:textColor="#02BEAC"
android:textSize="14sp" />
</LinearLayout>
</LinearLayout>
</androidx.cardview.widget.CardView>
<!-- ········· -->
</LinearLayout>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</androidx.coordinatorlayout.widget.CoordinatorLayout>

View File

@@ -0,0 +1,213 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/rootCoordinator"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".ui.home.HomeFragment">
<!-- 背景-->
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/bg"
android:scaleType="fitXY"
android:adjustViewBounds="true" />
<!-- 头部 + 标签行,放进 AppBarLayout 里 -->
<com.google.android.material.appbar.AppBarLayout
android:id="@+id/appBar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/transparent">
<!-- 这一块会跟着滚动,滑出屏幕 -->
<LinearLayout
android:id="@+id/headerContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="16dp"
android:orientation="vertical"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<!-- 搜索、皮肤栏 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_gravity="center_horizontal"
android:gravity="end|bottom"
android:orientation="horizontal">
<ImageView
android:id="@+id/searchButton"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_marginEnd="16dp"
android:src="@drawable/search" />
<ImageView
android:id="@+id/skinButton"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_marginEnd="16dp"
android:src="@drawable/skin" />
</LinearLayout>
<!-- 小星星 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="110dp"
android:layout_marginTop="16dp"
android:elevation="1dp"
android:orientation="horizontal">
<ImageView
android:layout_width="18dp"
android:layout_height="18dp"
android:layout_marginTop="62dp"
android:layout_marginStart="10dp"
android:src="@drawable/yellow_star" />
<TextView
android:layout_width="68dp"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:layout_marginStart="6dp"
android:text="Points Mall"
android:textColor="#1B1F1A"
android:textStyle="bold"
android:textSize="22sp" />
<ImageView
android:layout_width="16dp"
android:layout_height="16dp"
android:src="@drawable/yellow_star" />
<ImageView
android:layout_width="20dp"
android:layout_height="20dp"
android:layout_marginStart="62dp"
android:src="@drawable/blue_star" />
<ImageView
android:layout_width="14dp"
android:layout_height="14dp"
android:layout_marginTop="24dp"
android:layout_marginStart="100dp"
android:src="@drawable/blue_star" />
<ImageView
android:layout_width="14dp"
android:layout_height="14dp"
android:layout_marginTop="54dp"
android:layout_marginStart="2dp"
android:src="@drawable/blue_star" />
</LinearLayout>
<!-- Points 卡片 -->
<FrameLayout
android:layout_width="match_parent"
android:layout_height="238dp"
android:layout_marginTop="-110dp"
android:elevation="10dp"
android:orientation="vertical">
<!-- 点数背景 -->
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop"
android:src="@drawable/points" />
<!-- 内容 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="110dp"
android:orientation="vertical">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="My points"
android:textColor="#1B1F1A"
android:textSize="14sp"
android:padding="20dp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal">
<ImageView
android:layout_width="38dp"
android:layout_height="38dp"
android:layout_marginEnd="11dp"
android:layout_marginStart="20dp"
android:src="@drawable/gold_coin" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:text="88.00"
android:textColor="#02BEAC"
android:textSize="40sp" />
<!-- 按钮 -->
<LinearLayout
android:id="@+id/rechargeButton"
android:layout_width="114dp"
android:layout_height="42dp"
android:layout_marginStart="30dp"
android:gravity="center"
android:background="@drawable/gold_coin_button"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="13sp"
android:textStyle="bold"
android:gravity="center"
android:textColor="#1B1F1A"
android:text="Recharge" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
</FrameLayout>
</LinearLayout>
<!-- 标签行:仍然在 points 卡片下面,并设置成吸顶 -->
<HorizontalScrollView
android:id="@+id/tagScroll"
android:layout_width="match_parent"
android:layout_height="40dp"
android:paddingStart="16dp"
android:paddingEnd="16dp"
android:layout_marginTop="18dp"
android:layout_marginBottom="18dp"
android:fillViewport="true"
android:scrollbars="none"
android:overScrollMode="never">
<LinearLayout
android:id="@+id/tagContainer"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="horizontal"
android:gravity="center_vertical" />
</HorizontalScrollView>
</com.google.android.material.appbar.AppBarLayout>
<!-- 内容页,放进 ViewPager2 里 -->
<androidx.viewpager2.widget.ViewPager2
android:id="@+id/viewPager"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
</androidx.coordinatorlayout.widget.CoordinatorLayout>

View File

@@ -0,0 +1,224 @@
<androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/rootCoordinator"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F6F7FB"
tools:context=".ui.home.HomeFragment">
<!-- 背景 -->
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/bg"
android:scaleType="fitXY"
android:adjustViewBounds="true" />
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
android:overScrollMode="never">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<!-- 标题和返回 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="16dp"
android:gravity="center_vertical">
<!-- 返回按钮 -->
<FrameLayout
android:id="@+id/iv_close"
android:layout_width="46dp"
android:layout_height="46dp">
<ImageView
android:layout_width="13dp"
android:layout_height="13dp"
android:layout_gravity="center"
android:src="@drawable/more_icons"
android:rotation="180"
android:scaleType="fitCenter" />
</FrameLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginEnd="49dp"
android:gravity="center"
android:textStyle="bold"
android:text="Points recharge"
android:textColor="#1B1F1A"
android:textSize="16sp" />
</LinearLayout>
<!-- 现有金币 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:elevation="2dp"
android:paddingStart="16dp"
android:paddingEnd="16dp"
android:orientation="horizontal">
<!-- 金币 -->
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:layout_weight="1"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="My points"
android:textColor="#1B1F1A"
android:textSize="14sp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="4230"
android:textColor="#02BEAC"
android:textSize="30sp" />
</LinearLayout>
<!-- 金币图标 -->
<ImageView
android:layout_width="131dp"
android:layout_height="144dp"
android:layout_marginEnd="10dp"
android:src="@drawable/points_gold_coins"
android:scaleType="fitXY"/>
</LinearLayout>
<!-- 充值区域 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="16dp"
android:layout_marginTop="-40dp"
android:background="@drawable/gold_coin_recharge_bt_bg"
android:orientation="vertical">
<!-- 标题 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center_vertical">
<ImageView
android:layout_width="24dp"
android:layout_height="24dp"
android:src="@drawable/gold_coin"
android:scaleType="fitXY"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:text="Recharge now"
android:textColor="#1B1F1A"
android:textSize="14sp" />
</LinearLayout>
<!-- 套餐选择 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:orientation="vertical">
<!-- 套餐 -->
<LinearLayout
android:layout_width="108dp"
android:layout_height="116dp"
android:background="@drawable/gold_coin_recharge_package_bg"
android:gravity="center"
android:orientation="vertical">
<!-- 金币数 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal">
<ImageView
android:layout_width="24dp"
android:layout_height="24dp"
android:src="@drawable/gold_coin"
android:scaleType="fitXY"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="4dp"
android:text="690"
android:textColor="#02BEAC"
android:textSize="20sp" />
</LinearLayout>
<!-- 花费金额 -->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:gravity="center"
android:text="$6.90"
android:textSize="18sp"
android:textColor="#797979" />
</LinearLayout>
<!-- ````````````````````````````` -->
</LinearLayout>
</LinearLayout>
<!-- 充值按钮区域 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ffffff"
android:orientation="vertical">
<!-- 充值按钮 -->
<LinearLayout
android:id="@+id/rechargeButton"
android:layout_marginTop="126dp"
android:layout_width="349dp"
android:layout_height="57dp"
android:layout_gravity="center_horizontal"
android:gravity="center"
android:background="@drawable/gold_coin_recharge_button_bg"
android:scaleType="centerCrop"
android:elevation="4dp"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="15sp"
android:textStyle="bold"
android:gravity="center"
android:textColor="#1B1F1A"
android:text="Recharge now" />
</LinearLayout>
<!-- 协议 -->
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="17dp"
android:textSize="10sp"
android:text="By clicking &quot;pay&quot;, you indicate your agreement to the"
android:textColor="#1B1F1A"
android:gravity="center_horizontal"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="4dp"
android:textSize="10sp"
android:text="《Embership Agreement》"
android:textColor="#02BEAC"
android:gravity="center_horizontal" />
</LinearLayout>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</androidx.coordinatorlayout.widget.CoordinatorLayout>

View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="28dp"
android:layout_marginStart="8dp"
android:layout_marginEnd="8dp"
android:paddingLeft="12dp"
android:paddingRight="12dp"
android:gravity="center_vertical"
android:text="标签"
android:textSize="12sp"
android:textColor="@color/light_black"
android:background="#EAF8F4" />

View File

@@ -0,0 +1,666 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/keyboard_background"
android:id="@+id/keyboard_root"
android:orientation="vertical">
<!-- 补全建议区域(可横向滑动) -->
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="40dp"
android:scrollbars="none"
android:overScrollMode="never"
android:background="@drawable/keyboard_background"
android:id="@+id/completion_scroll">
<LinearLayout
android:id="@+id/completion_suggestions"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="horizontal"
android:paddingStart="4dp"
android:paddingEnd="4dp">
<TextView
android:id="@+id/suggestion_0"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="12sp"
android:paddingHorizontal="12dp"
android:gravity="center"
android:clickable="true"
android:background="@drawable/btn_keyboard"
android:textColor="?android:attr/textColorPrimary" />
<TextView
android:id="@+id/suggestion_1"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="12sp"
android:paddingHorizontal="12dp"
android:gravity="center"
android:clickable="true"
android:background="@drawable/btn_keyboard"
android:textColor="?android:attr/textColorPrimary" />
<TextView
android:id="@+id/suggestion_2"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="12sp"
android:paddingHorizontal="12dp"
android:gravity="center"
android:clickable="true"
android:background="@drawable/btn_keyboard"
android:textColor="?android:attr/textColorPrimary" />
<TextView
android:id="@+id/suggestion_3"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="12sp"
android:paddingHorizontal="12dp"
android:gravity="center"
android:clickable="true"
android:background="@drawable/btn_keyboard"
android:textColor="?android:attr/textColorPrimary" />
<TextView
android:id="@+id/suggestion_4"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="12sp"
android:paddingHorizontal="12dp"
android:gravity="center"
android:clickable="true"
android:background="@drawable/btn_keyboard"
android:textColor="?android:attr/textColorPrimary" />
<TextView
android:id="@+id/suggestion_5"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="12sp"
android:paddingHorizontal="12dp"
android:gravity="center"
android:clickable="true"
android:background="@drawable/btn_keyboard"
android:textColor="?android:attr/textColorPrimary" />
<TextView
android:id="@+id/suggestion_6"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="12sp"
android:paddingHorizontal="12dp"
android:gravity="center"
android:clickable="true"
android:background="@drawable/btn_keyboard"
android:textColor="?android:attr/textColorPrimary" />
<TextView
android:id="@+id/suggestion_7"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="12sp"
android:paddingHorizontal="12dp"
android:gravity="center"
android:clickable="true"
android:background="@drawable/btn_keyboard"
android:textColor="?android:attr/textColorPrimary" />
<TextView
android:id="@+id/suggestion_8"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="12sp"
android:paddingHorizontal="12dp"
android:gravity="center"
android:clickable="true"
android:background="@drawable/btn_keyboard"
android:textColor="?android:attr/textColorPrimary" />
<TextView
android:id="@+id/suggestion_9"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="12sp"
android:paddingHorizontal="12dp"
android:gravity="center"
android:clickable="true"
android:background="@drawable/btn_keyboard"
android:textColor="?android:attr/textColorPrimary" />
<TextView
android:id="@+id/suggestion_10"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="12sp"
android:paddingHorizontal="12dp"
android:gravity="center"
android:clickable="true"
android:background="@drawable/btn_keyboard"
android:textColor="?android:attr/textColorPrimary" />
<TextView
android:id="@+id/suggestion_11"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="12sp"
android:paddingHorizontal="12dp"
android:gravity="center"
android:clickable="true"
android:background="@drawable/btn_keyboard"
android:textColor="?android:attr/textColorPrimary" />
<TextView
android:id="@+id/suggestion_12"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="12sp"
android:paddingHorizontal="12dp"
android:gravity="center"
android:clickable="true"
android:background="@drawable/btn_keyboard"
android:textColor="?android:attr/textColorPrimary" />
<TextView
android:id="@+id/suggestion_13"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="12sp"
android:paddingHorizontal="12dp"
android:gravity="center"
android:clickable="true"
android:background="@drawable/btn_keyboard"
android:textColor="?android:attr/textColorPrimary" />
<TextView
android:id="@+id/suggestion_14"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="12sp"
android:paddingHorizontal="12dp"
android:gravity="center"
android:clickable="true"
android:background="@drawable/btn_keyboard"
android:textColor="?android:attr/textColorPrimary" />
<TextView
android:id="@+id/suggestion_15"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="12sp"
android:paddingHorizontal="12dp"
android:gravity="center"
android:clickable="true"
android:background="@drawable/btn_keyboard"
android:textColor="?android:attr/textColorPrimary" />
<TextView
android:id="@+id/suggestion_16"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="12sp"
android:paddingHorizontal="12dp"
android:gravity="center"
android:clickable="true"
android:background="@drawable/btn_keyboard"
android:textColor="?android:attr/textColorPrimary" />
<TextView
android:id="@+id/suggestion_17"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="12sp"
android:paddingHorizontal="12dp"
android:gravity="center"
android:clickable="true"
android:background="@drawable/btn_keyboard"
android:textColor="?android:attr/textColorPrimary" />
<TextView
android:id="@+id/suggestion_18"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="12sp"
android:paddingHorizontal="12dp"
android:gravity="center"
android:clickable="true"
android:background="@drawable/btn_keyboard"
android:textColor="?android:attr/textColorPrimary" />
<TextView
android:id="@+id/suggestion_19"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="12sp"
android:paddingHorizontal="12dp"
android:gravity="center"
android:clickable="true"
android:background="@drawable/btn_keyboard"
android:textColor="?android:attr/textColorPrimary" />
<TextView
android:id="@+id/suggestion_20"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="12sp"
android:paddingHorizontal="12dp"
android:gravity="center"
android:clickable="true"
android:background="@drawable/btn_keyboard"
android:textColor="?android:attr/textColorPrimary" />
</LinearLayout>
</HorizontalScrollView>
<!-- 第一行字母键 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/key_q"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="Q"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_w"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="W"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_e"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="E"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_r"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="R"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_t"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="T"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_y"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="Y"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_u"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="U"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_i"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="I"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_o"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="O"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_p"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="P"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
</LinearLayout>
<!-- 第二行字母键 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/key_a"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="A"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_s"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="S"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_d"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="D"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_f"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="F"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_g"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="G"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_h"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="H"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_j"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="J"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_k"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="K"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_l"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="L"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
</LinearLayout>
<!-- 第三行字母键 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/key_Shift"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="2"
android:text="Shift"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_z"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="Z"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_x"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="X"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_c"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="C"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_v"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="V"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_b"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="B"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_n"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="N"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_m"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="M"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_backspace"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="2"
android:text="Del"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
</LinearLayout>
<!-- 功能键行 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/key_number"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="123"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_Ai"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="Ai"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_space"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="3"
android:text="Space"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
<TextView
android:id="@+id/key_send"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="2"
android:text="Send"
android:textSize="12sp"
android:padding="4dp"
android:textColor="#A9A9A9"
android:clickable="true"
android:gravity="center"/>
</LinearLayout>
</LinearLayout>

View File

@@ -0,0 +1,212 @@
<androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/rootCoordinator"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F6F7FB"
tools:context=".ui.keyboard.KeyboardDetailFragment">
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
android:overScrollMode="never">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:paddingStart="16dp"
android:paddingEnd="16dp"
android:orientation="vertical">
<!-- 标题和返回 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="10dp"
android:paddingEnd="16dp"
android:gravity="center_vertical">
<!-- 返回按钮 -->
<FrameLayout
android:id="@+id/iv_close"
android:layout_width="46dp"
android:layout_height="46dp">
<ImageView
android:layout_width="13dp"
android:layout_height="13dp"
android:layout_gravity="center_vertical"
android:rotation="180"
android:scaleType="fitCenter"
android:src="@drawable/more_icons" />
</FrameLayout>
</LinearLayout>
<!-- 键盘展示图 -->
<com.google.android.material.imageview.ShapeableImageView
android:id="@+id/iv_keyboard"
android:layout_width="match_parent"
android:layout_height="264dp"
android:layout_marginTop="10dp"
android:scaleType="centerCrop"
android:src="@drawable/bg"
app:shapeAppearanceOverlay="@style/RoundedImageStyle" />
<!-- 键盘名称和下载量 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="10dp"
android:gravity="center_vertical">
<TextView
android:id="@+id/tv_keyboard_name"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:singleLine="true"
android:ellipsize="end"
android:maxLines="1"
android:textSize="16sp"
android:textStyle="bold"
android:textColor="#1B1F1A"
android:text="Dopamine" />
<TextView
android:id="@+id/tv_download_count"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:singleLine="true"
android:ellipsize="end"
android:maxLines="1"
android:textSize="14sp"
android:background="@drawable/tv_download_count"
android:textColor="#02BEAC"
android:text="Download: 1 million" />
</LinearLayout>
<!-- 描述标签 -->
<!-- 推荐皮肤 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center_horizontal">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Recommended skins"
android:textStyle="bold"
android:textColor="#1B1F1A"
android:textSize="14sp" />
<!-- 推荐皮肤列表 -->
<LinearLayout
android:id="@+id/layout_recommend_list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingTop="10dp">
<!-- 卡片 -->
<androidx.cardview.widget.CardView
android:id="@+id/card_view"
android:layout_width="170dp"
android:layout_height="wrap_content"
android:background="#F8F8F8"
app:cardCornerRadius="15dp"
app:cardUseCompatPadding="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<ImageView
android:layout_width="match_parent"
android:layout_height="127dp"
android:scaleType="centerCrop"
android:src="@drawable/bg" />
<TextView
android:layout_width="130dp"
android:layout_height="20dp"
android:layout_marginTop="8dp"
android:layout_marginStart="6dp"
android:text="Dopamine"
android:textColor="#1B1F1A"
android:textSize="14sp"
android:textStyle="bold" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="23dp"
android:layout_marginStart="6dp"
android:layout_marginTop="8dp"
android:layout_marginBottom="12dp"
android:padding="4dp"
android:gravity="center"
android:background="@drawable/gold_coin_background_required"
android:orientation="horizontal">
<ImageView
android:layout_width="17dp"
android:layout_height="17dp"
android:scaleType="centerCrop"
android:src="@drawable/gold_coin" />
<TextView
android:layout_width="17dp"
android:layout_height="17dp"
android:layout_marginStart="4dp"
android:text="20"
android:textColor="#02BEAC"
android:textSize="14sp" />
</LinearLayout>
</LinearLayout>
</androidx.cardview.widget.CardView>
<!-- ········· -->
</LinearLayout>
</LinearLayout>
<!-- 购买按钮 -->
<LinearLayout
android:id="@+id/rechargeButton"
android:layout_marginTop="22dp"
android:layout_width="match_parent"
android:layout_height="45dp"
android:layout_gravity="center_horizontal"
android:gravity="center"
android:background="@drawable/my_keyboard_delete"
android:elevation="4dp"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="15sp"
android:textStyle="bold"
android:gravity="center"
android:textColor="#FFFFFF"
android:text="Download" />
<ImageView
android:layout_width="17dp"
android:layout_height="17dp"
android:layout_marginStart="8dp"
android:layout_marginEnd="5dp"
android:scaleType="centerCrop"
android:src="@drawable/gold_coin" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="15sp"
android:textStyle="bold"
android:gravity="center"
android:textColor="#FFFFFF"
android:text="20" />
</LinearLayout>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</androidx.coordinatorlayout.widget.CoordinatorLayout>

View File

@@ -0,0 +1,125 @@
<androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/rootCoordinator"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F6F7FB"
tools:context=".ui.home.MyKeyboard">
<ImageView
android:layout_width="match_parent"
android:layout_height="323dp"
android:src="@drawable/my_keyboard_bg"
android:scaleType="fitXY"
android:adjustViewBounds="true" />
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
android:overScrollMode="never">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:orientation="vertical">
<!-- 标题和返回 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="16dp"
android:gravity="center_vertical">
<!-- 返回按钮 -->
<FrameLayout
android:id="@+id/iv_close"
android:layout_width="46dp"
android:layout_height="46dp">
<ImageView
android:layout_width="13dp"
android:layout_height="13dp"
android:layout_gravity="center"
android:src="@drawable/more_icons"
android:rotation="180"
android:scaleType="fitCenter" />
</FrameLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginEnd="49dp"
android:gravity="center"
android:textStyle="bold"
android:text="My keyboard"
android:textColor="#1B1F1A"
android:textSize="16sp" />
</LinearLayout>
<!-- 内容-->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="200dp"
android:padding="15dp"
android:layout_marginTop="90dp"
android:background="@drawable/mykeyboard_bg"
android:orientation="horizontal">
<!-- 卡片 -->
<LinearLayout
android:layout_width="115dp"
android:layout_height="42dp"
android:gravity="center"
android:orientation="horizontal">
<LinearLayout
android:layout_width="109dp"
android:layout_height="36dp"
android:gravity="center"
android:orientation="horizontal"
android:background="#FFFFFF">
<de.hdodenhof.circleimageview.CircleImageView
android:id="@+id/avatar"
android:layout_width="20dp"
android:layout_height="20dp"
android:src="@drawable/bg"
android:clickable="true"
android:focusable="true"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginStart="5dp"
android:text="Humor"
android:textColor="#1B1F1A"
android:textSize="13sp"/>
</LinearLayout>
<TextView
android:layout_width="11dp"
android:layout_height="11dp"
android:layout_marginStart="-5dp"
android:layout_marginTop="-15dp"
android:text="-"
android:textSize="5sp"
android:textColor="#ffffff"
android:background="@drawable/my_keyboard_delete"
android:gravity="center"/>
</LinearLayout>
<!-- `````````````````` -->
</LinearLayout>
<!-- 按钮 -->
<TextView
android:id="@+id/btn_keyboard"
android:layout_width="343dp"
android:layout_height="45dp"
android:gravity="center"
android:text="Save"
android:textColor="#FFFFFF"
android:textSize="16sp"
android:background="@drawable/my_keyboard_delete"
android:clickable="true"
android:focusable="true"/>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</androidx.coordinatorlayout.widget.CoordinatorLayout>

View File

@@ -0,0 +1,108 @@
<androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/rootCoordinator"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F6F7FB"
tools:context=".ui.shop.myskin.MySkin">
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
android:overScrollMode="never">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:orientation="vertical">
<!-- 标题和返回 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="16dp"
android:gravity="center_vertical">
<!-- 返回按钮 -->
<FrameLayout
android:id="@+id/iv_close"
android:layout_width="46dp"
android:layout_height="46dp">
<ImageView
android:layout_width="13dp"
android:layout_height="13dp"
android:layout_gravity="center"
android:src="@drawable/more_icons"
android:rotation="180"
android:scaleType="fitCenter" />
</FrameLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:textStyle="bold"
android:text="MySkin"
android:textColor="#1B1F1A"
android:textSize="16sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_marginEnd="4dp"
android:gravity="center"
android:textStyle="bold"
android:text="Editor"
android:textColor="#1B1F1A"
android:textSize="13sp" />
</LinearLayout>
<!-- 内容 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="16dp"
android:orientation="vertical">
<!-- 卡片内容 -->
<androidx.cardview.widget.CardView
android:layout_width="170dp"
android:layout_height="wrap_content"
android:background="#F8F8F8"
app:cardCornerRadius="15dp"
app:cardUseCompatPadding="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<ImageView
android:layout_width="match_parent"
android:layout_height="127dp"
android:scaleType="centerCrop"
android:src="@drawable/bg" />
<TextView
android:layout_width="130dp"
android:layout_height="20dp"
android:layout_marginTop="8dp"
android:layout_marginStart="6dp"
android:layout_marginBottom="14dp"
android:text="Dopamine"
android:textColor="#1B1F1A"
android:textSize="14sp"
android:textStyle="bold" />
<TextView
android:layout_width="15dp"
android:layout_height="15dp"
android:layout_marginTop="-150dp"
android:layout_marginStart="10dp"/>
</LinearLayout>
</androidx.cardview.widget.CardView>
</LinearLayout>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</androidx.coordinatorlayout.widget.CoordinatorLayout>

View File

@@ -0,0 +1,94 @@
<androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/rootCoordinator"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F6F7FB"
tools:context=".ui.mine.myotherpages.NotificationFragment">
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
android:overScrollMode="never">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:padding="16dp"
android:orientation="vertical">
<!-- 标题和返回 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center_vertical">
<!-- 返回按钮 -->
<FrameLayout
android:id="@+id/iv_close"
android:layout_width="46dp"
android:layout_height="46dp">
<ImageView
android:layout_width="13dp"
android:layout_height="13dp"
android:layout_gravity="center"
android:src="@drawable/more_icons"
android:rotation="180"
android:scaleType="fitCenter" />
</FrameLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginEnd="49dp"
android:gravity="center"
android:textStyle="bold"
android:text="Notice"
android:textColor="#1B1F1A"
android:textSize="16sp" />
</LinearLayout>
<!-- 通知内容 -->
<LinearLayout
android:id="@+id/click_Notice"
android:layout_width="match_parent"
android:layout_height="64dp"
android:layout_marginTop="20dp"
android:background="@drawable/settings"
android:gravity="center_vertical"
android:orientation="horizontal">
<LinearLayout
android:layout_width="wrap_content"
android:layout_weight="1"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:text="Notifycation Setting"
android:textColor="#1B1F1A"
android:textStyle="bold"
android:layout_weight="1"
android:textSize="20sp" />
</LinearLayout>
<androidx.appcompat.widget.SwitchCompat
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
android:id="@+id/switch_push"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:thumbTint="@color/white"
android:trackTint="@color/track_color"
/>
</LinearLayout>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</androidx.coordinatorlayout.widget.CoordinatorLayout>

View File

@@ -0,0 +1,337 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/keyboard_background"
android:id="@+id/keyboard_root"
android:orientation="vertical">
<!-- 第一行数字键 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/key_1"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="1"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_2"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="2"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_3"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="3"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_4"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="4"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_5"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="5"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_6"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="6"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_7"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="7"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_8"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="8"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_9"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="9"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_0"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="0"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
</LinearLayout>
<!-- 第二行符号键 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/key_tilde"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="~"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_slash"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="/"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_colon"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text=":"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_semicolon"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text=";"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_left_paren"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="("
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_right_paren"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text=")"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_dollar"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="$"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_amp"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="&amp;"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_at"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="@"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_quote"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="”"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
</LinearLayout>
<!-- 第三行功能键 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/key_symbol_switch"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="2"
android:text="#+="
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_period"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="."
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_comma"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text=","
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_question"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="?"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_exclaim"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="!"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_quote_single"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="'"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_backspace"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="2"
android:text="Del"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
</LinearLayout>
<!-- 第四行功能键 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/key_abc_switch"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="abc"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_space"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="3"
android:text="Space"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
<TextView
android:id="@+id/key_send"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:text="send"
android:textSize="12sp"
android:textColor="#A9A9A9"
android:gravity="center"
android:clickable="true"/>
</LinearLayout>
</LinearLayout>

View File

@@ -0,0 +1,238 @@
<androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/rootCoordinator"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F6F7FB"
tools:context=".ui.home.myotherpages.PersonalSettings">
<!-- 内容 -->
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
android:overScrollMode="never">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="16dp"
android:background="#F8F8F8"
android:orientation="vertical">
<!-- 标题和返回 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center_vertical">
<!-- 返回按钮 -->
<FrameLayout
android:id="@+id/iv_close"
android:layout_width="46dp"
android:layout_height="46dp">
<ImageView
android:layout_width="13dp"
android:layout_height="13dp"
android:layout_gravity="center"
android:src="@drawable/more_icons"
android:rotation="180"
android:scaleType="fitCenter" />
</FrameLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginEnd="49dp"
android:gravity="center"
android:textStyle="bold"
android:text="Settings"
android:textColor="#1B1F1A"
android:textSize="16sp" />
</LinearLayout>
<!-- 头像 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="130dp"
android:padding="16dp"
android:gravity="center"
android:orientation="horizontal">
<de.hdodenhof.circleimageview.CircleImageView
android:id="@+id/avatar"
android:layout_width="88dp"
android:layout_height="88dp"
android:src="@drawable/bg"
android:elevation="1dp"
android:clickable="true"
android:focusable="true"/>
<ImageView
android:layout_width="18dp"
android:layout_height="18dp"
android:layout_marginStart="-22dp"
android:layout_marginTop="34dp"
android:elevation="2dp"
android:src="@drawable/avatar_modification"
android:scaleType="centerCrop"/>
</LinearLayout>
<!-- 修改 -->
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:textStyle="bold"
android:text="Modify"
android:textColor="#1B1F1A"
android:textSize="18sp" />
<!-- 其他设置 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="24dp"
android:background="@drawable/settings"
android:orientation="vertical">
<!-- Nickname -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="64dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:text="Nickname"
android:textColor="#1B1F1A"
android:textStyle="bold"
android:textSize="16sp" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_weight="1"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="Nickname"
android:gravity="end"
android:textColor="#1B1F1A"
android:textStyle="bold"
android:layout_weight="1"
android:textSize="16sp" />
<ImageView
android:layout_width="9dp"
android:layout_height="13dp"
android:tint="#AFAFAF"
android:layout_marginStart="12dp"
android:layout_marginEnd="16dp"
android:src="@drawable/more_icons" />
</LinearLayout>
</LinearLayout>
<!-- Gender -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="64dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:text="Gender"
android:textColor="#1B1F1A"
android:textStyle="bold"
android:textSize="16sp" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_weight="1"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="Gender"
android:gravity="end"
android:textColor="#1B1F1A"
android:textStyle="bold"
android:layout_weight="1"
android:textSize="16sp" />
<ImageView
android:layout_width="9dp"
android:layout_height="13dp"
android:tint="#AFAFAF"
android:layout_marginStart="12dp"
android:layout_marginEnd="16dp"
android:src="@drawable/more_icons" />
</LinearLayout>
</LinearLayout>
<!-- User ID -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="64dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:text="User ID"
android:textColor="#1B1F1A"
android:textStyle="bold"
android:textSize="16sp" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_weight="1"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="88888888"
android:gravity="end"
android:textColor="#1B1F1A"
android:textStyle="bold"
android:layout_weight="1"
android:textSize="16sp" />
<ImageView
android:layout_width="14dp"
android:layout_height="14dp"
android:tint="#AFAFAF"
android:layout_marginStart="12dp"
android:layout_marginEnd="16dp"
android:src="@drawable/copy" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
<TextView
android:layout_width="match_parent"
android:layout_height="63dp"
android:layout_marginTop="273dp"
android:layout_marginBottom="20dp"
android:gravity="center"
android:text="Log Out"
android:textColor="#FF0000"
android:textSize="16sp"
android:textStyle="bold"
android:background="@drawable/settings"/>
<!-- ````````` -->
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</androidx.coordinatorlayout.widget.CoordinatorLayout>

View File

@@ -0,0 +1,77 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.core.widget.NestedScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
android:overScrollMode="never">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="600dp"
android:orientation="vertical"
android:padding="16dp"
android:background="#ffffff">
<!-- 卡片内容 -->
<androidx.cardview.widget.CardView
android:layout_width="170dp"
android:layout_height="wrap_content"
android:background="#F8F8F8"
app:cardCornerRadius="15dp"
app:cardUseCompatPadding="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<ImageView
android:layout_width="match_parent"
android:layout_height="127dp"
android:scaleType="centerCrop"
android:src="@drawable/bg" />
<TextView
android:layout_width="130dp"
android:layout_height="20dp"
android:layout_marginTop="8dp"
android:layout_marginStart="6dp"
android:text="Dopamine"
android:textColor="#1B1F1A"
android:textSize="14sp"
android:textStyle="bold" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="23dp"
android:layout_marginStart="6dp"
android:layout_marginTop="8dp"
android:layout_marginBottom="12dp"
android:padding="4dp"
android:gravity="center"
android:background="@drawable/gold_coin_background_required"
android:orientation="horizontal">
<ImageView
android:layout_width="17dp"
android:layout_height="17dp"
android:scaleType="centerCrop"
android:src="@drawable/gold_coin" />
<TextView
android:layout_width="17dp"
android:layout_height="17dp"
android:layout_marginStart="4dp"
android:text="20"
android:textColor="#02BEAC"
android:textSize="14sp" />
</LinearLayout>
</LinearLayout>
</androidx.cardview.widget.CardView>
</LinearLayout>
</androidx.core.widget.NestedScrollView>

View File

@@ -0,0 +1,73 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:background="@drawable/keyboard_background"
android:id="@+id/keyboard_root"
android:layout_height="wrap_content"
android:orientation="vertical">
<!-- 第一行: [ ] { } # % ^ * + = -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView android:id="@+id/key_lbracket" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="[" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_rbracket" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="]" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_lbrace" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="{" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_rbrace" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="}" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_hash" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="#" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_percent" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="%" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_caret" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="^" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_asterisk" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="*" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_plus" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="+" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_equal" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="=" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
</LinearLayout>
<!-- 第二行: _ \ | ~ < > € £ ¥ · -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView android:id="@+id/key_underscore" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="_" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<!-- 反斜杠:用 HTML 实体 &#92; 更安全 -->
<TextView android:id="@+id/key_backslash" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="\\" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_pipe" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="|" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_tilde" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="~" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_lt" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="&lt;" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_gt" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="&gt;" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_euro" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="€" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_pound" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="£" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_yen" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="¥" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_middot" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="·" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
</LinearLayout>
<!-- 第三行: . , . , ? ! ' [delete ×2] (中间两个小点按你的图可只保留 . ,) -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView android:id="@+id/key_123_switch" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="2" android:text="123" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_period" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="." android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_comma" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="," android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_question" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="?" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_exclaim" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="!" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_quote_single" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="'" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_backspace" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="2" android:text="Del" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
</LinearLayout>
<!-- 第四行123 | abc | [Space ×3] | send -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView android:id="@+id/key_abc_switch" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="abc" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_space" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="4" android:text="Space" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
<TextView android:id="@+id/key_send" android:layout_width="0dp" android:layout_height="40dp" android:layout_weight="1" android:text="send" android:textSize="12sp" android:textColor="#A9A9A9" android:gravity="center" android:clickable="true"/>
</LinearLayout>
</LinearLayout>