Kamchol's Base Camp

excludeFromRecents

     -Home 키를 Long Press 하게  되면 해당 app은 Recent List로 이동하게 된다 

      이 아이콘을 다시 누를 시 해당 app으로 이동하게 된다.

      이때 Home 키를 Long Press하게 되도 app이 Recent List로 이동 하지 않게 하려면 

      해당 activity에서 

      android:exdudeFromRecents = “true”를 주게 되면 된다.

      만약 Intent 에 flag 형태로 주고 싶을 경우에는 Intent에 FALG_ACTIVITY_EXCLUDE_FROM_RECENTS 
    
     를 설정해도 똑같은 효과가 가능하다



어플의 중첩 실행 방지 
android:launchMode="singleInstance"
android:excludeFromRecents="true" 
android:taskAffinity=""






'android' 카테고리의 다른 글

Notification  (0) 2014.09.21
excludeFromRecents & 어플의 중첩 실행 방지  (0) 2014.09.20
Activitiy LunchMode  (0) 2014.09.20
Activity에 Fragment 씌우기  (0) 2014.08.27
XML안에 다른 XML include 하기  (0) 2014.08.26
Fragment 생명주기  (0) 2014.08.26

Comment +0

Activitiy LunchMode

android2014. 9. 20. 16:03
LunchMode?
     -Activity 실행 시 엑티비티 스택이 쌓이는 운영방식 결정 모드
     -총 4가지로 분류 된다.
          -android:lunchMode = “standard”
          -android:lunchMode = “singleTop”
          -android:lunchMode = “singleTask”
          -android:lunchMode = “singleInstance”
   
1.Standard
     - standard
          
     


     -singleTop
         

          ->최 상위 스택에 있는 액티비티 호출 시 스택에 쌓이지 않고 이전 액티비티 재활용
       -singleTask
        


     -singleInstance
            

           ->오직 하나의 태스크에 하나이 액티비티만 존재 

'android' 카테고리의 다른 글

Notification  (0) 2014.09.21
excludeFromRecents & 어플의 중첩 실행 방지  (0) 2014.09.20
Activitiy LunchMode  (0) 2014.09.20
Activity에 Fragment 씌우기  (0) 2014.08.27
XML안에 다른 XML include 하기  (0) 2014.08.26
Fragment 생명주기  (0) 2014.08.26

Comment +0

Fragment 만들기 
1.클래스 정의 

     


     Fragment import 시 import android.app.Fragment;

2.xml정의 
  • activity_main.xml
        


         android:name에는 풀패키지를 입력한다.
           MainActivity 내의 inner Class로 FragmentOne이 선언 되어 있기 때문에 $로 표시.   
  •   fragment_one.xml    
        


Main Class에서 main.xml을 호출한다 이 때 xml 내에 있는 fragment를 호출 한다.
Fragment는 name에 있는 새달 클래스를 호출하고 호출된 클래스 에서는 fragment_one.xml을 호출하여 
화면에 뿌려준다.



'android' 카테고리의 다른 글

excludeFromRecents & 어플의 중첩 실행 방지  (0) 2014.09.20
Activitiy LunchMode  (0) 2014.09.20
Activity에 Fragment 씌우기  (0) 2014.08.27
XML안에 다른 XML include 하기  (0) 2014.08.26
Fragment 생명주기  (0) 2014.08.26
appcompat_v7 라이브러리 폴더 제거 하기  (0) 2014.08.26

Comment +0

NoTitleBar 설정하기

Menifest에서 설정하기 
  • android:theme="@style/AppTheme/Theme.NoTitleBar.Fullscreen" 

    




Styles.xml에서 설정하기
  •  <item name="android:windowNoTitle"]] > true</item]] >  


    







Comment +0

NoTitleBar 설정하기

Menifest에서 설정하기 
  • android:theme="@style/AppTheme/Theme.NoTitleBar.Fullscreen" 

    




Styles.xml에서 설정하기
  •  <item name="android:windowNoTitle"]] > true</item]] >  


    






Comment +0

XML안에 다른 XML include  하기 

기존의 xml(itmeactivity.xml) 에 다른 xml(review_row.xml) include하기 

















'android' 카테고리의 다른 글

excludeFromRecents & 어플의 중첩 실행 방지  (0) 2014.09.20
Activitiy LunchMode  (0) 2014.09.20
Activity에 Fragment 씌우기  (0) 2014.08.27
XML안에 다른 XML include 하기  (0) 2014.08.26
Fragment 생명주기  (0) 2014.08.26
appcompat_v7 라이브러리 폴더 제거 하기  (0) 2014.08.26

