Guest User

Untitled

a guest
Aug 22nd, 2012
323
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.57 KB | None | 0 0
  1. package com.ninja.team.autodealer.activities;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.Calendar;
  5. import java.util.HashMap;
  6. import java.util.List;
  7.  
  8. import android.app.Activity;
  9. import android.content.Intent;
  10. import android.database.Cursor;
  11. import android.graphics.Bitmap;
  12. import android.graphics.BitmapFactory;
  13. import android.net.Uri;
  14. import android.os.Bundle;
  15. import android.provider.MediaStore;
  16. import android.util.Log;
  17. import android.view.ContextMenu;
  18. import android.view.ContextMenu.ContextMenuInfo;
  19. import android.view.MenuItem;
  20. import android.view.View;
  21. import android.view.View.OnClickListener;
  22. import android.widget.ArrayAdapter;
  23. import android.widget.Button;
  24. import android.widget.ImageView;
  25. import android.widget.ListView;
  26. import android.widget.SimpleAdapter;
  27. import android.widget.Spinner;
  28. import android.widget.Toast;
  29. import android.widget.ViewAnimator;
  30.  
  31. import com.ninja.team.autodealer.R;
  32.  
  33. public class WizardActivity extends Activity {
  34.  
  35. private ViewAnimator animator;
  36. private Spinner spnCategory, spnState, spnYear, spnFuel;
  37. private Button btnAddImage;
  38. private ImageView ivCar1;
  39. private static final int IMAGE_PICK = 1;
  40. private static final int IMAGE_CAPTURE = 2;
  41.  
  42.  
  43. @Override
  44. public void onCreate(Bundle savedInstanceState) {
  45. super.onCreate(savedInstanceState);
  46.  
  47. animator = new ViewAnimator(this);
  48.  
  49. View step1 = View.inflate(this, R.layout.activity_add1, null);
  50. View step2 = View.inflate(this, R.layout.activity_add2, null);
  51. View step3 = View.inflate(this, R.layout.activity_add3, null);
  52. View step4 = View.inflate(this, R.layout.activity_add4, null);
  53.  
  54. animator.addView(step1);
  55. animator.addView(step2);
  56. animator.addView(step3);
  57. animator.addView(step4);
  58.  
  59. animator.setAnimateFirstView(true);
  60.  
  61. step1.findViewById(R.id.btn_step1_next).setOnClickListener(
  62. _getNextListener());
  63. step2.findViewById(R.id.btn_step2_next).setOnClickListener(
  64. _getNextListener());
  65. step3.findViewById(R.id.btn_step3_next).setOnClickListener(
  66. _getNextListener());
  67.  
  68. setContentView(animator);
  69.  
  70. // Add data for Spinners
  71. _addCategoryData();
  72. _addStateData();
  73. _addYearData();
  74. _addFuelData();
  75.  
  76. // Add data for list view in 4th step
  77. _imageListView();
  78.  
  79. // Register btnAddImage for Context menu
  80. btnAddImage = (Button) findViewById(R.id.btn_add_picture);
  81. registerForContextMenu(btnAddImage);
  82.  
  83. ivCar1 = (ImageView)findViewById(R.id.ivCar1);
  84.  
  85. }
  86.  
  87. @Override
  88. public void onBackPressed() {
  89. if (animator.getDisplayedChild() == 0)
  90. super.onBackPressed();
  91. else {
  92. animator.setInAnimation(WizardActivity.this,
  93. R.anim.wizard_slide_inh);
  94. animator.setOutAnimation(WizardActivity.this,
  95. R.anim.wizard_slide_outh);
  96.  
  97. animator.showPrevious();
  98. }
  99. }
  100.  
  101. public void onCreateContextMenu(ContextMenu menu, View v,
  102. ContextMenuInfo menuInfo) {
  103. super.onCreateContextMenu(menu, v, menuInfo);
  104. menu.setHeaderTitle("Dodaj sliku preko:");
  105. menu.add(0, v.getId(), 0, "Kamere");
  106. menu.add(0, v.getId(), 0, "Galerije");
  107. }
  108.  
  109. public boolean onContextItemSelected(MenuItem item) {
  110. if (item.getTitle() == "Kamere") {
  111. cameraFunction(item.getItemId());
  112. } else if (item.getTitle() == "Galerije") {
  113. galleryFunction(item.getItemId());
  114. } else {
  115. return false;
  116. }
  117. return true;
  118. }
  119.  
  120. public void cameraFunction(int id) {
  121. Intent intent = new Intent(
  122. android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
  123. startActivityForResult(intent, IMAGE_CAPTURE);
  124. }
  125.  
  126. public void galleryFunction(int id) {
  127. Intent intent = new Intent(Intent.ACTION_PICK,
  128. android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
  129. intent.setType("image/*");
  130. startActivityForResult(
  131. Intent.createChooser(intent, "Select Picture"), IMAGE_PICK);
  132. }
  133.  
  134. protected void onActivityResult(int requestCode, int resultCode, Intent data) {
  135.  
  136. if (resultCode == Activity.RESULT_CANCELED) {
  137. Toast.makeText(getApplicationContext(), "Greska", Toast.LENGTH_SHORT).show();
  138. }
  139. Log.d("Result code: "+ Integer.toString(Activity.RESULT_OK), null, null);
  140. if (resultCode == Activity.RESULT_OK) {
  141. switch (requestCode) {
  142. case IMAGE_PICK:
  143. this.imageFromGallery(resultCode, data);
  144. break;
  145. case IMAGE_CAPTURE:
  146. this.imageFromCamera(resultCode, data);
  147. break;
  148. default:
  149. break;
  150. }
  151. }
  152. }
  153.  
  154. private void imageFromCamera(int resultCode, Intent data) {
  155. this.ivCar1.setImageBitmap((Bitmap) data.getExtras().get("data"));
  156.  
  157. }
  158.  
  159. private void imageFromGallery(int resultCode, Intent data) {
  160. Uri selectedImage = data.getData();
  161. String[] filePathColumn = { MediaStore.Images.Media.DATA };
  162.  
  163. Cursor cursor = getContentResolver().query(selectedImage,
  164. filePathColumn, null, null, null);
  165. cursor.moveToFirst();
  166.  
  167. int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
  168. String filePath = cursor.getString(columnIndex);
  169. cursor.close();
  170.  
  171. this.ivCar1.setImageBitmap(BitmapFactory.decodeFile(filePath));
  172. }
  173.  
  174. private void _imageListView() {
  175.  
  176. int[] carImages = new int[] { R.drawable.toyota, R.drawable.smartcar1, };
  177.  
  178. int delete = R.drawable.delete;
  179.  
  180. List<HashMap<String, String>> imageList = new ArrayList<HashMap<String, String>>();
  181.  
  182. for (int i = 0; i < carImages.length; i++) {
  183. HashMap<String, String> hm = new HashMap<String, String>();
  184. hm.put("deleteImage", Integer.toString(delete));
  185. hm.put("carImage", Integer.toString(carImages[i]));
  186. imageList.add(hm);
  187. }
  188.  
  189. String[] from = { "carImage", "deleteImage" };
  190. int[] to = { R.id.ivCar1, R.id.ivDelete };
  191.  
  192. SimpleAdapter adapter = new SimpleAdapter(getBaseContext(), imageList,
  193. R.layout.image_list_item, from, to);
  194. ListView listView = (ListView) findViewById(R.id.list);
  195. listView.setAdapter(adapter);
  196. }
  197.  
  198. private OnClickListener _getNextListener() {
  199. return new OnClickListener() {
  200.  
  201. public void onClick(View v) {
  202. animator.setInAnimation(WizardActivity.this,
  203. R.anim.wizard_slide_in);
  204. animator.setOutAnimation(WizardActivity.this,
  205. R.anim.wizard_slide_out);
  206.  
  207. animator.showNext();
  208. }
  209. };
  210. }
  211.  
  212. private void _addStateData() {
  213.  
  214. spnState = (Spinner) findViewById(R.id.spn_step1_state);
  215.  
  216. List<SpinnerData> list = new ArrayList<SpinnerData>();
  217. list.add(new SpinnerData("Novo", 1));
  218. list.add(new SpinnerData("Polovno", 2));
  219.  
  220. ArrayAdapter<SpinnerData> stateAdapter = new ArrayAdapter<SpinnerData>(
  221. this, android.R.layout.simple_spinner_item, list);
  222. stateAdapter
  223. .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
  224.  
  225. spnState.setAdapter(stateAdapter);
  226. }
  227.  
  228. private void _addCategoryData() {
  229.  
  230. spnCategory = (Spinner) findViewById(R.id.spn_step1_category);
  231.  
  232. List<SpinnerData> list = new ArrayList<SpinnerData>();
  233. list.add(new SpinnerData("Limuzina", 1));
  234. list.add(new SpinnerData("Kabriolet", 2));
  235. list.add(new SpinnerData("Karavan", 3));
  236. list.add(new SpinnerData("Kupe", 4));
  237. list.add(new SpinnerData("Kombi", 5));
  238. list.add(new SpinnerData("Kamion", 6));
  239. list.add(new SpinnerData("Terenac", 7));
  240. list.add(new SpinnerData("Motor", 8));
  241. list.add(new SpinnerData("Ostalo", 9));
  242.  
  243. ArrayAdapter<SpinnerData> categoryAdapter = new ArrayAdapter<SpinnerData>(
  244. this, android.R.layout.simple_spinner_item, list);
  245. categoryAdapter
  246. .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
  247.  
  248. spnCategory.setAdapter(categoryAdapter);
  249. }
  250.  
  251. private void _addYearData() {
  252.  
  253. spnYear = (Spinner) findViewById(R.id.spn_step1_year);
  254.  
  255. List<SpinnerData> list = new ArrayList<SpinnerData>();
  256.  
  257. for (int i = Calendar.getInstance().get(Calendar.YEAR); i >= 1950; i--)
  258. list.add(new SpinnerData(String.valueOf(i), i));
  259.  
  260. ArrayAdapter<SpinnerData> yearAdapter = new ArrayAdapter<SpinnerData>(
  261. this, android.R.layout.simple_spinner_item, list);
  262. yearAdapter
  263. .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
  264.  
  265. spnYear.setAdapter(yearAdapter);
  266. }
  267.  
  268. private void _addFuelData() {
  269.  
  270. spnFuel = (Spinner) findViewById(R.id.spn_step1_fuel);
  271.  
  272. List<SpinnerData> list = new ArrayList<SpinnerData>();
  273. list.add(new SpinnerData("Benzin", 1));
  274. list.add(new SpinnerData("Dizel", 2));
  275. list.add(new SpinnerData("Plin", 3));
  276. list.add(new SpinnerData("Elektro", 4));
  277. list.add(new SpinnerData("Hibrid", 5));
  278.  
  279. ArrayAdapter<SpinnerData> fuelAdapter = new ArrayAdapter<SpinnerData>(
  280. this, android.R.layout.simple_spinner_item, list);
  281. fuelAdapter
  282. .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
  283.  
  284. spnFuel.setAdapter(fuelAdapter);
  285. }
  286. }
Advertisement
Add Comment
Please, Sign In to add comment