2017-05-31 80 views
1

所以我想让这3行可以作为我应用程序中每个活动的函数。 我试图做一个简单的MyMethods类与3线公共无效的,但我没有工作(无法解析法)Android,全屏全局方法

package com.example.myapplication; 
import android.content.Intent; 
import android.content.pm.ActivityInfo; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.view.View; 
import android.view.Window; 
import android.view.WindowManager; 
import android.widget.EditText; 

public class MainActivity extends AppCompatActivity { 

public static final String EXTRA_MESSAGE = "com.example.myfirstapp.MESSAGE"; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 

    //landscape,fullscreen,no action bar 

    this.requestWindowFeature(Window.FEATURE_NO_TITLE); 
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN); 
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); 

    //I want those 3 lines above to be one void function 

    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 


} 


public void sendMessage(View view){ 
    Intent intent = new Intent(this, DisplayMessageActivity.class); 
    EditText editText = (EditText) findViewById(R.id.editText); 
    String message = editText.getText().toString(); 
    intent.putExtra(EXTRA_MESSAGE, message); 
    startActivity(intent); 
} 

}

回答

0

尝试这种方式,

public class MyMethods extends AppCompatActivity 
{ 
    @Override 
    protected void onCreate(Bundle savedInstanceState) 
    { 
     requestWindowFeature(Window.FEATURE_NO_TITLE); 
     getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN); 
     setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); 
     super.onCreate(savedInstanceState); 

    } 

    } 

现在extends这在MainActivity

public class MainActivity extends MyMethods { 
+0

我的意思是这样的: Mymethods.fullscreen();全屏在Mymethods类中是静态无效的,所以我可以在应用中的每个活动中使用这个函数 –

+1

它的工作,谢谢。我会尝试制作“全屏()”方法。 –

+0

@PawełRubin前进 –

0

如果您是通过java代码来完成的,那不是推荐的。通过活动主题,让您的活动成为全屏的方式就是通过活动主题来完成。

<style name="Theme.AppCompat.Light.NoActionBar.FullScreen" parent="@style/Theme.AppCompat.Light"> 
    <item name="windowNoTitle">true</item> 
    <item name="windowActionBar">false</item> 
    <item name="android:windowFullscreen">true</item> 
    <item name="android:windowContentOverlay">@null</item> 
</style> 

把这个给你的每一个活动,你想让全屏。

<activity 
    android:name=".activities.MyFullScreenActivity" 
    android:theme="@style/Theme.AppCompat.Light.NoActionBar.FullScreen" 
/> 

希望它会工作... :)

+0

它的工作太多了,但是当我添加: 风景 风格,它不工作,为什么? –

+0

您是否尝试过将方向元素置于活动标记中。 Neo