본문 바로가기

프로그래밍/안드로이드

(38)
[안드로이드 오류] getColor deprecated deprecated : (신조어) 중요도가 떨어져 더 이상 사용되지 않고 앞으로는 사라지게 될 (컴퓨터 시스템 기능 등) 안드로이드 API 23버전 이후에서는 getColor 메서드가 deprecated 되었다. 따라서 코드를 적절하게 수정해주어야 한다. int textcolor = res.getColor(R.color.textcolor); text.setTextColor(textcolor); 위 코드를 아래 처럼 바꾸어준다. int textcolor = ContextCompat.getColor(this, R.color.textcolor); text.setTextColor(textcolor);
[안드로이드] 생명주기 1. 액티비티의 일생 생명주기(Life Cycle) : 액티비티가 시작, 실행, 활성, 비활성화 ,정지, 종료되는 일련의 상태를 순환하는데 이것을 생명주기라고 한다. 시스템은 태스크(Task)의 실행 중인 액티비티를 스택(Stack)으로 관리한다. 새 액티비티가 제일 위에 배치되고, 제일 위 액티비티가 종료되면 바로 아래쪽에 있는 액티비티가 활성화된다. 스택(Stack)상 액티비티는 다음과 같은 3가지 상태중 하나이다. 실행(active, running) : 사용자가 직접 사용하는 상태이다. 스택의 제일 위에 있으며 화면상에서도 제일 위에 있다. 입력 포커스를 가지며 사용자의 입력을 직접 처리한다. 정지(stopped) : 다른 액티비티에 의해 가려진 상태이며 사용자 눈에 보이지 않는다. 그러나 정보를 ..
[안드로이드] 액티비티(Activity)와 인텐트(Intent) 1. 액티비티 추가 액티비티(Activity)는 사용자와의 인터페이스를 만들지만 자체 출력기능이 없다. 사용자에게 실제로 보여지는 부분은 뷰(View) 또는 뷰그룹(ViewGroup)에 해당한다. 액티비티가 생성될 때(onCreate)마다 호출되는 setContentView 메서드가 액티비티안에 뷰를 배치하는 명령이다. 액티비티 하나는 독립된 기능을 수행하며 액티비티끼리 중첩되지 않는다는 것도 뷰와 다른 점이다. 일단 새로운 액티비티를 추가한 뒤, 액티비티간에 통신하는 코드를 구성할 것이다. 메인 액티비티 → CALL 버튼 → 서브 액티비티 < 호출을 실시할 코드(main) > < 호출을 실시할 xml> < 호출이 될 코드(sub) > < 호출이 될 xml > 간단하게 정리하면 액티비티 간 통신을 하기 ..
[안드로이드] 커스텀 대화상자(Custom Dialog) ※ 저는 안드로이드 프로그래밍 정복(김상형 著, 한빛미디어) 책을 이용해 공부하고 있으며예제와 코드는 이 책을 통해 공부중임을 밝힙니다.개인적인 공부를 하면서 정리한 형식이기 때문에 심각한 오류가 있을 수 있습니다. 피드백 주시면 정말 감사하겠습니다.※ 안드로이드 프로그래밍 정복 820p~831p 1. 커스텀 대화상자 여러 정보를 보여주거나, 입력받으려면 궁극적으로 커스텀 뷰를 사용한다. AlertDialog.Builder setView (View view) View로부터 파생된 임의의 뷰를 대화상자 안에 배치할 수 있으며 뷰그룹도 가능하다. 스피너를 한번 달아보려고 했는데 실패했다. ㅠㅠ 기본 레이아웃 1. 레이아웃을 하나 더 만들어줘야 한다. public class ExerciseExam extend..
[안드로이드] 대화상자 ※ 저는 안드로이드 프로그래밍 정복(김상형 著, 한빛미디어) 책을 이용해 공부하고 있으며예제와 코드는 이 책을 통해 공부중임을 밝힙니다.개인적인 공부를 하면서 정리한 형식이기 때문에 심각한 오류가 있을 수 있습니다. 피드백 주시면 정말 감사하겠습니다.※ 안드로이드 프로그래밍 정복 787~802p 1. 대화상자(AlterDialog) 토스트(Toast)는 사용자에게 메시지를 전달하지만 자동으로 닫힌다. 좀 더 복잡한 메시지를 전달할 때 대화상자가 적절하다. public class ExerciseExam extends AppCompatActivity { public class AlertDialogTest extends Activity { public void onCreate(Bundle savedInstan..
[안드로이드] 커스텀 위젯(Custom Widget) ※ 저는 안드로이드 프로그래밍 정복(김상형 著, 한빛미디어) 책을 이용해 공부하고 있으며예제와 코드는 이 책을 통해 공부중임을 밝힙니다.개인적인 공부를 하면서 정리한 형식이기 때문에 심각한 오류가 있을 수 있습니다. 피드백 주시면 정말 감사하겠습니다.※ 안드로이드 프로그래밍 정복 1판 참조 커스텀 : 내 입맛대로 만들겠다!커스텀 위젯 : 내 입맛대로 위젯을 만들겠다! 안드로이드가 커스텀 위젯 제작을 지원하는 방법 1. 기존 위젯 클래스를 상속 → 기능을 확장하거나 수정 2. 단순한 기능을 제공하는 위젯을 결합하여 복잡한 동작을 수행하는 위젯 그룹을 정의 VIewGroup이나 파생 클래스를 확장하여 만든다. 3. 기존에 없었던 새로운 위젯을 만든다. 최상위 위젯 클래스 VIew로부터 상속받는다. < 1번 ..
[안드로이드] 캘린더 뷰(Calendar View) firstDayOfWeek : 제일 왼쪽의 첫 요일 (디폴트 1 : 일요일이 시작, 2: 월요일이 시작)minDate : 달력에 표시할 최소 날짜maxDate : 달력에 표시할 최대 날짜focusedMonthDateColor : 현재 선택된 달의 배경 색상selectedWeekBackgroundColor : 선택된 주의 배경 색상unfocusedMonthDateColor : 선택되지 않은 달의 배경 색상showWeekNumber : 왼쪽에 "1주차, 2주차, 3주차... "를 보여줄 것인가를 지정 (디폴트는 true)weekNumberColor : "주(週)"차의 색상을 지정weekSeparatorLineColor : 주 사이의 구분선. 디폴트는 투명한 색selectedDateVerticalBar : 선..
[안드로이드] 스크롤뷰(ScrollView) public class ExerciseExam extends AppCompatActivity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_excercise_exam); ScrollView svw = (ScrollView)findViewById(R.id.scr);//svw.setScrollBarStyle(View.SCROLLBARS_INSIDE_INSET); // 스크롤 바 스타일 //svw.setVerticalFadingEdgeEnabled(false); //svw.setVerticalScrollBarEnabled(false); svw..