안드로이드는 문자메세지 도착, 네트워크 환경변화 등이 발생하면 Broadcast 신호를 보는데, 이 신호를 받아 처리하는 것이 Receiver이다
1. 브로드 캐스트 수신자로 등록하여 글로벌 이벤트(전화, 문자 등과 같이 시스템 전체에 보내는 이벤트)
2. 인턴트 필드를 포함하며, Manifast 파일에 등록함으로써 이벤트를 받을 준비를 함
3. Context class 의 registerReceiver 메소드에 등록하면 런타임에도 수신 가능
안드로이드는 문자메세지 도착, 네트워크 환경변화 등이 발생하면 Broadcast 신호를 보는데, 이 신호를 받아 처리하는 것이 Receiver이다
1. 브로드 캐스트 수신자로 등록하여 글로벌 이벤트(전화, 문자 등과 같이 시스템 전체에 보내는 이벤트)
2. 인턴트 필드를 포함하며, Manifast 파일에 등록함으로써 이벤트를 받을 준비를 함
3. Context class 의 registerReceiver 메소드에 등록하면 런타임에도 수신 가능
액티비티의 상태 정보가 변화하는 것을 액티비티의 생명주기 라고 한다
onCreate()
: 액티비티가 처음에 만들어졌을 떄 호출됨
화면에 보이는 뷰들의 일반적인 상태를 설정하는 부분
이전 상태가 저장되어 있는 경우에는 번들 객체를 찾조하여 이전 상태 복원 가능
이 메소드 다으메는 항상 onStart() 메소드가 호출됨
onStart()
: 액티비티가 화면에 보이기 바로 전에 호출됨
액티비티가 화면 상에 보이면 이 메소드 다음에 onResume() 메소드가 호출
액티비티가 화면 상에 가려지게 되면 이 메소드 다음에 onStop 메소드가 호출됨
onResume()
: 액티비티가 사용가와 상호작용하기 바로 전에 호출됨
onRestart()
: 액티비티가 중지된 이후에 호출되는 메소드로 다시 시작되기 바로 전에 호출됨
이 메소드 다음에는 항상 onStart() ghcnfehla
onPause()
: 또 다른 액티비티를 시작하려고 할 때 호출
저장되지 않은 데이터를 저장소에 저장하거나 애니메이션 중인 작어을 중지한는 등의 기능을 수행하는 메소드임
이 메소드가 리턴하기 전에는 다음 액티비티가 시작 될 수 없으므로 이 작업은 매우 빨리 수행된 후 리턴되어야 함
액티비티가 이 상태에 들어가면 시스템은 액티비티를 강제 종료할 수 있음
onStop()
: 액티비티가 사용자에게 더 이상 보이지 않을 때 호출됨
액티비티가 소멸되거나 또 다른 액티비디가 화면을 가릴 때 호출
액티비티가 이 상태에 들어가는 시스템은 액티비티를 강제 종료할 수 있음
onDestory()
: 액비티비티가 소멸되어 없어지기 전에 호출됨
이 메소드는 액티비티가 받는 마지막 호출이 됨
액티비티가 어플리케이션에 의해 종료되거나(finish() 메소드 호출) 시스템이 강제로 종료시키는 경우에 호출될 수 있음
위의 두 가지 경우를 구분할 때 isFinishing() 메소드를 이용함
액티비티가 이 상태에 들어가면 시스템은 액티비티를 강제 종료할 수 있음
위의 메소드는 오버라이드로 호출한다
Ctrl + o를 눌러
상태정보를 저장할 때는 onPause() 부분에 저장
불러올때는 onResume()에서 실행
manifest (0) | 2015.05.28 |
---|---|
Broadcast Receiver (0) | 2015.05.28 |
intent (0) | 2015.05.27 |
객체의 직렬화 (0) | 2015.05.27 |
어플리케이션 4가지 (0) | 2015.05.26 |
xml
<RadioGroup
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/rg"
android:paddingTop="3dp">
<RadioButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="개"
android:id="@+id/radioDog" />
<RadioButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="고양이"
android:id="@+id/radioCat" />
<RadioButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="토끼"
android:id="@+id/radioRat" />
</RadioGroup>
java
final RadioGroup rg = (RadioGroup) findViewById(R.id.rg);if(rg.getCheckedRadioButtonId()==R.id.radioDog){
}
else if(rg.getCheckedRadioButtonId()==R.id.radioCat){
}
else if(rg.getCheckedRadioButtonId()==R.id.radioRat){
}
부분 화면 뿌리기 (0) | 2015.05.26 |
---|---|
RelativeLayout (0) | 2015.05.21 |
안드로이드 widget 참고사항 (0) | 2015.05.20 |
안드로이드 키보드 보이기/숨기기, 포커스 주기, 숫자입력 (0) | 2015.05.20 |
안드로이드 TextView 글자 크기 (0) | 2015.05.20 |
안드로이드 Textview 나 Button 글자 크기를 설정 할때 dp 나 sp 를 써야 한다
하지만 자바로 글자크기를 조정 할때 문제가 생긴다.
왜냐하면 자바에서 getTextSize를 하면 리턴값이 px로 받아오기 때문이다
따라서 이것을 변환 해주어야 한다
public static int dpToPx(int dp)
{
return (int) (dp * Resources.getSystem().getDisplayMetrics().density);
}
public static int pxToDp(int px)
{
return (int) (px / Resources.getSystem().getDisplayMetrics().density);
}
위와 같이 변환 하여 setTextSize 한다면 문제 없다
출처 : http://stackoverflow.com/questions/4605527/converting-pixels-to-dp
RadioGroup (0) | 2015.05.20 |
---|---|
안드로이드 widget 참고사항 (0) | 2015.05.20 |
안드로이드 키보드 보이기/숨기기, 포커스 주기, 숫자입력 (0) | 2015.05.20 |
안드로이드 설명 (0) | 2015.05.19 |
안드로이드 설정 (0) | 2015.05.19 |