You are on page 1of 27

TD1 Compte rendu

Java Mobile et Embarqué

Hadil jilani – sourour addali


3GII-SII
Exercice 1 :

I. Code :
MainActivity.java
package com.example.exerciceone;

import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

private EditText textpoid;


private EditText texttaille;
private RadioGroup radioGroup;

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

textpoid = findViewById(R.id.ED2);
texttaille = findViewById(R.id.ED3);
radioGroup = findViewById(R.id.radioGroup);

Button calculateButton = findViewById(R.id.BTN3);


calculateButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
calculateBMI();
}
});
}

public String category="";

private void calculateBMI() {


String poidStr = textpoid.getText().toString();
String tailletStr = texttaille.getText().toString();

if (poidStr.isEmpty() || tailletStr.isEmpty()) {
Toast.makeText(this, "Veuillez remplir tous les champs",
Toast.LENGTH_SHORT).show();

1
return;
}

float weight = Float.parseFloat(poidStr);


float height = Float.parseFloat(tailletStr) / 100; // Convert
height to meters
float bmi = weight / (height * height);
String interpretation = getInterpretation(bmi);

int selectedId = radioGroup.getCheckedRadioButtonId();


if (selectedId == -1) {
Toast.makeText(this, "Veuillez choisir une catégorie",
Toast.LENGTH_SHORT).show();
return;
}

RadioButton radioButton = findViewById(selectedId);


category = radioButton.getText().toString();

// Intent to start ResultActivity and pass data to it


Intent intent = new Intent(this, ResultActivity.class);
intent.putExtra("BMI", bmi);

intent.putExtra("Interpretation", interpretation);
intent.putExtra("Gender", gender);
startActivity(intent);

}
public String gender ="";
public void onRadioButtonClicked(View view) {

if (category.equals("Homme")) {
gender = "Madame, votre IMC est";
} else {
gender = "Monsieur, votre IMC est";
}

}
private String getInterpretation(float bmi) {
String interpretation;
if (bmi < 16.5) {
interpretation = "Dénutrition";
} else if (bmi < 18.5) {
interpretation = "Maigreur";
} else if (bmi < 20) {
interpretation = "Corpulence normale";
} else if (bmi < 25) {
interpretation = "Surpoids";
} else if (bmi < 30) {
interpretation = "Obésité modérée";
} else if (bmi < 35) {
interpretation = "Obésité sévère";
} else {
interpretation = "Obésité massive";
}
return interpretation;
}
}

2
ResultActivity.java
package com.example.exerciceone;

import android.content.Intent;
import android.content.res.Resources;
import android.os.Bundle;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;

public class ResultActivity extends AppCompatActivity {


TextView bmiTextView ;
TextView categoryTextView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_result);

Intent intent = getIntent();


float bmi = intent.getFloatExtra("BMI", 0);
String category = intent.getStringExtra("Category");
String interpretation = intent.getStringExtra("Interpretation");
String gender = intent.getStringExtra("Gender");

TextView bmiTextView = findViewById(R.id.result_IMC);

TextView interpretationTextView =
findViewById(R.id.result_interpretation);

bmiTextView.setText(gender + " "+ String.format("%.2f", bmi));

interpretationTextView.setText("Interprétation: " +
interpretation);

Resources res = getResources();


int color = res.getColor(R.color.Cnrml);
}
}

activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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="match_parent"
android:background="#DDD2D2"
tools:context=".MainActivity">

<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">

3
<LinearLayout
android:layout_width="354dp"
android:layout_height="match_parent"
android:layout_gravity="center"
android:layout_weight="1"
android:gravity="center"
android:orientation="horizontal">

<TextView
android:id="@+id/TV"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="174dp"
android:text="@string/AppTitle"
android:textAlignment="center"
android:textColor="@color/CTitle"
android:textSize="80px"
android:textStyle="bold"
tools:ignore="MissingConstraints" />

