검색결과 리스트
글
액티비티는 화면 하나라고 생각하면 된다. 하지만 실제 보이는건 뷰이며 액티비티는 뷰 또는 뷰 그룹을 가져와야 보이는 것이다. 또한 액티비티끼리는 중첩되지가 않는다.
다음은 버튼을 이용한 액티비티의 화면 전환 예제이다.
먼저 xml을 이용하여 서로 다른 화면을 구성해 둔다.
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.app.Activity;
import android.content.Intent;
public class ImageViewActivity extends Activity{
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button m_btn = (Button)findViewById(R.id.m_btn);
m_btn.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v){
Intent intent = new Intent(ImageViewActivity.this,subActivity.class);
startActivity(intent);
}
});
}
}
위 코드를 보면 버튼을 이용하여 다른 화면을 나타나게 한다. 그리고 위에 인텐트라는 것이 보일 것인데 이는 액티비티간의 전
환 즉, 호출하여 화면을 바꿔 줄 수가 있다.
인텐트 액션 내용을 보면 다음과 같다.
액션 | 대상 | 설명 |
ACTION_CALL | ACTIVITY | 통화 시작 |
ACTION_EDIT | ACTIVITY | 테이터 표시 및 편짐 |
ACTION_MAIN | ACTIVITY | 메인 액티비티 호출 |
ACTION_VIEW | ACTIVITY | 화면 보이기 |
ACTION_DIAL | ACTIVITY | 전화 걸기 |
ACTION_BATTERY_LOW | BR | 배터리 부족 |
ACTION_HEADSET_PLUS | BR | 헤드셋 접속 구분 |
ACTION_SCREEN_ON | BR | 화면 열림 |
ACTION_TIMEZONE_CHANGED | BR | 타임 존 변경 |
다음은 서브 액티비티 코드이다. 동일한 내용 인 듯 하지만 finish() 라는 함수를 이용하여 화면의 종료를 나타내며 메인 액티비티로 돌아가게 한다.
public class subActivity extends Activity{
public void onCreate(Bundle savedInstanceSatate){
super.onCreate(savedInstanceSatate);
setContentView(R.layout.subactivity);
Button s_btn = (Button)findViewById(R.id.s_btn);
s_btn.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v){
finish();
}
});
}
}
여기까지 하고 난 다음 또 매니페스트 파일에 내용을 추가 해 줘야 한다. 열어보면 하나의 액티비티만 정의 되어 있을 것이다.
서브 액티비티를 등록 해 줘야 한다는 점을 명심 해야한다.
RECENT COMMENT