2012-12-04 3 views
0

새 프로젝트에서 api 2.3.3을 사용 중이며 타블렛 삼성 갤럭시 탭 2를 사용하고 방향을 변경하면 새로운 작업이 생성됩니다.onConfigurationChanged가 기기를 회전 할 때 작동하지 않습니다.

이 내가 노력하고있어 간단한 코드입니다 :

<uses-sdk 
     android:minSdkVersion="8" 
     android:targetSdkVersion="14" /> 

    <application 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 
     <activity 
      android:name=".MainActivity" 
      android:label="@string/title_activity_main" 
      android:configChanges="orientation|keyboardHidden|keyboard"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" />    
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
    </application> 

내가 내 코드가 잘이라고 생각

public class MainActivity extends Activity { 

     @Override 
     public void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.activity_main); 
      Log.e("TAG","ONCREATE"); 
     } 

     @Override 
     public void onConfigurationChanged(Configuration newConfig) { 
      super.onConfigurationChanged(newConfig); 
      if (getResources().getConfiguration().orientation==Configuration.ORIENTATION_LANDSCAPE) { 
       Log.e("TAG","LANDSCAPE"); 
      }else{ 
       Log.e("TAG","PORTRAIT"); 
      } 
     } 

MANIFEST

주요 활동, 내가 읽고 많은 예가 있으며 동일합니다.

나를 어떻게 생각하니?

감사

+0

로그 캣 출력은 무엇인가? 풍경이나 초상화 또는 아무것도? – sschrass

답변

2
@Override 
protected void onRestoreInstanceState(Bundle savedInstanceState) 
{ 
    super.onRestoreInstanceState(savedInstanceState); 
    if (savedInstanceState != null) 
    { 
     if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) 
     { 
      // code for portrait 
     } 
     else if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) 
     { 
      // code for landscape 
     } 

    } 
} 

대신의 onConfigurationChanged 방법의 위의 코드를 시도, 나를 위해 좋은 일했다.

0

매니페스트 파일에 키보드 & keyboardHidden 단어를 제거하고 확인하려고합니다. 같은 :

android:configChanges="orientation" 
1

당신이 13보다 큰 API를 위해 구축하는 경우에, 당신은 사용할 필요가 :

android:configChanges="orientation|screenSize" 
관련 문제