</LinearLayout>

<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:orientation="horizontal"
android:id="@+id/linearLayout">

<TextView
android:id="@+id/TV1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/Txt1"
android:textSize="50px"
android:textStyle="bold"
tools:ignore="MissingConstraints"
tools:layout_editor_absoluteX="0dp"
tools:layout_editor_absoluteY="114dp"
tools:layout_conversion_absoluteHeight="26dp"
tools:layout_conversion_absoluteWidth="67dp" />

<EditText
android:id="@+id/ED1"
android:layout_width="278dp"
android:layout_height="78dp"
android:hint="@string/hint1"
android:inputType="text" />

</LinearLayout>

<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:orientation="horizontal">

<TextView
android:id="@+id/TV2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"

4
android:text="@string/Txt2"
android:textSize="50px"
android:textStyle="bold"
tools:ignore="MissingConstraints" />

<EditText
android:id="@+id/ED2"
android:layout_width="235dp"
android:layout_height="72dp"
android:hint="@string/hint2"
android:inputType="number" />

</LinearLayout>

<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:orientation="horizontal">

<TextView
android:id="@+id/TV3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/Txt3"
android:textSize="50px"
android:textStyle="bold"
tools:ignore="MissingConstraints" />

<EditText
android:id="@+id/ED3"
android:layout_width="248dp"
android:layout_height="87dp"
android:hint="@string/hint3"
android:inputType="number" />

</LinearLayout>

<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
android:orientation="horizontal"
tools:ignore="ExtraText">

<RadioGroup
android:id="@+id/radioGroup"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal"
tools:ignore="MissingConstraints">

<RadioButton
android:id="@+id/B1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="onRadioButtonClicked"

5
android:text="@string/B1"
tools:layout_editor_absoluteX="115dp"
tools:layout_editor_absoluteY="335dp" />

<RadioButton
android:id="@+id/B2"
android:layout_width="120dp"
android:layout_height="wrap_content"
android:onClick="onRadioButtonClicked"
android:text="@string/B2"
tools:layout_editor_absoluteX="237dp"
tools:layout_editor_absoluteY="335dp" />
</RadioGroup>

</LinearLayout>

<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:orientation="horizontal">

<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
android:orientation="horizontal">

<Button
android:id="@+id/BTN3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="0"
android:text="@string/B3"
/>
</LinearLayout>
</LinearLayout>

</LinearLayout>
</LinearLayout>

Activity_result.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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="match_parent"
android:background="#DDD2D2"
android:orientation="vertical"
tools:context=".ResultActivity">

<TextView
android:id="@+id/result_IMC"
android:layout_width="wrap_content"

6
android:layout_height="wrap_content"
android:text=""
android:textSize="24sp" />

<TextView
android:id="@+id/result_interpretation"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=""
android:textColor="@color/Cnrml"
android:textSize="24sp" />
</LinearLayout>

II. Résultats :

Exercice 2 :

I. Code:
7
Mainactivity1.java
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import androidx.appcompat.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {


EditText Bill;
EditText Tip;
EditText people;
Button calculate;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Bill=(EditText) findViewById(R.id.BillAmount);
Tip=(EditText) findViewById(R.id.Tip);
people=(EditText) findViewById(R.id.Nopeople);
calculate=(Button) findViewById(R.id.calcul);
calculate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (Bill.getText().toString().equals("") &&

Tip.getText().toString().equals("")&&people.getText().toString().equals("")
){
AlertDialog.Builder builder;
builder = new AlertDialog.Builder(MainActivity.this);
builder.setTitle("Alert !!!")//donner un titre

.setMessage("veuillez remplir tous les


champs ?")
.setPositiveButton("ok", new
DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface
dialogInterface,
int i) {
dialogInterface.dismiss();
}
})
.setNegativeButton("", new
DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface
dialogInterface,
int i) {
}
})
.show();}
else {
Intent intent = new Intent(MainActivity.this,
MainActivity2.class);
int BILL = Integer.parseInt(Bill.getText().toString());

8
int TIP = Integer.parseInt(Tip.getText().toString());
int People =
Integer.parseInt(people.getText().toString());
double tipAmount = BILL * TIP * 0.01;
double totalAmount = BILL + tipAmount;
double perPerson = totalAmount / People;
String s = Double.toString(totalAmount);
String s2 = Double.toString(perPerson);
String s1 = Double.toString(tipAmount);
intent.putExtra("tip", s1);
intent.putExtra("people", s2);
intent.putExtra("amout", s);
startActivity(intent);
}
}
});
}

