0

아래 코드를 사용하여 홈 키와 전체 화면을 무시하려고합니다. 홈 키의 잠금이 잘 작동하지만 알림 표시 줄을 숨길 수 없습니다 (활동을 전체 화면으로 표시 할 수 없음).onAttachedToWindow를 사용할 때 전체 화면 동작을 수행 할 수 없습니다.

public class ScreenLockDemo extends Activity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    // TODO Auto-generated method stub 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.screenlock); 

    } 



@Override 
public void onAttachedToWindow() 
{ 
    this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD); 
    super.onAttachedToWindow(); 

} 

@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) { 
    // TODO Auto-generated method stub 
    if(keyCode==KeyEvent.KEYCODE_BACK){ 
     return true; 
    } 
    if(keyCode==KeyEvent.KEYCODE_HOME){ 
     return true; 
    } 

    return super.onKeyDown(keyCode, event); 
} 

}

의 AndroidManifest.xml :

<activity 
     android:name="com.antivirus.antitheft.ScreenLockDemo" 
     android:configChanges="touchscreen|keyboard|keyboardHidden|navigation|orientation" 
     android:screenOrientation="portrait" 
     android:theme="@android:style/Theme.NoTitleBar.Fullscreen" 
     >    
    </activity> 

[밖으로 위의 코드 그것을 IMG에서 쇼와 같은 레이아웃의 귀여운 위쪽으로 넣어!. ] [1]

또한 핸들러를 사용하여 작업을 전체 화면으로 표시하려고하지만 메뉴 키를 재정의 할 수 없습니다. 도와주세요. 사전에

감사합니다.

+0

이 도움이 될 것입니다 : http://stackoverflow.com/questions/9369144/activity-doesnt-show-in-full-screen –

답변

-1

가 된 setContentView (XML) 이전에이 코드를 시도를

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 
getWindow().requestFeature(Window.FEATURE_NO_TITLE); 

예를 들어 매니페스트에서 활동 섹션에 다음을 추가 희망, 이것은 당신을 위해 작동합니다.

+0

나는이 코드를 시도하고 있지만 레이아웃에 위쪽을 잘라 작동하지 ... 내가 공공 무효 onAttachedToWindow를 사용할 때 위의 코드가 작동하지 않는거야() \t { \t this.getWindow(). setType (WindowManager.LayoutParams.TYPE_KEYGUARD); \t \t super.onAttachedToWindow(); \t} 이 코드는 내 코드에서 메뉴 키를 재정의합니다. –

+0

이 코드를 사용했다면 작동하지 않는다는 것을 알았을 것입니다. 당신은 전체 화면을 얻지 못합니다. – AndroidDev

0

활동을 전체 화면으로 설정하는 가장 쉬운 방법은 매니페스트에 설정하는 것입니다.

android:theme="@android:style/Theme.NoTitleBar.Fullscreen" 

따라서이 같은 보일 것입니다 :

<application 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" > 
    <activity 
     android:name=".blahActivity" 
     android:label="@string/app_name" 
     android:theme="@android:style/Theme.NoTitleBar.Fullscreen" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
</application> 
+0

이미이 코드를 사용하지만 공공 무효의 경우에는 작동하지 onAttachedToWindow() 를 \t { \t this.getWindow(). setType (WindowManager.LayoutParams.TYPE_KEYGUARD); \t \t super.onAttachedToWindow(); \t}이 방법 –

0

() onAttachedToWindow overridding 후, 제 경우 코드

@Override 
public void onAttachedToWindow() { 
    // TODO Auto-generated method stub 
    super.onAttachedToWindow(); 

    handler.postDelayed(mUpdateUiMsg, 100); 
    //this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);  
} 


public boolean onKeyDown(int keyCode, KeyEvent event) { 
    // TODO Auto-generated method stub 
    if(keyCode==KeyEvent.KEYCODE_BACK){ 
    return true; 
    } 
    if(keyCode==KeyEvent.KEYCODE_HOME){ 
    return true; 
    } 

    return super.onKeyDown(keyCode, event); 
} 


private Runnable mUpdateUiMsg = new Runnable() { 
     public void run() { 


      getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD); 


     } 
    }; 

이하하여 문제를 해결

@Override 
public void onAttachedToWindow() { 
    // TODO Auto-generated method stub 
    super.onAttachedToWindow(); 

    handler.postDelayed(mUpdateUiMsg, 100); 
    //this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);  
} 


public boolean onKeyDown(int keyCode, KeyEvent event) { 
    // TODO Auto-generated method stub 
    if(keyCode==KeyEvent.KEYCODE_BACK){ 
    return true; 
    } 
    if(keyCode==KeyEvent.KEYCODE_HOME){ 
    return true; 
    } 

    return super.onKeyDown(keyCode, event); 
} 


private Runnable mUpdateUiMsg = new Runnable() { 
     public void run() { 


      getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD); 


     } 
    }; 
+1

이와 함께 전체 화면을 가져올 수 없습니다. – AndroidDev

0

코드 아래하여 문제를 해결하는 난 overridePendingTransition(int enterAnim, int exitAnim) 또는

<style name="Theme.NoTitleBar.WithColoredSpinners" parent="@android:style/Theme.NoTitleBar"> 
    <item name="android:spinnerDropDownItemStyle">@style/SpinnerItem.DropDownItem</item> 
    <item name="android:windowAnimationStyle">@style/AnimationActivity</item> 
</style> 
발견

작동하지 않았지만이 코드를 사용하여 문제가 해결되었지만 아직 이유를 모르겠습니다. 그리고 같은, 나는 방법을 모르겠다 onAttachedToWindow() 어떻게해야하고 어떻게 효과가 있니?