2017-05-31 1 views
1

Je souhaite donc que ces 3 lignes soient disponibles en tant que fonction pour chaque activité de mon application. J'ai essayé de faire un simple MyMethods classe avec un public void avec ces 3 lignes, mais je ne travaille pas (ne peut pas résoudre méthode)Android, méthode globale en mode plein écran

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); 
} 

}

Répondre

0

Essayez cette façon,

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); 

    } 

    } 

maintenant extends dans votre MainActivity classe

public class MainActivity extends MyMethods { 
+0

je voulais dire quelque chose comme ceci: Mymethods.fullscreen(); où fullscreen est statique void dans la classe Mymethods, donc je pourrais utiliser cette fonction dans toutes les activités de l'application –

+1

Cela a fonctionné, merci. Je vais essayer de faire la méthode "fullscreen()". –

+0

@ PawełRubin Aller de l'avant –

0

Si vous le faites par code java, cela n'est pas recommandé. Bettwer moyen de faire votre activité en plein écran est de le faire via le thème de l'activité.

<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> 

Et de donner à toutes vos activités celles que vous voulez faire en plein écran.

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

Je espère que ça fonctionnera ... :)

+0

Cela a fonctionné aussi, mais quand j'ai ajouté: paysage au style, ça ne fonctionne pas, pourquoi? –

+0

L'avez-vous essayé en plaçant l'élément d'orientation dans l'étiquette d'activité. Neo