XML1

<?xml version="1.0" encoding="utf-8"?>


<LinearLayout 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="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">

<TextView
android:id="@+id/textView2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="bill Amount" />

<EditText
android:id="@+id/BillAmount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="textPersonName"
android:minHeight="48dp"
android:text="Name"
tools:ignore="MissingConstraints" />

<TextView
android:id="@+id/textView3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Tip" />

<EditText
android:id="@+id/Tip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"

9
android:inputType="textPersonName"
android:minHeight="48dp"
android:text="Name"
tools:ignore="MissingConstraints" />

<TextView
android:id="@+id/textView4"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="No people" />

<EditText
android:id="@+id/Nopeople"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="textPersonName"
android:minHeight="48dp"
android:text="Name"
tools:ignore="MissingConstraints" />

<Button
android:id="@+id/calcul"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button" />

</LinearLayout>

MainActivity2.java
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;

public class MainActivity2 extends AppCompatActivity {


TextView total,tip,person;
@Override
protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
tip=(TextView) findViewById(R.id.resultat_Tip);
total=(TextView) findViewById(R.id.resultat_total_amount);
person=(TextView) findViewById(R.id.resultat_per_Person);
String textTip=getIntent().getStringExtra("tip");
String textTotal=getIntent().getStringExtra("amout");
String textPeople=getIntent().getStringExtra("people");
tip.setText( textTip);//affichage des resultats
total.setText(textTotal);
person.setText(textPeople);
}
}

XML2 :
<?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"

10
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity2">

<TextView
android:id="@+id/resultat_Tip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="96dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="258dp"
android:layout_marginBottom="49dp"
android:text="TextView"
app:layout_constraintBottom_toTopOf="@+id/resultat_per_Person"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/resultat_total_amount" />

<TextView
android:id="@+id/resultat_total_amount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="96dp"
android:layout_marginEnd="258dp"
android:layout_marginBottom="28dp"
android:text="TextView"
app:layout_constraintBottom_toTopOf="@+id/resultat_per_Person"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />

<TextView
android:id="@+id/resultat_per_Person"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="96dp"
android:layout_marginTop="28dp"
android:layout_marginEnd="258dp"
android:layout_marginBottom="578dp"
android:text="TextView"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/resultat_total_amount" />
</androidx.constraintlayout.widget.ConstraintLayout>

II. Resultat:

11
Exercice 3

I. Code
MainActivity1.java
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.EditText;
import android.widget.SeekBar;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {


EditText amount;
TextView Percent;
SeekBar Bar;
TextView Tip;
TextView Total;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
amount=findViewById(R.id.amount);
Percent=findViewById(R.id.percent);
Tip=findViewById(R.id.tip);
Total=findViewById(R.id.total);
Bar=findViewById(R.id.seekBar);
Bar.setOnSeekBarChangeListener(new

12
SeekBar.OnSeekBarChangeListener() {
@Override//lorsque bar change
public void onProgressChanged(SeekBar seekBar, int progress,
boolean b) {
int percentval=progress;
Percent.setText(String.valueOf(percentval)+"%");
calcule();
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
});
}
public void calcule(){
double Amount= Double.parseDouble(amount.getText().toString());
int percent= Bar.getProgress();
double tipAmount=Amount*percent *0.01;
double totalAmount=Amount+tipAmount;
Tip.setText(String.valueOf(tipAmount));
Total.setText(String.valueOf( totalAmount));
} }

