Bonjour,
J'aimerai lire mon fichier excel avec une listview "customisé".
J'ai crée mon constructeur, j'ai fait son adapter ainsi que les .xml, cependant je n'arrive pas à récupérer les données des cellules, pourtant il arrive à récuperer le nombre de ligne de mon excel.
Je me retrouve avec le nombre de ligne de mon excel mais pas son contenu.
.java
Locom.java
Code : 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 import android.app.Activity; import android.app.ListActivity; import android.content.Intent; import android.content.res.AssetManager; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.EditText; import android.widget.ImageView; import android.widget.ListView; import android.widget.TextView; import android.widget.Toast; import org.w3c.dom.Text; import java.io.InputStream; import java.util.ArrayList; import java.util.List; import jxl.Cell; import jxl.Sheet; import jxl.Workbook; public class DisplayMyCoProd extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.display_my_co_prod); ArrayList<Locom> myList = new ArrayList<Locom>(); Locom locom; locom = new Locom("Engin","Visite"); Intent intent = getIntent(); String pathFile = intent.getStringExtra("EXTRA_pathFile"); TextView txtv = (TextView)findViewById(R.id.textView); txtv.setText(pathFile); try { AssetManager am = getAssets(); InputStream is = am.open(pathFile); Workbook wb = Workbook.getWorkbook(is); Sheet sheet = wb.getSheet(0); int row = sheet.getRows(); int col = sheet.getColumns(); String xx = ""; for (int i = 2; i < row; i++) { for (int c = 1; c < col; c++) { Cell cell = sheet.getCell(c, i); switch (col) { case 1: locom.setEngin(cell.getContents()); break; case 2: locom.setVisite(cell.getContents()); break; default: break; } xx = xx + cell.getContents(); } myList.add(locom); } } catch (Exception e) { e.printStackTrace(); } LocomAdpater dataAdapter = new LocomAdpater(this, myList); ListView listView = (ListView) findViewById(R.id.display_listview); listView.setAdapter(dataAdapter); listView.setOnItemClickListener(new ItemListView()); } private class ItemListView implements AdapterView.OnItemClickListener { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { ViewGroup vg = (ViewGroup)view; TextView tv_e = (TextView)vg.findViewById(R.id.tv_engin); TextView tv_v = (TextView)vg.findViewById(R.id.tv_visite); String engin = tv_e.getText().toString(); String visite = tv_v.getText().toString(); Toast.makeText(DisplayMyCoProd.this,engin +" : "+ visite, Toast.LENGTH_SHORT).show(); Intent ChoixDMCPActivity = new Intent(DisplayMyCoProd.this, ChoixDMCP.class); ChoixDMCPActivity.putExtra("EXTRA_TV_E",engin); ChoixDMCPActivity.putExtra("EXTRA_TV_V",visite); startActivity(ChoixDMCPActivity); } } }
Code : 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 public class Locom { private String engin = null;; private String visite = null;; //Constructeur public Locom(String engin, String visite) { super(); this.engin = engin; this.visite = visite; } //set/get public String getEngin() { return engin; } public void setEngin(String engin) { this.engin = engin; } public String getVisite() { return visite; } public void setVisite(String visite) { this.visite = visite; } }
LocomAdapter.java
custom.listview.xml
Code : 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 import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ArrayAdapter; import android.widget.TextView; import java.util.ArrayList; import java.util.List; public class LocomAdpater extends ArrayAdapter<Locom> { private Context context; private ArrayList<Locom> myLocom; public LocomAdpater(Context context, ArrayList<Locom> myLocom){ super(context, 0, myLocom); this.context = context; this.myLocom = myLocom; } @Override public View getView(int position, View convertView, ViewGroup parent) { Locom locomPosition = this.myLocom.get(position); convertView = LayoutInflater.from(this.context).inflate(R.layout.custom_listview,null); //Fill the Engin/Visite TextView enginText = (TextView)convertView.findViewById(R.id.tv_engin); TextView visiteText = (TextView)convertView.findViewById(R.id.tv_visite); enginText.setText(locomPosition.getEngin()); visiteText.setText(locomPosition.getVisite()); return convertView; } }
display_my_co_prod.xml
Code : 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 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/tv_engin" android:text="Engin" android:textColor="#4bb6d6" android:textSize="20dp"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/tv_visite" android:text="Visite" android:textColor="#b30000" android:textSize="18dp" android:layout_marginLeft="30dp" /> </LinearLayout>
Code : 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 <?xml version="1.0" encoding="utf-8"?> <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:paddingBottom="16dp" android:paddingLeft="16dp" android:paddingRight="16dp" android:paddingTop="16dp" tools:context="com.mycoprod.akhetib.mycoprod.DisplayMyCoProd" android:background="#ffffff"> <ListView android:id="@+id/display_listview" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceLarge" android:text="MyCoProd" android:id="@+id/PHP" android:layout_gravity="center_horizontal" android:layout_centerVertical="true" android:layout_centerHorizontal="true" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="New Text" android:id="@+id/textView" android:layout_alignBottom="@+id/display_listview" android:layout_alignParentEnd="true" /> </RelativeLayout>
Partager