2012-04-09 19 views
5

Chúng tôi sẽ cung cấp thiết bị cho khách hàng và họ cần để có thể gọi cho chúng tôi bằng một nút. Trong toàn màn hình Activity của tôi, tôi có một nút mà các cuộc gọi phonenumber helpdesk, vì vậy onClick() nó như sau:TYPE_KEYGUARD giữ chế độ toàn màn hình sau khi thực hiện cuộc gọi

try { 
     Intent intent = new Intent(Intent.ACTION_CALL); 
     intent.setFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION); 
     intent.setData(Uri.parse("tel:" + phoneNumber)); 
     mContext.startActivity(intent); 
    } catch (Exception e) { 
     Toast.makeText(mContext, mContext.getString(R.string.couldntcall), Toast.LENGTH_LONG).show(); 
    } 

Khi dialer đóng lại, đột nhiên thanh tiêu đề vẫn sẽ hiện diện, tôi là đoán nó có cái gì để làm với trọng nút HOME:

@Override 
public void onAttachedToWindow() 
{ //HOMEBUTTON 
    if(OnLockMode()) 
    { 
     this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD); 
      super.onAttachedToWindow(); 
    } 
    else 
    { 
     this.getWindow().setType(WindowManager.LayoutParams.TYPE_APPLICATION); 
     super.onAttachedToWindow(); 
    } 
} 

Có ai có giải pháp cho vấn đề này không?

tôi thử như sau:

tôi đặt trong biểu hiện:

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

và được sử dụng trong OnCreate:

requestWindowFeature(Window.FEATURE_NO_TITLE); 

Và trong cả hai onCreate() cũng như trong onResume():

getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); 
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN); 

Vẫn thanh tiêu đề được hiển thị.

Trả lời

-1

thêm thông tin này vào tệp kê khai.

<uses-permission android:name="android.permission.EXPAND_STATUS_BAR"/> 

bên onCreate()

this.requestWindowFeature(Window.FEATURE_NO_TITLE); 
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 
    setContentView(R.layout.activity_home); 
    View v = findViewById(R.id.home_view); 
    v.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LOW_PROFILE); 

nơi home_view là quan điểm mẹ của tập tin xml.

@Override 
    public boolean onKeyDown(int keyCode, KeyEvent event) { 
      return false; 
     } 

public void onWindowFocusChanged(boolean hasFocus) 
    { 
      try 
      { 
       if(!hasFocus) 
       { 
        Object service = getSystemService("statusbar"); 
        Class<?> statusbarManager = Class.forName("android.app.StatusBarManager"); 
        Method collapse = statusbarManager.getMethod("collapse"); 
        collapse .setAccessible(true); 
        collapse .invoke(service); 
       } 
      } 
      catch(Exception ex) 
      { 
      } 
    } 

bạn không thể chụp sự kiện tại nhà, điều duy nhất bạn có thể làm là cung cấp danh mục nhà ứng dụng và cho phép người dùng chọn.

<category android:name="android.intent.category.HOME" /> 
+0

Yêu cầu người dùng chọn ứng dụng nào để khởi chạy. – AndroidDev