XML :
<?xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_column="2"
android:layout_row="4"
android:padding="16dp"
tools:context=".MainActivity">
<EditText
android:id="@+id/amount"
android:padding="12dp"
android:inputType="numberDecimal"
android:hint="Enter Amount"
android:background="#faca7a"
android:layout_column="0"
android:layout_row="0"
android:layout_gravity="fill_horizontal"
android:layout_columnSpan="2"/>
<TextView
android:id="@+id/percent"
android:layout_row="0"
android:layout_column="0"
android:layout_gravity="center"
android:text="15%"
android:textSize="16sp"
/>

<SeekBar
android:id="@+id/seekBar"
android:layout_row="0"
android:layout_column="1"
android:layout_gravity="fill_horizontal"

13
android:layout_margin="100dp"
android:max="30"
android:progress="15" />

<TextView
android:layout_row="2"
android:layout_column="0"
android:textSize="16sp"
android:text="Tip"
android:layout_gravity="center_vertical"
/>
<TextView
android:id="@+id/tip"
android:layout_row="2"
android:layout_column="1"
android:text="0.00"
android:textSize="16sp"
android:gravity="center"
android:background="#daff73"
android:padding="12dp"
android:layout_gravity="fill_horizontal"
android:layout_margin="16dp"
/>
<TextView
android:layout_row="3"
android:layout_column="0"
android:textSize="16sp"
android:text="Total"
android:layout_gravity="center_vertical"
/>
<TextView
android:id="@+id/total"
android:layout_row="3"
android:layout_column="1"
android:layout_gravity="fill_horizontal"
android:background="#daff73"
android:textSize="16sp"
android:padding="12dp"
android:gravity="center"

android:text="0.00"
android:layout_margin="16dp" />
</GridLayout>

14
II. Resultat:

Exercice 4

I. Code
MainActivity.java
import androidx.appcompat.app.AppCompatActivity;
import android.annotation.SuppressLint;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.ImageButton;

public class MainActivity extends AppCompatActivity {


EditText rech;
ImageButton btn1, btn2, btn;

@SuppressLint("MissingInflatedId")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
rech = (EditText) findViewById(R.id.edit);
btn = (ImageButton) findViewById(R.id.btn);
btn1 = (ImageButton) findViewById(R.id.btn1);
btn2 = (ImageButton) findViewById(R.id.btn2);
btn1.setOnClickListener(envoyer1Listener);
btn2.setOnClickListener(envoyer2Listener);
btn.setOnClickListener(envoyerListener);

15
}

private View.OnClickListener envoyerListener = new


View.OnClickListener() {
@Override
public void onClick(View view) {
String t = rech.getText().toString();
Uri chemin = Uri.parse("https://www.google.com/search?q=" + t);
Intent naviguer = new Intent(Intent.ACTION_VIEW, chemin);
startActivity(naviguer);
}
};

private View.OnClickListener envoyer1Listener = new


View.OnClickListener() {
@Override
public void onClick(View view) {
String t = rech.getText().toString();
Uri chemin = Uri.parse("https://fr.wikipedia.org/wiki/" + t);
Intent naviguer = new Intent(Intent.ACTION_VIEW, chemin);
startActivity(naviguer);
}
};

private View.OnClickListener envoyer2Listener = new


View.OnClickListener() {
@Override
public void onClick(View view) {
String t = rech.getText().toString();
Uri chemin =
Uri.parse("https://developer.android.com/search.html#q=" + t);
Intent naviguer = new Intent(Intent.ACTION_VIEW, chemin);
startActivity(naviguer);
}
};
}

XML:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">

<EditText
android:id="@+id/edit"
android:layout_width="match_parent"
android:layout_height="120dp"
android:layout_weight="1"
android:ems="10"
android:inputType="text"
android:text="Name" />

