본문 바로가기

전체 글1417

[HTML / CSS] 텍스트 세로 중앙 방향으로 중앙정렬 하기 안녕하세요 오늘은 HTLM과 CSS를 통하여 텍스트를 세로와 중앙 방향으로 중간정렬 하는 방법에 대해 알아보아요 텍스트는 어떻게 세로로 정렬을 할 수 있을까요? 텍스트는 기본적으로 display속성값이 inline이고 height가 정해지지 않았기 때문에 이미지와는 다른 방법이 필요합니다. 물론 이를 해결하기 위한 다양한 방법이 존재합니다. 이 모든 방법들 중에서 가장 대표적인 방법은 아래와 같습니다. 하나하나 확인해보세요. 1. 첫 번째, line-height를 사용하기line-height를 사용하면 가장 쉽게 중앙 정렬할 수 있습니다. 예를들어 height가 100px인 경우 동일하게 line-height값을 100px을 설정합니다. TEST 위 코드는 아래와 같이 출력됩니다. 보시는 것처럼 세로 정.. 2021. 10. 18.
[JAVA][Android] Messenger를 통해 Service 인터페이스 생성 Messenger를 통해 Service 의 인터페이스를 생성해 Activty에서 Service로 정보를 보내고 Service에서 Messenger로 정보를 다시 보내는 부분을 보여드리겠습니다. https://stickode.com/detail.html?no=2531 스틱코드 stickode.com 위 StickCode 게시물을 즐겨찾기 한후에 위와 같이 코드를 작성하면 아래의 Activity내용이 한꺼번에 입력이됩니다. 아까와 같이 Service에 대한 코드도 입력을 해줍니다. Activity의 레이아웃도 바꿔주는것 잊지마세요! Activity부분에서 글자를 입력하고 정보를 보내줄 수 있습니다. 받은 데이터를 Service 에서 "ServiceMessenger/send : ~~" 로그로 확인해 보실수 있.. 2021. 10. 17.
[JAVA][Android] 스레드로 애니메이션 만들기 스레드를 활용해 움직이는 애니메이션을 만들어 보겠습니다. 스틱코드에서 소스를 다운받아주세요! https://stickode.com/detail.html?no=2534 스틱코드 stickode.com 스레드는 하나의 프로세스 안에서 동시에 수행되어야 하는 작업을 위해 사용합니다. 먼저 XML파일을 만들어 줍니다. 하트 이미지가 들어갈 imageview영역과 버튼을 한개씩 만들겠습니다. 다음으로 애니메이션 액티비티를 생성해 줍니다. 스레드는 new연산자로 객체를 생성하고, start메서드를 호출하면 실행됩니다. package com.example.myapplication.cookStargram; import android.annotation.SuppressLi.. 2021. 10. 16.
[JAVA][Android] Option Menu 만들기 안녕하세요 이번 시간에는 옵션 메뉴를 만들어 보겠습니다. 화면 우측 상단 버튼을 클릭하면 메뉴 드롭다운이 생성되고 클릭하면 토스트 메시지가 띄어집니다. 먼저 아래 스틱코드 링크에서 즐겨찾기 추가를 해주세요 https://stickode.com/detail.html?no=2526 스틱코드 stickode.com *결과 res에서 menu 폴더를 만들어서 main_menu 파일을 만들어주세요. 1. MainActivity.java 2. activity_main.xml 3. main_menu.xml 2021. 10. 15.
[JAVA][Android] Loding 프로그레스바 만들기 안녕하세요 오늘은 원형 프로그레스바, 막대형 프로그레스바 화면을 만들어 보겠습니다. 버튼에 따라 로딩이 진행되는 화면이 나타납니다. *결과 먼저 아래 스틱코드 링크에서 즐겨찾기 추가를 해주세요 https://stickode.com/detail.html?no=2522 스틱코드 stickode.com 1. MainActivity.java import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; import android.app.ProgressDialog; import android.os.Bundle; import android.os.Handler; import android.os.Message; import and.. 2021. 10. 14.
[JAVA][Android] 키보드에 검색버튼 구현하기 안드로이드 개발을 하다 보면 키보드 액션에 특정 이벤트를 주고 싶은 때가 있습니다. 키보드의 다음 버튼을 누르면 키보드가 사라지면서 다음 화면으로 넘어간다던지 키보드의 검색 버튼을 누르면 무언가를 검색할 수 있도록 한다던지 등입니다. 이런 경우에 사용할 수 있는 안드로이드 API가 있습니다. OnEditorActoinListener 가 그것입니다. OnEditorActionListener는 네 가지 단계에 걸쳐 프로젝트에 적용할 수 있습니다. 1. 해당 클래스에 OnEditorActionListener 인터페이스를 implement한다(OnEditorActionListener를 import한다). 2. onEditorAction() 메소드를 오버라이드한다. 3. onEditorAction() 메소드 내에.. 2021. 10. 14.
[JAVA][Android] Logger 라이브러리 사용하기 안녕하세요. 이번 시간에는 로거 라이브러리를 사용하여 로그를 좀 더 보기 쉽게 찍어 보도록 하겠습니다. 저는 이 로거 라이브러리를 사용하는 이유가 2가지가 있습니다. 첫 번째 이유는 JSON 형태의 데이터를 좀 더 보기 쉽게 찍을 수 있다는 장점이 있습니다. 두 번째 이유는 Logcat에 찍힌 로그를 클릭하면 스크립트 위치로 바로 갈 수 있습니다. 사용 방법은 다음과 같습니다. 1. 의존성 주입 App Grddle에 다음과 같이 의존성을 주입해 줍시다. // logger implementation 'com.orhanobut:logger:2.2.0' 2. Application Class 만들어 로그 추가하기 Logger을 사용할 때 Application를 상속받는 Class에 선언해주면 보다 편리하게 사용.. 2021. 10. 13.
[JAVA][Android] 안드로이드 LocalDateTime 사용법 2 (비교, 기간 구하기) 안녕하세요. 저번시간에서는 LocalDateTime 객체를 생성해서 날짜나 시간을 관리하는 방법에 대해 배웠는데요. 이번에는 LocalDateTime 객체 2개를 서로 비교하는 메서드와 두 객체간의 기간 차이를 구하는 방법에 대해 알아보겠습니다. 객체 비교하기 LocalDateTime 객체는 두개의 객체를 서로 비교할 수 있습니다. 누가 더 이전의 날짜인지, 또는 같은 날짜인지 등을 비교비교하여 boolean 값으로 받을 수 있습니다. LocalDateTime startDT = LocalDateTime.of(2021, 8, 14,19,32,22); //8월 14일 LocalDateTime endDT = LocalDateTime.of(2021, 8, 15,19,32,22); // 8월 15일 //start.. 2021. 10. 12.
[JAVA][Android] MVP 패턴 익혀보기 이전에 배운 MVC 패턴에 이어서 이번에 배울 패턴은 MVP 패턴입니다. 어딘가 비슷하면서도 다른것 같은데 함께 알아볼까요? MVP 패턴이란? MVP 패턴이란 Model, View, Presenter의 첫 글자를 따서 이름이 지어졌습니다. MVP의 핵심 설계는 MVC와는 다르게 UI(View)와 비즈니스 로직(Model)을 분리하고, 서로 간에 상호작용을 다른 객체(Presenter)에 그 역할을 줌으로써 서로의 영향(의존성)을 최소화하는 것에 있습니다. Model 프로그램 내부적으로 쓰이는 데이터를 저장하고, 처리하는 역할을 함.(비즈니스 로직) View 또는 Presenter 등 다른 어떤 요소에도 의존적이지 않은 독립적인 영역임. View UI를 담당하며 안드로이드에서는 Activity, Fragm.. 2021. 10. 10.