Bonjour,

Voici ma listeview :

Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
 
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/container"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
     >
 
    <ListView
        android:id="@+id/listemployes"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" 
        android:dividerHeight="0.1dp"
        android:divider="#0000CC">
    </ListView>
 
</FrameLayout>

Voici ma relative layout :

Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
 
 
 
<?xml version="1.0" encoding="utf-8"?>
 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:padding="2dp"
 
 
    >
 
 
    <TextView
        android:id="@+id/textViewNom"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="10dp"
        android:layout_toRightOf="@+id/profile_pic"
        android:paddingBottom="10dp"
        android:textSize="20sp"
        android:textColor="@color/blue"
	    android:textStyle="bold"
	    android:width="140dp"
 
	    />
 
     <TextView
        android:id="@+id/textViewPrenom"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textViewNom"
        android:layout_below="@+id/textViewNom"
        android:textSize="16sp" />
 
 
      <TextView
        android:id="@+id/textViewTelephone"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/textViewPrenom"
        android:layout_alignBottom="@+id/textViewPrenom"
        android:layout_alignParentRight="true"
        android:textSize="16sp"
 
	     />
 
 
 
          <Button
        android:id="@+id/btn_details"
        android:layout_width="200dip"
        android:layout_height="wrap_content"
        android:text="Plus de détails"
        android:layout_alignLeft="@+id/textViewTelephone"
        android:layout_below="@+id/textViewTelephone"
        android:layout_alignParentLeft="true"
        android:layout_marginTop="15dip"
        android:layout_marginLeft="110dip"
        android:onClick="transferer"/>
 
 
 
</RelativeLayout>


Activités(tout en sachant que je récupère les données depuis une base de données) :

Code Java : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
 
 
 
protected void onCreate(Bundle savedInstanceState) {
 
		super.onCreate(savedInstanceState);
 
		setContentView(R.layout.my_activity);
 
 
 
		lv =  (ListView) findViewById(R.id.listemployes);
 
 
 
		 TaskWs task = new TaskWs(); 
 
 
 
		 task.execute();
 
 
 
	}	
 
public void transferer(View v) {
 
          TextView tv_telephone = (TextView)findViewById(R.id.textViewTelephone);
         final String telephone = tv_telephone.getText().toString();
 
 
         TextView TVnom = (TextView)findViewById(R.id.textViewNom);
         String nom = TVnom.getText().toString();
 
         TextView TVprenom = (TextView) findViewById(R.id.textViewPrenom);
         String prenom = TVprenom.getText().toString();
 
 
 
 
	      ad = new AlertDialog.Builder(MyActivity.this)
	        .setTitle("Employé")
	        .setMessage("Nom : "+nom)
                .setMessage("Prénom : "+prenom)
	        .setSingleChoiceItems(monadaptateur, -1, new DialogInterface.OnClickListener() {
 
				@Override
				public void onClick(DialogInterface dialog, int which) {
					Toast.makeText(getApplicationContext(), "appeler "+telephone, Toast.LENGTH_LONG).show();
                    dialog.cancel();
 
				}
			})
	        .setPositiveButton("Appeler",
	                new DialogInterface.OnClickListener() {
 
	                    public void onClick(DialogInterface dialog, int id) {
 
 
                                 Intent callIntent = new Intent(Intent.ACTION_CALL);
				 callIntent.setData(Uri.parse(telephone.trim()));
			         startActivity(callIntent );
 
	                        dialog.cancel();
	                    }
	                })
 
 
	        .setNegativeButton("Ajouter contact", new DialogInterface.OnClickListener() {
 
	            public void onClick(DialogInterface dialog, int id) {
 
 
     ArrayList < ContentProviderOperation > ops = new ArrayList < ContentProviderOperation > ();
 
				 ops.add(ContentProviderOperation.newInsert(
				 ContactsContract.RawContacts.CONTENT_URI)
				     .withValue(ContactsContract.RawContacts.ACCOUNT_TYPE, null)
				     .withValue(ContactsContract.RawContacts.ACCOUNT_NAME, null)
				     .build());
 
 
				 if (nom != null) {
				     ops.add(ContentProviderOperation.newInsert(
				     ContactsContract.Data.CONTENT_URI)
				         .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
				         .withValue(ContactsContract.Data.MIMETYPE,
				     ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE)
				         .withValue(
				     ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME,
				     nom).build());
				 }
 
 
				 if (telephone != null) {
				     ops.add(ContentProviderOperation.
				     newInsert(ContactsContract.Data.CONTENT_URI)
				         .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
				         .withValue(ContactsContract.Data.MIMETYPE,
				     ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE)
				         .withValue(ContactsContract.CommonDataKinds.Phone.NUMBER, telephone)
				         .withValue(ContactsContract.CommonDataKinds.Phone.TYPE,
				     ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE)
				         .build());
				 }
 
	                dialog.cancel();
	            }
	        }).show();
 
	}
 
 
 
 
 
 
 
 
 
 
 
 
 
}








Ce qui marche :

* La liste s'affiche normalement avec ses items(et donc aucun problème avec la base).
* Ajouter contact marche normalement.


Ce qui ne marche pas :

1) Appeler : ne marche pas ! avec un message d'erreur :

"android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.CALL dat=003312345678 }"

2) quand je clique sur un item, c'est les données d'un autre item qui s'affiche!!!!

3) Avec une "alertDialog" je peux pas afficher plusieurs données????

.setMessage("Nom : "+nom)
.setMessage("Prénom : "+prenom)
.setMessage("Téléphone : "telephone)

ça ne marche pas!!



Objectifs :

Donc je dois avoir une liste de mes employés(c'est bon) :

Nom
Prenom
Telephone

[Plus de détails]

Ou même sans bouton ! Le plus important quand je clique sur "item" une "AlertDialog" s'affiche et me propose tous les détails :

Nom
Prenom
Telephone
Mail
Adresse

avec 2 boutons : [Appeler] / [Ajouter contact]



Remarque :

J'ai essayé une autre méthode :

Code Java : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
 
lv.setOnItemClickListener(new OnItemClickListener() {
 
 
	public void onItemClick(AdapterView<?> parent, View viewItem, int position, long arg3) throws NullPointerException {
 
}



mais ça n'a pas marché!!!! (Quand je clique sur un item rien ne se passe)


Je vous remercie d'avance.