안드로이드 네비게이션 Back And Up (로고 클릭 시 부모액티비티로 이동)


Android/안드로이드 프로그래밍 2014.03.03 17:48







안드로이드 4.4 부터 위쪽의 로고를 클릭하면 상위 액티비티로 이동하게 됩니다. 

이 부분에 대해서는 외국 자료를 찾아보아도, android.R.home ICON 클릭 시 finish()를 한다는 의견이 많습니다. 

하지만 이건 올바르지 않습니다. 


디자인 가이드에 따르면 이 부분을 정식명칙으로 'Back and up'이라고 부르며, 구글 플레이에서 확인 하시면 단순히 Back 버튼이 아닌, 논리 구조 상 상위 액티비티로 이동한다는 것을 알 수 있습니다. 이 부분을 쌩으로 코드로 짜시는 분도 계시는데, 안드로이드 에서 굉장히 잘 지원을 해주고 있습니다. 


방법은, 로고에 '<'를 넣을 액티비티에 다음과 같이 선언합니다. 


      getActionBar().setDisplayHomeAsUpEnabled(true);

      getActionBar().setDisplayUseLogoEnabled(true);


메니페스트의 해당 액티비티에 


 <activity

            android:name="com.test.activities.TestActivity"

            android:configChanges="orientation|screenSize|keyboard|keyboardHidden"

            android:parentActivityName="com.test.activityname" >

            <meta-data

                android:name="android.support.PARENT_ACTIVITY"

                android:value="com.test.activityname" />

 </activity>


와 지정해주면, 자동으로 적용이 됩니다. 



저작자 표시 비영리 변경 금지
신고

WRITTEN BY
ShakeJ

0 ,