Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 선형모델 분류
- 교차검증
- 취업성공패키지
- MSE
- 오픈소스깃허브사용
- gitclone
- 활성화함수
- semantic_segmentation
- 크롤링
- 2차프로젝트
- 백엔드
- 비스포크시네마
- ERD
- MVCmodel
- 손실함수
- 스마트인재개발원
- 2차 실전프로젝트
- 국비지원
- 프로젝트
- JSP/Servlet
- KNN모델
- 머신러닝
- springSTS
- 1차프로젝트
- 하이퍼파라미터튜닝
- randomForest
- 안드로이드
- 내일배움카드
- intent
- 취업연계
Archives
- Today
- Total
또자의 코딩교실
[스마트인재개발원] 이미지 슬라이드 앱 만들기 본문
이번엔 정신나간 강아지가 귀여운 이미지 슬라이드 앱을 만들어보자.
안드로이드 이벤트를 실습해볼 수 있는 아주 좋은 예제다.
✅ 안드로이드 Event란?
- 사용자가 핸드폰을 해서 하는 행위 뿐만 아니라 안드로이드 내의 상태를 감지하는 것
ex: 클릭, 화면터치, 더블클릭, ,app시작, 종료, 시스템 상태변화(배터리 부족, 메시지 등), 앱 활성화
- 안드로이드 이벤트 진행방식
- 폴링방식
- 터치하면 바로 처리함
- 터치하지 않는다면 내부적으로 터치하기까지를 계속 기다린다.
(무한으로 반복 >> CPU 프로세스를 많이 잡아먹음)
- 이벤트 구동방식(Event Driven방식)
- 다른 작업을 하고있을테니, 터치하면 알려주세요.
- 들어왔을떼, 그때만 처리하는 방식
- 안드로이드 이벤트 적용방법
- Xml에서 Onclick속성에 메소드를 연결하는 방법
- 인터페이스를 클래스에 구현하는 방법
- 추상메소드를 Overriding해야한다.
- 공통된 기능을 구현할 때 사용한다.
다시 실습으로 돌아와서, 화면 레이아웃 구성은 다음과 같다.
다음은 구현코드다.
package com.example.app211126;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
public class MainActivity4 extends AppCompatActivity implements View.OnClickListener{
//이미지배열 생성
int[] imgArr = {R.drawable.dog_1, R.drawable.racoon_2, R.drawable.cat_3};
//이미지 뷰 지정
ImageView imageView;
//버튼 지정
Button previous, next;
int num=0; //이미지 배열의 숫자
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main4);
initView();
}
private void initView() {
imageView = findViewById(R.id.dog1);
//image를 변경하는 메소드ㅡ 직접 변경
//imageView.setImageResource(R.drawable.cat_3);
//배열에 요소값으로 적용
}
@Override
public void onClick(View view) {
Log.v("Onclick","클릭이벤트 발생!"); //눌렀을때 정말 눌렀는지 확인하기
int viewId = view.getId(); //view에서 해당하는 객체를 가져오는 것
if (viewId == R.id.previous){
num--;
if(num<0) {
num=imgArr.length-1; //길이는 3인데 하나빼줘야 마지막 인덱스 값이 나오므로 1을 빼주자.
}
}else{
num++;
if(num>=imgArr.length) {
num=0;
}
}
imageView.setImageResource(imgArr[num]);
}
}
'코딩공부 > Android' 카테고리의 다른 글
대충 생각하는 개인 프로젝트 스케치 (0) | 2022.04.16 |
---|---|
[스마트인재개발원] 주사위 게임 예제 만들기 (0) | 2022.01.03 |
[스마트인재개발원] Constraint Layout에서 Chain 사용하기 (0) | 2022.01.03 |
[스마트인재개발원]Android - intent (0) | 2021.12.27 |
[스마트인재개발원] Android - 개요 (0) | 2021.12.24 |
Comments