상세 컨텐츠

본문 제목

[안드로이드] 숫자 맞추기 게임 Up&Down 만드는 방법 part1 - 화면 구성

안드로이드

by aries574 2022. 3. 28. 13:17

본문


 이번 시간에는 랜덤한 숫자를 생성하면,  사용자는 숫자를 입력해서

맞추는 게임을 만들어 보려고 합니다.  물론 무작정 맞추는 게 아니라

입력한 숫자가 랜덤한 숫자보다 큰지, 작은지 정도는 알려줍니다. 

그럼 화면구성부터 시작하겠습니다. 


목차

1. 실행 화면

2. 메인 화면 구성 activity_main.xml


1. 실행 화면

 

2. 메인 화면 구성 activity_main.xml

 - 설명 -

 1.  첫 번째 텍스트뷰는 사용자가 숫자를 입력했을 때

 Up인지 Down인지를 알려줍니다.

 2. 두 번째 텍스트뷰는 사용자가 입력한 숫자를 보여줍니다.

 3. 9개의 숫자 버튼을 구성하기 위해서 GridLayout을 사용했습니다.

 4. 가로(row) 4,  세로(column) 3으로 구성되었습니다. 

 5. 시작을 누르면 랜덤한 숫자가 생성되며, 숫자를 입력하고 정답 버튼을

누르면 맞았는지 틀렸는지 알려줍니다. 

6. 색상 res -> values -> colors.xml

<color name="purple_50">#CE93D8</color>
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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">

    <!-- 응답 -->
    <TextView
        android:id="@+id/response_text"
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:layout_marginStart="10dp"
        android:layout_marginTop="10dp"
        android:layout_marginEnd="10dp"
        android:layout_marginBottom="10dp"
        android:background="@android:color/holo_blue_light"
        android:gravity="center"
        android:textSize="30sp"
        android:textStyle="bold" />

    <!-- 정답 -->
    <TextView
        android:id="@+id/request_text"
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:layout_below="@id/response_text"
        android:layout_marginStart="10dp"
        android:layout_marginTop="10dp"
        android:layout_marginEnd="10dp"
        android:layout_marginBottom="10dp"
        android:background="@android:color/holo_green_light"
        android:gravity="center"
        android:textSize="30sp"
        android:textStyle="bold" />

    <!-- 4행 3열-->
    <GridLayout
        android:id="@+id/grid_layout"
        android:layout_width="match_parent"
        android:layout_height="300dp"
        android:layout_below="@id/request_text"
        android:layout_margin="20dp"
        android:columnCount="3"
        android:rowCount="4">


        <androidx.cardview.widget.CardView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_row="0"
            android:layout_column="0"
            android:layout_rowWeight="1"
            android:layout_columnWeight="1"
            android:layout_margin="8dp"
            app:cardCornerRadius="8dp"
            app:cardElevation="8dp">

            <Button
                android:id="@+id/btn1"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@color/purple_50"
                android:text="1"
                android:textColor="@android:color/white"
                android:textSize="30sp" />
        </androidx.cardview.widget.CardView>

        <androidx.cardview.widget.CardView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_row="0"
            android:layout_column="1"
            android:layout_rowWeight="1"
            android:layout_columnWeight="1"
            android:layout_margin="8dp"
            app:cardCornerRadius="8dp"
            app:cardElevation="8dp">

            <Button
                android:id="@+id/btn2"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@color/purple_50"
                android:text="2"
                android:textColor="@android:color/white"
                android:textSize="30sp" />

        </androidx.cardview.widget.CardView>

        <androidx.cardview.widget.CardView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_row="0"
            android:layout_column="2"
            android:layout_rowWeight="1"
            android:layout_columnWeight="1"
            android:layout_margin="8dp"
            app:cardCornerRadius="8dp"
            app:cardElevation="8dp">

            <Button
                android:id="@+id/btn3"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@color/purple_50"
                android:text="3"
                android:textColor="@android:color/white"
                android:textSize="30sp" />

        </androidx.cardview.widget.CardView>

        <androidx.cardview.widget.CardView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_row="1"
            android:layout_column="0"
            android:layout_rowWeight="1"
            android:layout_columnWeight="1"
            android:layout_margin="8dp"
            app:cardCornerRadius="8dp"
            app:cardElevation="8dp">

            <Button
                android:id="@+id/btn4"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@color/purple_50"
                android:text="4"
                android:textColor="@android:color/white"
                android:textSize="30sp" />
        </androidx.cardview.widget.CardView>


        <androidx.cardview.widget.CardView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_row="1"
            android:layout_column="1"
            android:layout_rowWeight="1"
            android:layout_columnWeight="1"
            android:layout_margin="8dp"
            app:cardCornerRadius="8dp"
            app:cardElevation="8dp">

            <Button
                android:id="@+id/btn5"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@color/purple_50"
                android:text="5"
                android:textColor="@android:color/white"
                android:textSize="30sp" />

        </androidx.cardview.widget.CardView>

        <androidx.cardview.widget.CardView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_row="1"
            android:layout_column="2"
            android:layout_rowWeight="1"
            android:layout_columnWeight="1"
            android:layout_margin="8dp"
            app:cardCornerRadius="8dp"
            app:cardElevation="8dp">

            <Button
                android:id="@+id/btn6"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@color/purple_50"
                android:text="6"
                android:textColor="@android:color/white"
                android:textSize="30sp" />
        </androidx.cardview.widget.CardView>

        <androidx.cardview.widget.CardView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_row="2"
            android:layout_column="0"
            android:layout_rowWeight="1"
            android:layout_columnWeight="1"
            android:layout_margin="8dp"
            app:cardCornerRadius="8dp"
            app:cardElevation="8dp">

            <Button
                android:id="@+id/btn7"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@color/purple_50"
                android:text="7"
                android:textColor="@android:color/white"
                android:textSize="30sp" />
        </androidx.cardview.widget.CardView>

        <androidx.cardview.widget.CardView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_row="2"
            android:layout_column="1"
            android:layout_rowWeight="1"
            android:layout_columnWeight="1"
            android:layout_margin="8dp"
            app:cardCornerRadius="8dp"
            app:cardElevation="8dp">

            <Button
                android:id="@+id/btn8"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@color/purple_50"
                android:text="8"
                android:textColor="@android:color/white"
                android:textSize="30sp" />
        </androidx.cardview.widget.CardView>

        <androidx.cardview.widget.CardView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_row="2"
            android:layout_column="2"
            android:layout_rowWeight="1"
            android:layout_columnWeight="1"
            android:layout_margin="8dp"
            app:cardCornerRadius="8dp"
            app:cardElevation="8dp">

            <Button
                android:id="@+id/btn9"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@color/purple_50"
                android:text="9"
                android:textColor="@android:color/white"
                android:textSize="30sp" />
        </androidx.cardview.widget.CardView>

        <androidx.cardview.widget.CardView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_row="3"
            android:layout_column="1"
            android:layout_rowWeight="1"
            android:layout_columnWeight="1"
            android:layout_margin="8dp"
            app:cardCornerRadius="8dp"
            app:cardElevation="8dp">

            <Button
                android:id="@+id/btn0"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@color/purple_50"
                android:text="0"
                android:textColor="@android:color/white"
                android:textSize="30sp" />
        </androidx.cardview.widget.CardView>

    </GridLayout>


    <Button
        android:id="@+id/start_btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/grid_layout"
        android:layout_alignParentStart="true"
        android:layout_marginStart="80dp"
        android:background="@color/purple_50"
        android:text="시작"
        android:textSize="25sp" />

    <Button
        android:id="@+id/answer_btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/grid_layout"
        android:layout_alignParentEnd="true"
        android:layout_marginEnd="80dp"
        android:background="@color/purple_50"
        android:text="정답"
        android:textSize="25sp" />

