Guest User

Untitled

a guest
Mar 9th, 2017
47
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 13.34 KB | None | 0 0
  1. package com.example.naabi.listeserie;
  2.  
  3. import android.app.AlertDialog;
  4. import android.content.DialogInterface;
  5. import android.os.Bundle;
  6. import android.support.v7.app.AppCompatActivity;
  7. import android.util.Log;
  8. import android.view.MotionEvent;
  9. import android.view.View;
  10. import android.widget.AdapterView;
  11. import android.widget.ArrayAdapter;
  12. import android.widget.BaseAdapter;
  13. import android.widget.Button;
  14. import android.widget.EditText;
  15. import android.widget.LinearLayout;
  16. import android.widget.ListView;
  17. import android.widget.TextView;
  18.  
  19. import java.util.ArrayList;
  20. import java.util.Arrays;
  21.  
  22. import com.example.naabi.listeserie.dao.SerialisationSerieDAO;
  23. import com.example.naabi.listeserie.modele.Acteur;
  24. import com.example.naabi.listeserie.modele.Episode;
  25. import com.example.naabi.listeserie.modele.Saison;
  26. import com.example.naabi.listeserie.modele.Serie;
  27.  
  28. public class descriptionMrRobot extends AppCompatActivity implements AdapterView.OnItemClickListener{
  29. private TextView descSerie;
  30. private TextView nomSerie;
  31. private ListView lView1;
  32. private ListView lView2;
  33. private Button bSend;
  34. private ArrayList listeAct = new ArrayList();
  35. private ArrayList listeEpiSai1 = new ArrayList();
  36. private ArrayList listeEpiSai2 = new ArrayList();
  37. private String[] listeSai = {" 1", " 2"};
  38. private String description = new String();
  39. private String nom = new String();
  40. SerialisationSerieDAO dao = SerialisationSerieDAO.getInstance();
  41.  
  42.  
  43.  
  44.  
  45. //########1ere saison##########
  46. Episode ep1 = new Episode("1", "eps1.0_hellofriend.mov");
  47. Episode ep2 = new Episode("2", "eps1.1_ones-and-zer0es.mpeg");
  48. Episode ep3 = new Episode("3", "eps1.2_d3bug.mkv");
  49. Episode ep4 = new Episode("4", "eps1.3_da3m0ns.mp4");
  50. Episode ep5 = new Episode("5", "eps1.4_3xpl0its.wmv");
  51. Episode ep6 = new Episode("6", "eps1.5_br4ve-trave1er.asf");
  52. Episode ep7 = new Episode("7", "eps1.6_v1ew-s0urce.flv");
  53. Episode ep8 = new Episode("8", "eps1.7_wh1ter0se.m4v");
  54. Episode ep9 = new Episode("9", "eps1.8_m1rr0r1ng.qt");
  55. Episode ep10 = new Episode("10", "eps1.9_zer0-day.avi");
  56. ArrayList<Episode> EpS1= new ArrayList();
  57. //#############################
  58.  
  59. //########acteurs##############
  60. Acteur ac1 = new Acteur("1", "Rami Malek");
  61. Acteur ac2 = new Acteur("2", "Carly Chaikins");
  62. Acteur ac3 = new Acteur("3", "Cristian Slater");
  63. Acteur ac4 = new Acteur("4", "Portia DoubleDay");
  64. ArrayList<Acteur> LAct = new ArrayList();
  65. //#############################
  66.  
  67. //########Série################
  68. ArrayList<Saison> listeSais1 = new ArrayList();
  69. ArrayList<Serie> listeAllSerie = new ArrayList();
  70. //#############################
  71. @Override
  72. protected void onCreate(Bundle savedInstanceState) {
  73. Log.i("Passage","Passage dans le onCreate");
  74. super.onCreate(savedInstanceState);
  75. setContentView(R.layout.activity_description_mr_robot);
  76. description = getResources().getString(R.string.descSerie);
  77. nom = getResources().getString(R.string.nomSerie);
  78. restoreMe(savedInstanceState);
  79. listeAct.addAll(Arrays.asList(getResources().getStringArray(R.array.acteur)));
  80. listeEpiSai1.addAll(Arrays.asList(getResources().getStringArray(R.array.epiSaison1)));
  81. listeEpiSai2.addAll(Arrays.asList(getResources().getStringArray(R.array.epiSaison2)));
  82. for (int i=0; i < listeSai.length; i++) {
  83. listeSai[i]= this.getResources().getString(R.string.saison) + listeSai[i];
  84. }
  85.  
  86.  
  87. EpS1.add(ep1);
  88. EpS1.add(ep2);
  89. EpS1.add(ep3);
  90. EpS1.add(ep4);
  91. EpS1.add(ep5);
  92. EpS1.add(ep6);
  93. EpS1.add(ep7);
  94. EpS1.add(ep8);
  95. EpS1.add(ep9);
  96. EpS1.add(ep10);
  97. LAct.add(ac1);
  98. LAct.add(ac2);
  99. LAct.add(ac3);
  100. LAct.add(ac4);
  101.  
  102. Saison s1 = new Saison("1",EpS1);
  103. listeSais1.add(s1);
  104. Serie ser1 = new Serie(listeSais1, LAct, "1", "mrrobot", "Ceci est une courte description", "Mr Robot");
  105. listeAllSerie.add(ser1);
  106. }
  107.  
  108. @Override
  109. public void onStart() {
  110. Log.i("Passage","Passage dans le onStart");
  111. super.onStart();
  112.  
  113. final ArrayAdapter<String> adapteracteur = new ArrayAdapter<>(this,android.R.layout.simple_list_item_1, listeAct);
  114. final ArrayAdapter<String> adaptersaison = new ArrayAdapter<>(this,android.R.layout.simple_list_item_single_choice, listeSai);
  115.  
  116. //#############FINDBYID################
  117. this.lView1 = (ListView) findViewById(R.id.listeSaison);
  118. this.lView2 = (ListView) findViewById(R.id.acteurSerie);
  119. this.nomSerie = (TextView) findViewById(R.id.nomSerie);
  120. this.descSerie = (TextView) findViewById(R.id.descSerie);
  121. this.bSend = (Button) findViewById(R.id.bEnv);
  122. //#####################################
  123.  
  124. //#######RECUPVARIABLE#################
  125. descSerie.setText(description);
  126. nomSerie.setText(nom);
  127. //#####################################
  128.  
  129.  
  130. lView1.setAdapter(adaptersaison);
  131. lView1.setItemChecked(0, true);
  132. lView1.setOnTouchListener(new View.OnTouchListener() {
  133. @Override
  134. public boolean onTouch(View v, MotionEvent ACTION_UP) {
  135. v.getParent().requestDisallowInterceptTouchEvent(true);
  136. return false;
  137. }
  138. });
  139.  
  140. lView2.setAdapter(adapteracteur);
  141. lView2.setItemChecked(0, true);
  142. lView2.setOnTouchListener(new View.OnTouchListener() {
  143. // Setting on Touch Listener for handling the touch inside ScrollView
  144. @Override
  145. public boolean onTouch(View v, MotionEvent ACTION_UP) {
  146. // Disallow the touch request for parent scroll on touch of child view
  147. v.getParent().requestDisallowInterceptTouchEvent(true);
  148. return false;
  149. }
  150. });
  151.  
  152.  
  153. //#############LISTENER################
  154. lView1.setOnItemClickListener(this);
  155.  
  156. lView2.setOnLongClickListener(new View.OnLongClickListener() {
  157. @Override
  158. public boolean onLongClick(View v) {
  159. final AlertDialog.Builder fenetreConstruct = new AlertDialog.Builder(descriptionMrRobot.this);
  160. fenetreConstruct.setTitle("Editeur");
  161. fenetreConstruct.setMessage("Zone d'édition");
  162. fenetreConstruct.setCancelable(false);
  163. final EditText input = new EditText(descriptionMrRobot.this);
  164. LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT);
  165. input.setLayoutParams(lp);
  166. fenetreConstruct.setView(input);
  167.  
  168. fenetreConstruct.setPositiveButton("Ok",new DialogInterface.OnClickListener() {
  169. public void onClick(DialogInterface dialog, int id) {
  170. lView2.setTag(input.getText());
  171. ((BaseAdapter) adapteracteur).notifyDataSetChanged();
  172. }
  173. });
  174.  
  175. fenetreConstruct.setNegativeButton("Annuler",new DialogInterface.OnClickListener() {
  176. public void onClick(DialogInterface dialog, int id) {
  177. //Rien pour le moment
  178. }
  179. });
  180.  
  181. final AlertDialog fenetre = fenetreConstruct.create();
  182. fenetre.show();
  183. return false;
  184. } });
  185.  
  186. nomSerie.setOnLongClickListener(new View.OnLongClickListener() {
  187. @Override
  188. public boolean onLongClick(View v) {
  189. final AlertDialog.Builder fenetreConstruct = new AlertDialog.Builder(descriptionMrRobot.this);
  190. fenetreConstruct.setTitle("Editeur");
  191. fenetreConstruct.setMessage("Zone d'édition");
  192. fenetreConstruct.setCancelable(false);
  193. final EditText input = new EditText(descriptionMrRobot.this);
  194. LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT);
  195. input.setLayoutParams(lp);
  196. fenetreConstruct.setView(input);
  197.  
  198. fenetreConstruct.setPositiveButton("Ok",new DialogInterface.OnClickListener() {
  199. public void onClick(DialogInterface dialog, int id) {
  200. nomSerie.setText(input.getText());
  201. }
  202. });
  203.  
  204. fenetreConstruct.setNegativeButton("Annuler",new DialogInterface.OnClickListener() {
  205. public void onClick(DialogInterface dialog, int id) {
  206. //Rien pour le moment
  207. }
  208. });
  209.  
  210. final AlertDialog fenetre = fenetreConstruct.create();
  211. fenetre.show();
  212. return false;
  213. } });
  214.  
  215.  
  216. descSerie.setOnLongClickListener(new View.OnLongClickListener() {
  217. @Override
  218. public boolean onLongClick(View v) {
  219. final AlertDialog.Builder fenetreConstruct = new AlertDialog.Builder(descriptionMrRobot.this);
  220. fenetreConstruct.setTitle("Editeur");
  221. fenetreConstruct.setMessage("Zone d'édition");
  222. fenetreConstruct.setCancelable(false);
  223. final EditText input = new EditText(descriptionMrRobot.this);
  224. input.setText(descSerie.getText());
  225. input.setMaxHeight(450);
  226. LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT);
  227. input.setLayoutParams(lp);
  228. fenetreConstruct.setView(input);
  229.  
  230. fenetreConstruct.setPositiveButton("Ok",new DialogInterface.OnClickListener() {
  231. public void onClick(DialogInterface dialog, int id) {
  232. descSerie.setText(input.getText());
  233. }
  234. });
  235.  
  236. fenetreConstruct.setNegativeButton("Annuler",new DialogInterface.OnClickListener() {
  237. public void onClick(DialogInterface dialog, int id) {
  238.  
  239. }
  240. });
  241.  
  242. final AlertDialog fenetre = fenetreConstruct.create();
  243. fenetre.show();
  244. return false;
  245. } });
  246. }
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254. //#####################################
  255.  
  256.  
  257.  
  258. public void onSaveInstanceState(Bundle saveInstanceState){
  259. Log.i("Passage","Passage dans le onSaveInstanceState");
  260. dao.writeAll(listeAllSerie);
  261. super.onSaveInstanceState(saveInstanceState);
  262. saveInstanceState.putStringArrayList("listeEpi1", listeEpiSai1);
  263. saveInstanceState.putStringArrayList("listeEpi2", listeEpiSai2);
  264. saveInstanceState.putStringArrayList("listeAc", listeAct);
  265. saveInstanceState.putString("descri", descSerie.getText().toString());
  266. saveInstanceState.putString("tit", nomSerie.getText().toString());
  267. }
  268.  
  269.  
  270. private void restoreMe(Bundle state) {
  271. Log.i("Passage","Passage dans le restoreMe");
  272. if (state!=null) {
  273. listeAct.addAll(state.getStringArrayList("listeAc"));
  274. listeEpiSai1.addAll(state.getStringArrayList("listeEpi1"));
  275. listeEpiSai2.addAll(state.getStringArrayList("listeEpi2"));
  276. nom = state.getString("tit");
  277. description = state.getString("descri");
  278.  
  279. }
  280. }
  281.  
  282.  
  283. public void onClickSend(View V) {
  284.  
  285. lView1.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_single_choice, listeSai));
  286. lView1.setItemChecked(0, true);
  287. lView1.setOnItemClickListener(this);
  288. bSend.setVisibility(View.GONE);
  289.  
  290. }
  291.  
  292. @Override
  293. public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
  294. bSend.setVisibility(View.VISIBLE);
  295. if(position == 0){
  296. lView1.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, listeEpiSai1));
  297. lView1.setOnTouchListener(new View.OnTouchListener() {
  298. // Setting on Touch Listener for handling the touch inside ScrollView
  299. @Override
  300. public boolean onTouch(View v, MotionEvent ACTION_UP) {
  301. // Disallow the touch request for parent scroll on touch of child view
  302. v.getParent().requestDisallowInterceptTouchEvent(true);
  303. return false;
  304. }
  305. });
  306. }
  307.  
  308. if(position == 1){
  309. lView1.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, listeEpiSai2));
  310. lView1.setOnTouchListener(new View.OnTouchListener() {
  311. // Setting on Touch Listener for handling the touch inside ScrollView
  312. @Override
  313. public boolean onTouch(View v, MotionEvent ACTION_UP) {
  314. // Disallow the touch request for parent scroll on touch of child view
  315. v.getParent().requestDisallowInterceptTouchEvent(true);
  316. return false;
  317. }
  318. });
  319. }
  320.  
  321. }
  322.  
  323.  
  324.  
  325. }
  326.  
  327. /* A bosser
  328. */
Add Comment
Please, Sign In to add comment