Comment +0

Fragment 생명주기

android2014. 8. 26. 23:02
Fragment

Fragment란?
  • 조각 이란 뜻으로 액티비티 보다 더 작은 화면 단위를 정의하는데 쓰이며 프래그먼트의 집합으로 액티비티가 구성된다.
  • 높은 재사용성으로 여러 액티비티 에서 재사용 가능하다.
  • 디자인시 배치가 미리 결정되는 액티 비티에 비해 실행 도중 추가,제거,교체 가능하다.
  • 설정창에 많이 쓰이며 프래그먼트를 클릭하여 액티비티를 실행한다 따라서 하나의 프래그먼트당 하나의 기능만을 구성하는 것이 좋다
  • 프래그먼트 끼리의 직접적인 조작은 피하는 것이 좋다 프래그 먼트끼리 통신이 필요하면 액티비티를 통해 하는 것이 좋은 구조이다. 


Fragment 생명주기
  • 프래그먼트는 액티비티에 종속되어 나타나기 때문에 액티비티 없이 홀로 존재 할 수 없다.
  • 액티비티의 생명주기가 끝날 경우 프래그먼트 역시 종료 된다.
  • 액티비티와 생명주기는 거의 유사하다.
  • onCreate,onCreateView,onPause는 거의 필수적으로 구현해야 하며 나머지는 필요에 의해 구현하면 된다.
  • 다음의 순서대로 콜백이 호출된다.



void onAttach(Activity activity)
  • 액티비티에 프래그먼트가 처음 부착 될때 호출. 인수의 부착된 액티비티는 프래그먼트가 부착된 호스트 액티비티
void onCreate(Bundle savedInstanceState)
  • 프래그먼트가 생성 될 때 호출.
  • 프래그먼트에서 꼭 필요한 요소 초기화한다,초기화 할 것이 없을 경우 생략 가능
  • 이 단계는 아직 액티비티 조차도 초기화 되지 않은 상태 이므로 액티비티의 컨트롤을 안전하게 참조 할 수 없다.
  • 액티비티 초기화 시점 필요 시 onActivityCreated 사용.
  • 프래그먼트에서 메뉴 사용 시 setHasOptionMenu 등록 ->onCreateOptionMenu를 호출 할 수 있다.
void onActivityCreated 
  • 액티비티가 완전히 초기화 된고 프래그먼트의 레이아웃도 완성되었을 때 호출된다.

view onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceState)
  • 프래그먼트의 UI를 그릴 때 처음 호출, 자신이 xml에 생성한 view 리턴
  • UI가 없다면 null을 지정하면 된다.
  • container : 프래그먼트가 배치 될 액티비티의 부모 뷰 
  • savedInstanceState:이 콜백에서 리턴한 레이아웃이 액티비티의 container에 나타난다.

위 4가지의 콜백 실행 후 onStart,onResume가 실행 액티비티 생명주기와 같은 시점에 호출 되며 의미도 동일

액티비티 파괴 시 
  • onDestroyView,onDestroy,onDetach 콜백이 순서대로 호출 된다.











'android' 카테고리의 다른 글

excludeFromRecents & 어플의 중첩 실행 방지  (0) 2014.09.20
Activitiy LunchMode  (0) 2014.09.20
Activity에 Fragment 씌우기  (0) 2014.08.27
XML안에 다른 XML include 하기  (0) 2014.08.26
Fragment 생명주기  (0) 2014.08.26
appcompat_v7 라이브러리 폴더 제거 하기  (0) 2014.08.26

Comment +0

appcompat_v7 없는 프로젝트 생성 하기


appcompat_v7 이란?
:안드로이드 하위 버전에서  상위 라이브러리를 사용 할 수 있도록 하는 라이브러리 모음!!



appcompat_v7을 없애자!
Minimum Required SDK,Target SDK,Compile with 를 모두 4.4로 변경!





 Android Menifest.xml 수정
이 부분을
          <uses-sdk
             android:minSdkVersion="19"
             android:targetSdkVersion="19"
           />
이 렇게 변경 하면 끝.
      <uses-sdk android:minSdkVersion="7" />

'android' 카테고리의 다른 글

excludeFromRecents & 어플의 중첩 실행 방지  (0) 2014.09.20
Activitiy LunchMode  (0) 2014.09.20
Activity에 Fragment 씌우기  (0) 2014.08.27
XML안에 다른 XML include 하기  (0) 2014.08.26
Fragment 생명주기  (0) 2014.08.26
appcompat_v7 라이브러리 폴더 제거 하기  (0) 2014.08.26

Comment +0