<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="100dp"

16
android:layout_weight="1"
android:text="TextView" />

<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:orientation="horizontal">

<ImageButton
android:id="@+id/btn1"
android:layout_width="300dp"
android:layout_height="200dp"
android:layout_weight="1"
android:src="@drawable/wikipedia"
android:contentDescription="go to google"/>

<ImageButton
android:id="@+id/btn2"
android:layout_width="300dp"
android:layout_height="200dp"
android:layout_weight="1"
android:src="@drawable/google"
android:contentDescription="go to wikipedia"/>

<ImageButton
android:id="@+id/btn"
android:layout_width="300dp"
android:layout_height="200dp"
android:layout_weight="1"
android:contentDescription="go to android"
android:src="@drawable/android" />

</LinearLayout>

</LinearLayout>

II. Resultat:

17
Ex5

I. Code
MainActiviy.java
import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;

public class MainActivity extends AppCompatActivity {


EditText num1;
EditText num2;
Spinner sp;
Button btn;
EditText res;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btn = (Button) findViewById(R.id.btnResult);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
num1 = (EditText) findViewById(R.id.num1);
num2 = (EditText) findViewById(R.id.num2);
sp = (Spinner) findViewById(R.id.spinner);
res = (EditText) findViewById(R.id.resultat);
String selectedItem = (String)
sp.getSelectedItem().toString();
// float a1 = Float.parseFloat(num1.getText().toString());
// float b1 = Float.parseFloat(num2.getText().toString());

if(selectedItem.equals("+")){
float result =
Float.parseFloat(num1.getText().toString()) +
Float.parseFloat(num2.getText().toString());
res.setText(Float.toString(result));
// res.setText("selectedItem");
}
if(selectedItem.equals("-")){
float result =
Float.parseFloat(num1.getText().toString()) -
Float.parseFloat(num2.getText().toString());
res.setText(Float.toString(result));}
if(selectedItem.equals("x")){
float result =
Float.parseFloat(num1.getText().toString()) *
Float.parseFloat(num2.getText().toString());
res.setText(Float.toString(result));
} if(selectedItem.equals("/")){

18
float result =
Float.parseFloat(num1.getText().toString()) /
Float.parseFloat(num2.getText().toString());
res.setText(Float.toString(result));

}
}
});
}}

XML:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">

<LinearLayout
android:layout_width="match_parent"
android:layout_height="98dp"
android:orientation="horizontal">

<EditText
android:id="@+id/num1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10"
android:inputType="textPersonName"
android:minHeight="48dp"
android:text="Name" />

<Spinner
android:id="@+id/spinner"
android:layout_width="124dp"
android:layout_height="61dp"
android:layout_weight="1"
android:contentDescription="@string/app_name"
android:entries="@array/options_array"/>

<EditText
android:id="@+id/num2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10"

19
android:inputType="textPersonName"
android:minHeight="48dp"
android:text="Name" />

</LinearLayout>
<Button
android:id="@+id/btnResult"
android:layout_width="230dp"
android:layout_height="59dp"
android:text="Button" />

<EditText
android:id="@+id/resultat"
android:layout_width="314dp"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="textPersonName"
android:minHeight="48dp"
android:text="Name" />

</LinearLayout>

II. Resultat:

20
Ex6

I. Code:
MainActivity.java
import androidx.appcompat.app.AppCompatActivity;

import android.annotation.SuppressLint;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.Spinner;

