android studio를 이용한 안드로이드 프로그래밍 7판에 나온 모든 내용이다.

팀 프로젝트를 위해 공부를 시작했고 내가 맡은 분야는 앱 개발이다.
사실상 해당 분야에 대한 지식이 전무하니 공부를 처음부터 시작해야 한다.


  1. 안드로이드 스튜디오 설치
    생략. (왜냐하면 책이나 구글에 너무나 잘 나와있기 때문에 이 부분 진행과정을 기술하는 건 비효율적이기 때문이다)

먼저 버튼을 만들어 준다.
잘 몰랐었는데 화면에 있는 Design으로 가면 버튼의 위치나 여러가지 설정을 코딩 없이(studio가 자동완성) 편하게 설정해줄 수 있다.

그런데 constraintlayout인지 linearlayout인지 정확하게 알고 넘어가야 했다.
별 생각없이 지나쳤다가 꽤 많은 시간을 낭비했다.

제 경우에는 Design에서 버튼을 이리저리 옮기다가

한 놈이 제멋대로 움직여서 고충을 겪었다.

계속 생각하고 구글링 하다가 저 둥그란 녀석을 드래그해서 다른 항목에 놓아주면 관계가 맺어진다는 어떤 블로그 글이 생각나서 해봤다.
어우 감사하게도 해결되었다!!! 그래서 임시로 디자인을 저렇게 했고 각 버튼에 맞는 기능을 구현했다.

안드로이드 스튜디오를 배워가면서 발견한 게 있다면 안드로이드 스튜디오는 화면 자체를 구현하는 .xml 파일이 있고 화면에 맞는 기능을 구현하는 .java파일이 있고 androidmanifest.xml라는 뭐 필수구성요소를 넣어주는 녀석이 있다는 것이다. 그래서 단계를 보면 먼저 xml 파일에서 화면을 디자인하고 그에 맞는 기능들을 java 파일에 넣어주는 것이다.

자 그럼 화면을 만들었으니 그에 맞는 기능을 구현해보자.

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
}

제일 처음 MainActivity[activity_main.xml(방금 디자인했던 화면의 xml 파일 이름)에 대한 기능을 구현하는 java 파일]은 이렇게 된다. onCreate 즉 처음 만들어지면 아래와 같이 해줘 라는 느낌. 참고로 java에서 xml을 참조하는 방법은 xml에서 각 구성요소에 부여한 고유의 id를 java로 받아주는 것이다. 코드를 보면 쉽게 이해할 수 있다.

**MainActivity.java**

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;

public class MainActivity extends AppCompatActivity {
	Button button1;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        button1 = (Button) findViewById(R.id.button1);
    }
}
**activity_main.xml**
    <Button
        android:id="@+id/button1"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginEnd="5dp"
        android:text="@string/strBtn1"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toEndOf="@+id/guideline3"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        tools:ignore="MissingConstraints" />

저렇게 id를 받아오고 그에 맞는 기능을 java에 주가해준다.

**MainActivity.java**
        button1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent mIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://m.naver.com"));
                startActivity(mIntent);
            }
        });

클릭하면 아래 있는 거 실행해줘. 라고 하는 거다. 무튼 이런 기본적인 내용들을 습득했고
다음은 이게 왜 안되지? 이게 왜 안돼?!?!?!? 시리즈로 찾아 오겠다.

p.s. 이 외에도 intent로 화면 전환, 대화상자 띄우기, 간단한 일기 쓰기, SQLite에 대한 공부와 에피소드가 있다!!!

profile
SuccessiveP

0개의 댓글