분류 전체보기 (51) 썸네일형 리스트형 RecyclerView에서 이미지 클릭하면 삭제 관련 AlertDialog뜨게 하기 ◎ callbook 예제 코드수정 ○ 2023.07.12 - [모바일 프로그래밍(Android Studio)] - RecyclerView에서 하나의 행을 삭제하기 package com.example.callbook.adapter; import android.app.Activity; import android.content.Context; import android.content.DialogInterface; import android.util.Log; import android.view.View; import android.widget.ImageView; import android.widget.TextView; import androidx.annotation.NonNull; import androidx... RecyclerView에서 하나의 행을 삭제하기 ◎ 예시) package com.example.callbook.model; public class Call { public String name; public String phone; } package com.example.callbook.adapter; import android.content.Context; import android.content.DialogInterface; import android.util.Log; import android.view.View; import android.widget.ImageView; import android.widget.TextView; import androidx.annotation.NonNull; import androidx.appcompat.app.A.. RecyclerView사용 (화면에 리스트 보이게 하기) ◎ 예시) ◎ 메모입력란에 원하는 문장을 입력하고 저장버튼을 누를때마다 밑에 입력한 문장이 리스트형식으로 나오게하는 앱을 만들어보자. ● 화면 1. 메인엑티비티에 여러개 리스트를 보여주는 공간인 RecyclerView 를 이용한다. 2. 리스트 안에서 보이게 될 하나의 행에대한 xml파일을 만들고, 행의 화면을 만들어준다. 3. model 패키지에 화면에 매칭하는 데이터들을 담을 즉 하나의 행에 대한 클래스를 만들어준다. package com.example.simplememo.model; public class Memo { public String content; } 4. 메모 클래스에있는 데이터와 메모 행에대한 xml파일의 화면을 연결해주는 java파일을 만든다. (MemoAdaptor) package.. 데이터를 파일로 저장해서 불러오기 ● 내가 만든 앱의 데이터들을 파일로 저장한다. ● 예시 ▶데이터를 보내는 엑티비티에서 // 이메일을 저장하자. SharedPreferences sp = getSharedPreferences("Register_App",MODE_PRIVATE); SharedPreferences.Editor editor = sp.edit(); editor.putString("email",email); editor.putString("password",password); editor.apply(); // 이걸 해줘야 적용된다. ○ SharedPreference에 저장(파일저장) ○ 저장소는 하나의 앱에서 여러개를 만들어줄 수 있다. ○ MODE_PRIVATE는 우리 앱에서만 쓸거다 다른데에 노출 말라라는 뜻이다. ▶데이터를 .. The activity lifecycle(활동 수명 주기) ● Activity의 활동 수명 주기란? : 사용자가 앱을 탐색하고, 앱을 나가고, 앱으로 다시 돌아가면, 앱의 Activity 인스턴스는 수명주기 안에서 서로 다른 상태를 통해 전환된다. Activity 클래스는 활동 상태 변화를 알 수 있는 여러 콜백을 제공한다. ○ 6가지 콜백 onCreate() : 사용자가 앱을 눌러서 앱이 생성될 때 가장 먼저 그리고 필수적으로 실행되는 함수이다. 앱의 설정들을 이 함수에 만들어준다. onStart(): 앱의 활동이 시작됨 상태에 들어가면 실행된다. 참고로 개발자들이 이 함수는 잘 안쓴다. onResume(): 활동이 재개됨 상태에 들어가며 실행된다. 방해되는 상태에 들어가면 활동은 일시중지 상태가 되고 시스템이 onPause(): 함수를 호출한다. 이 함수는 .. Timer 앱 ▶ xml 파일 ▶ mainActivity 파일 package com.example.timer; import androidx.appcompat.app.AlertDialog; import androidx.appcompat.app.AppCompatActivity; import android.content.DialogInterface; import android.os.Bundle; import android.os.CountDownTimer; import android.view.View; import android.widget.Button; import android.widget.TextView; public class MainActivity extends AppCompatActivity { TextView t.. 퀴즈 앱 만들기 ▶ 10개의 퀴즈가 있다, 이 퀴즈를 참 또는 거짓 버튼을 눌러 맞추는 앱을 만들것이다. 1. xml 파일로 화면 구성하기 더보기 android:max="10" ▷ progressBar의 최대치가 10이란 뜻 즉 progressBar를 10등분하여 한 문제 풀 때마다 바의 색이 1등분씩 체워진다. 2. Quiz 클래스 만들어주기 클래스를 만들기 전에 해당 클래스를 저장할 model 패키지를 만들어준다. package com.example.quiz.model; public class Quiz { public int question; public boolean answer; public Quiz(int question, boolean answer) { this.question = question; this... UI 위젯 기초, 실행화면 보기 ● UI 위젯이란? : 앱 위젯은 다른 애플리케이션(예: 홈 화면)에 삽입되어 주기적인 업데이트를 받을 수 있는 소형 애플리케이션 뷰이다. ○ 사용방법 1. 원하는 UI 위젯을 클릭한채로 빈화면에 끌어온다. 2. 위치 고정해주기 방법은 2가지가 있다. ▷ 위젯의 테두리에있는 하얀 동그라미를 이용하여 왼쪽, 오른쪽, 위, 아래에 연결한다. ▷ 오른쪽 Constraint Widget이용해서 사각형 상하좌우에있는 동그라미 클릭한다. 1. 상단 바에서 Device Manager클릭 - Create device클릭 2. app의 manifests의 AndroidManiFest.xml파일 수정 더보기 3. 상단바에 재생버튼 클릭 앱 생성 기초 1. File클릭 - New의 New Project 클릭 - No Activity 클릭 - Next클릭 - 작성 후 Finish클릭 Name: 프로젝트 이름 Package name: 거꾸로 되어있어서 마지막에는 앱 이름이 들어간다, example부분에 내 아이디를 넣으면 유니크해진다. Language는 Java 선택 ▷ 원래 Empty Activity 선택하면 자바인지 코틀린인지 고를 수 있는 부분이 있었는데 이제는 구글에서 코틀린을 밀고있어서 Empty Activity는 코틀린으로 설정되어있다. ○ Gradle Scripts: 개발환경 / build.gradle 똑같은거 2개있는데 헷갈리면 안된다, 라이브러리 설치할때 필요 (dependencies부분) ○ app → manifests → Android.. Try~Catch문, NullPointException 에러 예시) package model; import java.util.ArrayList; public class Student { public String name; public ArrayList subjectList; } package main; import model.Student; public class Main { public static void main(String[] args) { Students1 = new Student(); s1.name = "홍길동"; s1.subjectList.add("자바"); } } ▷ 위의 코드를 실행하면 에러가 난다! ▶ 이럴 땐, try ~ catch문을 이용해서 서비스를 이용하는 유저에게 에러가 났다고 알려줘야한다. package main; import mode.. 이전 1 2 3 4 5 6 다음