public class MainActivity extends AppCompatActivity {


private Spinner spinner_object;
@SuppressLint("MissingInflatedId")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
spinner_object=(Spinner) findViewById(R.id.spinner1);
ArrayAdapter adapter
=ArrayAdapter.createFromResource(this,R.array.intents,
androidx.appcompat.R.layout.support_simple_spinner_dropdown_item);

adapter.setDropDownViewResource(androidx.appcompat.R.layout.support_simple_
spinner_dropdown_item);
spinner_object.setAdapter(adapter);
Button but =(Button) findViewById(R.id.button1);
but.setOnClickListener(envoyerListener);
}
private View.OnClickListener envoyerListener=new View.OnClickListener()
{
@Override
public void onClick(View view){
int position = spinner_object.getSelectedItemPosition();
Intent intent = null;
switch(position){
case 0:
intent = new Intent(Intent.ACTION_VIEW,
Uri.parse("http://www.google.com"));
break;
case 1:
intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:
+21632659832"));
break;
case 2:
intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:
+21632659832"));
break;
case 3:
intent = new Intent(Intent.ACTION_VIEW,

21
Uri.parse("http://www.google.com"));
break;
}
if(intent != null){
startActivity(intent);
}
}
};
}

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="match_parent"
tools:context=".MainActivity">

<Spinner
android:id="@+id/spinner1"
android:layout_width="151dp"
android:layout_height="50dp"
android:layout_marginStart="36dp"
android:layout_marginTop="24dp"
android:entries="@array/intents"
android:minHeight="48dp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />

<Button
android:id="@+id/button1"
android:layout_width="120dp"
android:layout_height="60dp"
android:layout_marginStart="212dp"
android:layout_marginTop="16dp"
android:text="demarrer"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>

22
II. Resultat:

Exercice 7:

I. Code
MainActivity.java
package com.example.exerciceseven;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;

import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.TextView;

import java.text.DecimalFormat;
import java.util.ArrayList;
import java.util.List;

public class MainActivity extends AppCompatActivity {

23
private EditText euroAmountEditText;
private Button convertButton;
private TextView resultTextView;
private ListView historyListView;
private ArrayAdapter<String> historyAdapter;
private List<String> conversionHistory = new ArrayList<>();
private static final double EUR_TO_TND = 3.34;

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

euroAmountEditText = findViewById(R.id.euroAmountEditText);
convertButton = findViewById(R.id.convertButton);
resultTextView = findViewById(R.id.resultTextView);
historyListView = findViewById(R.id.historyListView);

historyAdapter = new ArrayAdapter<>(this,


android.R.layout.simple_list_item_1, conversionHistory);
historyListView.setAdapter(historyAdapter);

convertButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
convertCurrency();
}
});
}

private void convertCurrency() {


String euroAmountString = euroAmountEditText.getText().toString();
if (!euroAmountString.isEmpty()) {
double euroAmount = Double.parseDouble(euroAmountString);
double result = euroAmount * EUR_TO_TND;

DecimalFormat df = new DecimalFormat("#.##");


String resultString = df.format(result) + " TND";
resultTextView.setText(resultString);

String historyEntry = euroAmountString + " EUR => " +


resultString;
conversionHistory.add(0, historyEntry);
historyAdapter.notifyDataSetChanged();
euroAmountEditText.setText("");
}
}
}

activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
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="match_parent"
android:orientation="vertical"
android:padding="16dp"

24
tools:context=".MainActivity">

<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Convertisseur de devises"
android:textSize="24sp"
android:textColor="#FFA500"
android:textStyle="bold"
android:layout_gravity="center"
android:gravity="center"/>

<EditText
android:id="@+id/euroAmountEditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Saisissez le montant en euros"
android:padding="16sp"
android:layout_margin="16sp"
android:background="@drawable/edittext_background"/>

<Button
android:id="@+id/convertButton"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Convert"
android:background="#FFA500"/>

<TextView
android:id="@+id/resultTextView"
android:layout_margin="16sp"
android:background="@drawable/edittext_background"
android:padding="16sp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Result.."/>

<ListView
android:id="@+id/historyListView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:divider="?android:attr/listDivider"
android:dividerHeight="1dp"/>

</LinearLayout>

25
II. Resultat:

26

You might also like