반응형

안드로이드 스튜디오 앱 개발 63

[Android Studio] 탭 레이아웃(TabLayout)으로 프래그먼트 화면전환하기

​오늘은 탭 레이아웃을 이용하여 각각 다른 탭을 누를 때마다 프레임 레이아웃 안에서 프래그먼트가 탭에 따라 전환되는 코드를 알아보도록 하겠습니다. 우선 탭 레이아웃과 프레임 레이아웃으로 구성된 xml 파일을 만듭니다. 간단하게 리니어 레이아웃(Orientation : Vertical)을 만들어 그 안에 TabLayout과 FrameLayout을 위 사진처럼 만들어줍니다. ​TabLayout 코드 안에 있는 tabIndicatorColor는 탭을 눌렀을 때 이 탭을 선택하고 있다는 표시를 할 색상을 의미하고, tabSelectedTextColor는 탭을 눌렀을 때 탭의 제목에 이 탭을 선택하고 있음을 표시하는 색상을 의미합니다. 이렇게 xml 파일을 만들었으면 필요한 만큼 Fragment를 만들어줍니다. ..

[Android Studio] 뷰결합(viewBinding)에 대해 알아보자, 뷰결합 초간단 설정 방법

안드로이드 앱 개발에서 ViewBinding은 XML 레이아웃 파일과 JAVA 코드를 연결하는 강력한 도구입니다. 이 기능을 통해 findViewById() 메서드를 사용하지 않고 뷰 요소에 쉽게 액세스할 수 있다는 장점을 가지고 있습니다. 이번 포스팅에서는 안드로이드 스튜디오 ViewBinding을 사용하는 방법과 코드 예제를 알아보도록 하겠습니다. ViewBinding?? ViewBinding은 Android Studio 3.6 Canary 11 이상에서부터 사용할 수 있는 개념인데, 이 기능을 활용하여 뷰와 상호작용을 쉽게 할 수 있습니다. ViewBinding이 findViewById를 대체하기 때문에 레이아웃에 ID가 있는 모든 뷰의 직접 참조가 포함됩니다. 쉽게 말하면 findViewById를..

[ Android Studio ] 깜빡이는 애니메이션(Animation) 텍스트뷰(TextView) 만들기 + 시한폭탄 예제

이와 같은 깜빡이는 애니메이션을 가진 텍스트뷰를 만드는 법에 대해 알아보도록 하겠습니다. 이런 깜빡이는 애니메이션을 사용할 때 어떤 코드를 사용하는지 보도록 하자면 이와 같은 코드로 간단히 작성할 수 있습니다. animation = new AlphaAnimation(0.0f, 1.0f); 깜빡거릴때 투명도를 설정하는 클래스입니다. 괄호안에 들어있는 실수 값은 투명도의 범위를 의미하며 범위 값은 0.0부터 1.0까지 입니다. animation.setDuration(100); 깜빡이는 애니메이션이 지속되는 시간을 의미합니다. 단위는 millisecond로 1000에 1초이며, 여기서는 0.1초를 의미합니다. animation.setStartOffset(10); 시작 시간을 기준으로 깜빡이는 애니메이션을 시작..

[Android Studio] 액티비티 전환 시 예약된 진동(스케줄러 취소하기)취소하기

이번 포스팅에는 안드로이드 스튜디오에서 액티비티 전환을 하다 이전 액티비티에서 실행해놓은 지정된 시간에 울릴 진동이 다른 액티비티로 전환하였음에 불구하고 계속해서 진행되는 문제를 다루어 보려 합니다. 우선 MainActivity와 vibrationActivity가 있는데 vibrationActivity에서 vibrator를 이용하여 40초가 경과했을 경우 진동이 울리게 작동시키는 버튼 button_bomb_random을 만들어놓았습니다. 그리고 intent를 이용하여 vibrationActivity에서 MainActivity로 돌아갈 수 있도록 해두었습니다. Vibrator vibrator = (Vibrator)getSystemService(Context.VIBRATOR_SERVICE); //vibrat..

[ Android Studio ] 2자리 코드를 이용한 뷰에 투명도 적용하기