</RelativeLayout>

2022.03.27 - [안드로이드] - [안드로이드] 룰렛(Roulette) 쉽게 만드는 방법

 

[안드로이드] 룰렛(Roulette) 쉽게 만드는 방법

이번 시간에는 룰렛을 만들어 보겠습니다. 만드는 방법은 어렵지 않습니다. 간단하게 설명하면 라이브러리를 갖다 쓰기 때문에 사용자는 각 칸의 색깔과 아이콘과 텍스트만 정해주면 됩니다. 

aries574.tistory.com

2022.03.26 - [안드로이드] - [안드로이드] 리싸이클 러뷰(RecyclerView) 홀 수행, 짝수행 별 색상 다르게 하는 방법

 

[안드로이드] 리싸이클러뷰(RecyclerView) 홀수행, 짝수행 별 색상 다르게 하는 방법

이번 시간에는 RecyclerView에 보이는 아이템들 홀수, 짝수 별로 색상을 다르게 주는 방법을 알아보겠습니다. 목차 1. 실행 화면 2. 아이템 화면 만들기 3. 어뎁터 만들기 4. 메인 화면 구성 activity_main.

aries574.tistory.com

2022.03.25 - [안드로이드] - [안드로이드] 리스트뷰 (ListView) 홀수행, 짝수행 별 색상 다르게 하는 방법

 

[안드로이드] 리스트뷰 (ListView) 홀수행, 짝수행 별 색상 다르게 하는 방법

이번 시간에는 리스트뷰에 보이는 아이템들 홀수, 짝수 별로 색상을 다르게 주는 방법을 알아보겠습니다. 목차 1. 실행 화면 2. 메인 화면 구성 activity_main.xml 3. 메인 코드 구현 MainActivity.java 1. 실

aries574.tistory.com

반응형

관련글 더보기

댓글 영역