'안드로이드'에 해당되는 글 3건

  1. 2015.05.27 안드로이드 생명주기
  2. 2015.05.27 객체의 직렬화
  3. 2015.05.26 부분 화면 뿌리기
기초/android2015. 5. 27. 11:53


액티비티의 상태 정보가 변화하는 것을 액티비티의 생명주기 라고 한다




onCreate()

: 액티비티가 처음에 만들어졌을 떄 호출됨

  화면에 보이는 뷰들의 일반적인 상태를 설정하는 부분

  이전 상태가 저장되어 있는 경우에는 번들 객체를 찾조하여 이전 상태 복원 가능

  이 메소드 다으메는 항상 onStart() 메소드가 호출됨


onStart()

 : 액티비티가 화면에 보이기 바로 전에 호출됨

   액티비티가 화면 상에 보이면 이 메소드 다음에 onResume() 메소드가 호출

   액티비티가 화면 상에 가려지게 되면 이 메소드 다음에 onStop 메소드가 호출됨


onResume()

 : 액티비티가 사용가와 상호작용하기 바로 전에 호출됨


onRestart()

 :  액티비티가 중지된 이후에 호출되는 메소드로 다시 시작되기 바로 전에 호출됨

    이 메소드 다음에는 항상 onStart() ghcnfehla


onPause()

 : 또 다른 액티비티를 시작하려고 할 때 호출

   저장되지 않은 데이터를 저장소에 저장하거나 애니메이션 중인 작어을 중지한는 등의 기능을 수행하는 메소드임

   이 메소드가 리턴하기 전에는 다음 액티비티가 시작 될 수 없으므로 이 작업은 매우 빨리 수행된 후 리턴되어야 함

   액티비티가 이 상태에 들어가면 시스템은 액티비티를 강제 종료할 수 있음


onStop()

 : 액티비티가 사용자에게 더 이상 보이지 않을 때 호출됨

   액티비티가 소멸되거나 또 다른 액티비디가 화면을 가릴 때 호출

   액티비티가 이 상태에 들어가는 시스템은 액티비티를 강제 종료할 수 있음


onDestory()

 : 액비티비티가 소멸되어 없어지기 전에 호출됨

   이 메소드는 액티비티가 받는 마지막 호출이 됨

   액티비티가 어플리케이션에 의해 종료되거나(finish() 메소드 호출) 시스템이 강제로 종료시키는 경우에 호출될 수 있음

   위의 두 가지 경우를 구분할 때 isFinishing() 메소드를 이용함

  액티비티가 이 상태에 들어가면 시스템은 액티비티를 강제 종료할 수 있음




위의 메소드는 오버라이드로 호출한다



Ctrl + o를 눌러





상태정보를 저장할 때는 onPause() 부분에 저장


불러올때는 onResume()에서 실행

  


'기초 > android' 카테고리의 다른 글

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
Posted by ICT 기술 블로그
기초/android2015. 5. 27. 10:25

인텐트를 사용하여 데이터를 전달할 때 많은 데이터들을 하나씩 보내기는 번거로우니

직렬화를 시켜 한번에 데이터를 전달한다.




class Person{

string name;

int age;

}


Person P = new Person(홍길동, 20);



메모리에 따로 저장되어 있기 때문에 이것을 직렬로 만들어 줘야 된다






그래서 Serializable 인터페이스를 상속 받아 내부맴버변수들을 모두 직렬화하여 객체를 만든다.


class Person implement Serialzable{


private static final long serialVersionUID = 1000000L;

String name;

int age;

}




예제


MainActivity.java


Person p = new Person();
p.setName("홍길동");
p.setAge(20);
Intent in = new Intent(getApplicationContext(),SecondActivity.class);
in.putExtra("person",p);
startActivity(in);



SecondActivity.java

Intent intent = getIntent();
Person p = (Person) intent.getSerializableExtra("person");
String name = p.getName();
int age = p.getAge();


Person.java

public class Person implements Serializable {
String name;
int age;

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}
}








'기초 > android' 카테고리의 다른 글

안드로이드 생명주기  (0) 2015.05.27
intent  (0) 2015.05.27
어플리케이션 4가지  (0) 2015.05.26
부분 화면 뿌리기  (0) 2015.05.26
RelativeLayout  (0) 2015.05.21
Posted by ICT 기술 블로그
기초/android2015. 5. 26. 10:43
LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
//시스템서비스로부터 얻어오기
LinearLayout sublayout = (LinearLayout) findViewById(R.id.sub_activity);
//activity안에 화면을 뿌릴 리니어 레이아웃 얻어오기(부모 얻어오기)

inflater.inflate(R.layout.activity_sub, sublayout,true);
//부모안에 activity_sub를 인플레이트 시킨다.



'기초 > android' 카테고리의 다른 글

객체의 직렬화  (0) 2015.05.27
어플리케이션 4가지  (0) 2015.05.26
RelativeLayout  (0) 2015.05.21
RadioGroup  (0) 2015.05.20
안드로이드 widget 참고사항  (0) 2015.05.20
Posted by ICT 기술 블로그