안드로이드 스튜디오에서 2자리 코드를 입력하여 뷰에 투명도를 설정하는 방법에 대해 알아보도록 하겠습니다. ​위 코드처럼 완전 연두색을 나타내는 뷰의 투명도를 설정하기 위해서 따로 투명도를 설정하는 것이 아니android:background = ""에서 영문과 숫자로 이뤄진 2자리 코드를 넣어야 합니다. 투명도를 나타내는 2자리 코드는 아래와 같습니다. 100% — FF 99% — FC 98% — FA 97% — F7 96% — F5 95% — F2 94% — F0 93% — ED 92% — EB 91% — E8 90% — E6 89% — E3 88% — E0 87% — DE 86% — DB 85% — D9 84% — D6 83% — D4 82% — D1 81% — CF 80% — CC 79% — C9 7..

[Android Studio] android.content.res.Resources$NotFoundException: String resource ID #0x5 에러 발생 해결하기

숫자를 출력하기 위해 setText를 사용하다 위와 같은 오류 메시지를 발견할 때가 있습니다. android.content.res.Resources$NotFoundException: String resource ID Random random = new Random(); int number_max = getIntent().getExtras().getInt("number_max"); int number_min = getIntent().getExtras().getInt("number_min"); Log.d(TAG,"최대값 : "+number_max); Log.d(TAG,"최소값 : "+number_min); int randomNum = random.nextInt(number_max); textView_numb..

[Android Studio] textView에 null 값 체크하는 코드 알아보기

textView에 아무것도 입력되지 않은 공백 상태임을 확인하기 위한 코드를 알아보도록 하겠습니다. if(textView.getText().toString().equals("")){ --코드-- } 이렇게 textView의 텍스트를 가져와 ""(공백)과 동일한지 equals를 이용하여 확인시켜주므로 null 값을 체크할 수 있습니다.

[Android Studio] 안드로이드 스튜디오 어댑터(Adapter)에 int형 값을 addItem 하는 방법과 예제 알아보기

오늘은 어댑터에 int형으로 있는 값을 addItem으로 추가하는 방법에 대해 알아보도록 하겠습니다. 위 사진처럼 '제외된 숫자' 칸에 입력한 숫자들이 RecyclerView에 각각 int형의 숫자인 item으로 격자 형식을 이뤄 4개씩 배열이 되어있는 것을 확인할 수 있습니다. recyclerView_setting = findViewById(R.id.recyclerView_setting); TextView textView_number_except = findViewById(R.id.editTextNumber_except); button_add = findViewById(R.id.button_add); GridLayoutManager layoutManager = new GridLayoutManager(t..

[Android Studio] 격자 리사이클러뷰(RecyclerView) 사용방법 및 예제 알아보기

오늘은 단순한 리사이클러뷰 생성이 아닌 격자 모양의 리사이클러뷰를 생성하여 각각의 아이템들이 배치되는 화면을 만들어보도록 하겠습니다. 격자 리사이클러뷰는 아래 사진과 같이 아이템뷰가 한줄에 여러개가 들어가 화면을 이루고 있는 것을 확인할 수 있습니다. 이전에 소개해드렸던 일반 리사이클러뷰와 격자 리사이클러뷰는 코드상 크게 다른 것이 없습니다. 일반 recyclerView를 만들 때 LinearLayoutManager를 이용하여 recyclerView에 setLayoutManager를 한 후 adapter를 적용시킵니다 LinearLayoutManager layoutManager = new LinearLayoutManager(this); recyclerView.setLayoutManager(layoutMa..

[Android Studio] java for문에 대해 쉽게 알아보자 그리고 for문을 이용한 반복작업

코드 작성을 해보신 분이라면 for 문은 한 번쯤 들어보셨을 텐데요. for 문은 정말 긴 반복되는 코드를 짧게 처리할 수 있도록 도와주는 친구입니다. 오늘은 for 문의 구조와 for 문을 이용한 예시를 한 번 알아보도록 하겠습니다. ​For 문이란? For(초기값; 조건식; 증감식;){ 반복할 코드; } 이렇게 For 문은 이루어져 있습니다. 초깃값이 조건식에 만족할 때 '반복할 코드'를 실행하며 증감식에 의해 초깃값이 계속 변경되어도 조건식에 여전히 만족하고 있다면 '반복할 코드'를 계속해서 실행하는 것이 바로 For 문의 기본입니다. 이렇게 길게 반복되는 else if를 포함한 if 문이 있습니다. int[] item = {2,4,6,8,10,12,14}; int number = 10; if(it..

반응형