Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème d'affichage de layout: android studio

    24 janvier 2020 à 22:09:05

    J'ai des problèmes avec la disposition de mon chonomètre dans ma deuxième activité, je ne peux pas l'afficher. Dans ma deuxième activité, j'ai un .bmp que je peux afficher mais je ne peux pas afficher mon chronomètre. Pouvez-vous m'aider s'il vous plaît, merci.


    Voici ma premier activité 


    package com.maze.maze;
    
    import androidx.appcompat.app.AppCompatActivity;
    
    import android.content.res.AssetManager;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.EditText;
    import android.widget.RadioButton;
    import android.widget.RadioGroup;
    import android.widget.Button;
    import android.content.Intent;
    import android.graphics.Bitmap;
    import android.graphics.BitmapFactory;
    import android.content.res.Resources;
    import android.graphics.Canvas;
    import android.graphics.Color;
    import android.widget.ImageView;
    import java.io.InputStream;
    import java.io.IOException;
    import android.content.Context;
    import android.graphics.drawable.Drawable;
    import android.graphics.drawable.BitmapDrawable;
    
    
    public class MainActivity extends AppCompatActivity {
    
        RadioGroup radiogroup;
        Button button_val;
        EditText e_prenom;
        EditText e_nom;
        private static final String SAVED_TEXT_KEY = "some_key";
    
    
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            button_val=findViewById(R.id.button_v);
            radiogroup=findViewById(R.id.radiogroup);
            e_prenom=findViewById(R.id.e_prenom);
            e_nom=findViewById(R.id.e_nom);
    
    
    
    
            button_val.setOnClickListener(new View.OnClickListener() {
                @Override
    
    
                public void onClick(View view){
    
                    int  laby =0;
                    switch (radiogroup.getCheckedRadioButtonId())
                    {
                        case R.id.radio_1: laby=1; break;
                        case R.id.radio_2: laby=2; break;
                        case R.id.radio_3: laby=3; break;
                        case R.id.radio_4: laby=4; break;
                        case R.id.radio_5: laby=5; break;
                    }
                    Intent intent_laby= new Intent();
                    intent_laby.putExtra("num_labyrinth",laby);
                    Intent intent_nom= new Intent();
                    intent_nom.putExtra("nom", e_nom.getText() );
                    Intent intent_prenom= new Intent();
                    intent_prenom.putExtra("prenom", e_prenom.getText() );
                    startActivity(new Intent(MainActivity.this, Activity_labyrinth.class));
                }
    
            });
    
        }
    
    
    
    
    }


    Voici ma deuxième activité 


    import java.io.InputStream;
    import androidx.appcompat.app.AppCompatActivity;
    import android.content.Intent;
    import android.graphics.Bitmap;
    import android.graphics.BitmapFactory;
    import android.os.Bundle;
    import android.content.res.Resources;
    import android.util.Log;
    import android.widget.Chronometer;
    import android.widget.EditText;
    import android.widget.ImageView;
    import android.widget.TextView;
    
    public class Activity_labyrinth extends AppCompatActivity {
    
        Labyrinthe labyrinthe;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
    
            super.onCreate(savedInstanceState);
            labyrinthe=new Labyrinthe(this);
    
           Intent intent_lab  = getIntent();
           labyrinthe.num_lab=intent_lab.getIntExtra("num_labyrinth",1);
            //Log.i("text","num"+labyrinthe.num_lab);
            labyrinthe.init(this);
    
            setContentView(labyrinthe);
    
        }
    }


    le fichier XML

    <?xml version="1.0" encoding="utf-8"?>
    <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:visibility="visible"
        tools:context=".Activity_labyrinth"
        tools:visibility="visible">
    
        <Chronometer
            android:id="@+id/chronometer"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_marginStart="1200dp"
            android:layout_marginLeft="1200dp"
            android:layout_marginTop="300dp"
            android:layout_marginEnd="8dp"
            android:layout_marginRight="8dp"
            android:layout_marginBottom="300dp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent" />
    
    </androidx.constraintlayout.widget.ConstraintLayout>


    ma classe 

    import android.content.Context;
    import android.graphics.Bitmap;
    import android.graphics.BitmapFactory;
    import android.graphics.Canvas;
    import android.graphics.Rect;
    import android.hardware.Sensor;
    import android.hardware.SensorEvent;
    import android.hardware.SensorEventListener;
    import android.os.Build;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.View;
    import android.widget.ImageView;
    import android.widget.TextView;
    import android.content.res.AssetManager;
    
    import androidx.annotation.RequiresApi;
    
    import java.io.IOException;
    import java.io.InputStream;
    
    
    public class Labyrinthe extends View implements SensorEventListener {
        Bitmap bitmap;
        int num_lab;
        InputStream l=null;
        ImageView image;
    
        public Labyrinthe(Context context)  {
            super(context);
            image=findViewById(R.id.image);
        }
    
        void init(Context context){
    
            AssetManager assetManager= context.getAssets();
            try {
                switch (num_lab){
                    case 1: l= assetManager.open("1.bmp"); break;
                    case 2: l= assetManager.open("2.bmp"); break;
                    case 3: l= assetManager.open("3.bmp"); break;
                    case 4: l= assetManager.open("4.bmp"); break;
                    case 5: l= assetManager.open("5.bmp"); break;
    
                }
    
            } catch (IOException e) {
                e.printStackTrace();
            }
            Rect rectangle=new Rect();
            BitmapFactory.Options opt=new BitmapFactory.Options();
            bitmap=  BitmapFactory.decodeStream(l,rectangle,opt);
    
    
        }
    
        @Override
        protected void onDraw(Canvas canvas){
    
            Rect screen=new Rect();
            screen.set(50,50,canvas.getWidth()-400,canvas.getHeight()-70);
            canvas.drawBitmap(bitmap ,null,screen,null);
            super.onDraw(canvas);
    
        }
    
        @Override
        public void onAccuracyChanged(Sensor sensor, int i) {
            // TODO Auto-generated method stub
        }
    
        @Override
        public void onSensorChanged(SensorEvent sensor_event) {
            // TODO Auto-generated method stubv
            float acc_x = sensor_event.values[0];
            float acc_y = sensor_event.values[1];
    
        }
    
    
    
    
    }






    • Partager sur Facebook
    • Partager sur Twitter

    Problème d'affichage de layout: android studio

    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
    • Editeur
    • Markdown