web-dev-qa-db-fra.com

Android Studio: La nouvelle activité s'ouvre avec un écran vide

Salut!
Je viens de commencer dans Android Studio. J'ai cherché une question correspondante mais pas de joie, criez s'il vous plaît si vous avez déjà vu celui-ci!

Mon activité principale a un seul bouton qui ouvre la deuxième activité, le bouton fonctionne et il s'ouvre. Mais la deuxième activité apparaît comme un écran vide au lieu du texte qui devrait y figurer.

Toutes mes excuses pour tout copier/coller non pertinent!

Manifeste:

    <application
        Android:allowBackup="true"
        Android:icon="@mipmap/ic_launcher"
        Android:label="@string/app_name"
        Android:theme="@style/Theme.AppCompat.NoActionBar" >
        <activity
            Android:name=".MainActivity"
            Android:label="@string/app_name" >
            <intent-filter>
                <action Android:name="Android.intent.action.MAIN" />

                <category Android:name="Android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            Android:name=".fiveThreeOne"
            Android:label="@string/title531">
        </activity>
    </application>

Activité principale:

<RelativeLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
    xmlns:tools="http://schemas.Android.com/tools" Android:layout_width="match_parent"
    Android:layout_height="match_parent" Android:paddingLeft="@dimen/activity_horizontal_margin"
    Android:paddingRight="@dimen/activity_horizontal_margin"
    Android:paddingTop="@dimen/activity_vertical_margin"
    Android:textColor="#ffdedede"
    Android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">

    <Button
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:text="fiveThreeOne"
        Android:textAllCaps="false"
        Android:id="@+id/open531btn"
        Android:layout_below="@+id/mainTitle"
        Android:layout_alignParentLeft="true"
        Android:layout_alignParentStart="true"
        Android:layout_marginTop="38dp" />

</RelativeLayout>

Code du bouton dans la classe principale

public class MainActivity extends ActionBarActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Button open531button = (Button) findViewById(R.id.open531btn);
        open531button.setOnClickListener(new OnClickListener(){

            public void onClick(View v){
                startActivity(new Intent(MainActivity.this, fiveThreeOne.class));
            }
        });

    }

Deuxième activité xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
    Android:orientation="vertical" Android:layout_width="match_parent"
    Android:layout_height="match_parent">

    <TextView
        Android:text="@string/title531"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:editable="false"
        Android:textSize="35sp"
        Android:id="@+id/title531"
        Android:layout_alignParentTop="true"
        Android:layout_centerHorizontal="true" />


</RelativeLayout>

Merci!

9
jackEarlyDays

Avez-vous défini la présentation de votre activité dans la ligne setContentView () comme ceci. Ici activity_second est la structure d'activité de mon SecondActivity

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_second);
    }

sinon, votre activité sera vide. J'espère que ceci résoudra votre problème.

11
bonney

Cela arrive parfois quand au lieu de surcharger

protected void onCreate(Bundle savedInstanceState) {

vous finissez par surcharger

public void onCreate(@Nullable Bundle savedInstanceState, @Nullable PersistableBundle persistentState) 

au lieu. Assurez-vous que le onCreate avec seulement savedInstanceState en tant qu'argument est surchargé.

50
shekhar g h

Vérifiez que vous avez défini la mise en page correcte pour la méthode setContentView () de votre deuxième activité.

0
Heshan Sandeepa

Vous pouvez simplement aller aux dépendances dans le fichier build.gradle et ajouter cette ligne là .. & try.

implémentation 'com.Android.support:appcompat-v7:28.0.0-alpha1'

0