Advertisement
Guest User

Untitled

a guest
Jan 31st, 2013
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 12.84 KB | None | 0 0
  1. /// My Activity - PrevzemVozila.cs
  2. ///
  3. using System;
  4. using System.Data;
  5. using System.Collections.Generic;
  6. using System.Linq;
  7. using System.Text;
  8.  
  9. using Android.App;
  10. using Android.Content;
  11. using Android.OS;
  12. using Android.Runtime;
  13. using Android.Views;
  14. using Android.Widget;
  15. using Android.Content.PM;
  16. using Android.Provider;
  17. using Android.Net;
  18.  
  19. namespace Hyundai_Servis
  20. {
  21.     [Activity(Label = "Prevzem vozila v servis", NoHistory = true, Icon = "@drawable/Icon", ConfigurationChanges = Android.Content.PM.ConfigChanges.Orientation, ScreenOrientation = ScreenOrientation.Portrait)]
  22.     public class PrevzemVozila : Activity
  23.     {
  24.         si.rcg.hat._hat_Tablet chk = new si.rcg.hat._hat_Tablet();
  25.         Java.IO.File _file;
  26.         PackageManager _pm;
  27.  
  28.         protected override void OnCreate(Bundle bundle)
  29.         {
  30.             base.OnCreate(bundle);
  31.  
  32.             SetContentView(Resource.Layout.PrevzemVozila);
  33.  
  34.             _pm = this.PackageManager;
  35.  
  36.             //Window.SetSoftInputMode(SoftInput.StateAlwaysVisible);
  37.  
  38.             var Ticket = Intent.GetStringExtra("sentTicket") ?? "";
  39.             var FormIdStr = Intent.GetStringExtra("sentFormId") ?? "";
  40.             var EventNoStr = Intent.GetStringExtra("sentEventNo") ?? "";
  41.  
  42.             int FormId = int.Parse(FormIdStr);
  43.             int EventNo = int.Parse(EventNoStr);
  44.  
  45.             DataSet GetSingleEvent = new DataSet();
  46.             GetSingleEvent = chk.GetSingleEvent(Ticket, FormId, EventNo);
  47.  
  48.             IList<Prevzem> listPrevzem = new JavaList<Prevzem>();
  49.  
  50.  
  51.  
  52.             var lstPrevzem = FindViewById<ListView>(Resource.Id.lstPrevzem);
  53.             var prevzemAdapter = new PrevzemAdapter(this, Resource.Layout.ListPrevzem, new JavaList<Prevzem>());
  54.             lstPrevzem.Adapter = prevzemAdapter;
  55.             lstPrevzem.ScrollingCacheEnabled = false;
  56.  
  57.             foreach (DataRow row in GetSingleEvent.Tables[0].Rows)
  58.             {
  59.                 var item = new Prevzem();
  60.                 item.IdRec = row["IdRec"].ToString();
  61.                 if (item.IdRec.Equals(""))
  62.                     item.IdRec = null;
  63.  
  64.                 item.FieldId = row["FieldId"].ToString();
  65.                 if (item.FieldId.Equals(""))
  66.                     item.FieldId = null;
  67.  
  68.                 item.FieldDesc = row["FieldDesc"].ToString();
  69.                 if (item.FieldDesc.Equals(""))
  70.                     item.FieldDesc = null;
  71.  
  72.                 item.FieldType = row["FieldType"].ToString();
  73.                 if (item.FieldType.Equals(""))
  74.                     item.FieldType = null;
  75.  
  76.                 item.isReadOnly = row["isReadOnly"].ToString();
  77.                 if (item.isReadOnly.Equals(""))
  78.                     item.isReadOnly = null;
  79.  
  80.                 item.FieldValue = row["FieldValue"].ToString();
  81.                 if (item.FieldValue.Equals(""))
  82.                     item.FieldValue = null;
  83.  
  84.                 item.FieldTextValue = row["FieldTextValue"].ToString();
  85.                 if (item.FieldTextValue.Equals(""))
  86.                     item.FieldTextValue = null;
  87.  
  88.                 item.OptBox_Options = row["OptBox_Options"].ToString();
  89.                 if (item.OptBox_Options.Equals(""))
  90.                     item.OptBox_Options = null;
  91.  
  92.  
  93.                 listPrevzem.Add(item);
  94.  
  95.                 RunOnUiThread(() => { prevzemAdapter.Add(item); });
  96.             }
  97.         }
  98.  
  99.         public override void OnConfigurationChanged(Android.Content.Res.Configuration newConfig)
  100.         {
  101.             base.OnConfigurationChanged(newConfig);
  102.         }
  103.  
  104.         public void OnGetCam(Intent _intent, IList<ResolveInfo> _avalableActivities)
  105.         {
  106.             if (_avalableActivities != null && _avalableActivities.Count > 0)
  107.             {
  108.                 var dir = new Java.IO.File(
  109.                     Android.OS.Environment.GetExternalStoragePublicDirectory(
  110.                     Android.OS.Environment.DirectoryPictures), "RCG_Foto");
  111.  
  112.                 if (!dir.Exists())
  113.                 {
  114.                     dir.Mkdirs();
  115.                 }
  116.  
  117.                 _file = new Java.IO.File(dir, String.Format("avto_{0}.jpg", Guid.NewGuid()));
  118.  
  119.                 _intent.PutExtra(MediaStore.ExtraOutput, Android.Net.Uri.FromFile(_file));
  120.  
  121.                 this.StartActivityForResult(_intent, 5);
  122.             }
  123.         }
  124.  
  125.         protected override void OnActivityResult(int requestCode, Result resultCode, Android.Content.Intent data)
  126.         {
  127.             base.OnActivityResult(requestCode, resultCode, data);
  128.  
  129.             var imageView = FindViewById<ImageView>(Resource.Id.imageSending);
  130.  
  131.             // make it available in the gallery
  132.             var mediaScanIntent = new Intent(Intent.ActionMediaScannerScanFile);
  133.             var contentUri = Android.Net.Uri.FromFile(_file);
  134.             mediaScanIntent.SetData(contentUri);
  135.             SendBroadcast(mediaScanIntent);
  136.  
  137.             // display in ImageView
  138.             var fotka = MediaStore.Images.Media.GetBitmap(ContentResolver, contentUri);
  139.             imageView.SetImageBitmap(fotka);
  140.             fotka.Dispose();
  141.         }
  142.  
  143.         protected override void OnSaveInstanceState(Bundle outState)
  144.         {
  145.             base.OnSaveInstanceState(outState);
  146.  
  147.         }
  148.     }
  149. }
  150.  
  151. /// My Adapter - PrevzemAdapter.cs
  152. ///
  153. using System;
  154. using System.Collections;
  155. using System.Collections.Generic;
  156. using System.Linq;
  157. using System.Text;
  158. using System.Xml;
  159. using System.IO;
  160.  
  161. using Android.App;
  162. using Android.Graphics;
  163. using Android.Content;
  164. using Android.OS;
  165. using Android.Runtime;
  166. using Android.Views;
  167. using Android.Widget;
  168. using System.Data;
  169. using Android.Text;
  170. using Android.Content.PM;
  171. using Android.Provider;
  172.  
  173. namespace Hyundai_Servis
  174. {
  175.     [Activity(Label = "Prevzem Adapter")]
  176.     public class PrevzemAdapter : ArrayAdapter<Prevzem>
  177.     {
  178.         int resource;
  179.  
  180.         PrevzemVozila pa;
  181.  
  182.         Intent availIntent;
  183.  
  184.         IList<ResolveInfo> availableActivities;
  185.  
  186.         string[] colors = new string[] { "#FFFFFF", "#F0F0F0"};
  187.  
  188.         Context p_context = null;
  189.  
  190.         //Initialize adapter
  191.         public PrevzemAdapter(Context context, int resource, IList<Prevzem> items)
  192.             : base(context, resource, items)
  193.         {
  194.             this.resource = resource;
  195.             this.p_context = context;
  196.             this.AvailIntent = new Intent(MediaStore.ActionImageCapture);
  197.             this.AvailActivities = p_context.PackageManager.QueryIntentActivities(AvailIntent, PackageInfoFlags.MatchDefaultOnly);
  198.         }
  199.  
  200.         public override View GetView(int position, View convertView, ViewGroup parent)
  201.         {
  202.             LinearLayout view;
  203.  
  204.             //Get our items
  205.             var item = GetItem(position);
  206.  
  207.             //Inflate the view
  208.             if (convertView == null)
  209.             {
  210.                 view = new LinearLayout(Context);
  211.                 var inflater = Context.LayoutInflaterService;
  212.                 var colorPos = position % 2;
  213.                 view.SetBackgroundColor(Color.ParseColor(colors[colorPos]));
  214.                 LayoutInflater vi;
  215.                 vi = (LayoutInflater)Context.GetSystemService(inflater);
  216.                 vi.Inflate(resource, view, true);
  217.             }
  218.  
  219.             else
  220.             {
  221.                 view = (LinearLayout)convertView;
  222.             }
  223.  
  224.             var FieldDesc = view.FindViewById<TextView>(Resource.Id.txtFieldDesc);
  225.             FieldDesc.Text = item.FieldDesc != null ? item.FieldDesc : "";
  226.  
  227.             var IdRec = view.FindViewById<TextView>(Resource.Id.txtIdRec);
  228.             IdRec.Text = item.IdRec != null ? item.IdRec : "";
  229.  
  230.             var FieldId = view.FindViewById<TextView>(Resource.Id.txtFieldId);
  231.             FieldId.Text = item.FieldId != null ? item.FieldId : "";
  232.  
  233.             var FieldTextValue = view.FindViewById<EditText>(Resource.Id.editVal);
  234.             FieldTextValue.Text = item.FieldTextValue != null ? item.FieldTextValue : "";
  235.  
  236.             var ButtonValue = view.FindViewById<Button>(Resource.Id.button1);
  237.             ButtonValue.Visibility = view.Visibility == ViewStates.Gone ? ViewStates.Gone : ViewStates.Gone;
  238.  
  239.             var CamImage = view.FindViewById<ImageView>(Resource.Id.imageSending);
  240.             CamImage.Visibility = view.Visibility == ViewStates.Gone ? ViewStates.Gone : ViewStates.Gone;
  241.  
  242.             var SpinnerValue = view.FindViewById<Spinner>(Resource.Id.spinnerVal);
  243.  
  244.             bool isReadOnly = bool.Parse(item.isReadOnly);
  245.  
  246.             if (isReadOnly == true)
  247.             {
  248.                 FieldTextValue.Enabled = false;
  249.                 SpinnerValue.Enabled = false;
  250.             }
  251.  
  252.             else
  253.             {
  254.                 FieldTextValue.Enabled = true;
  255.                 SpinnerValue.Enabled = true;
  256.             }
  257.  
  258.             // if field is TextBOX_INT
  259.             if (item.FieldType == "TextBOX_INT")
  260.             {
  261.                 FieldTextValue.InputType = InputTypes.ClassNumber;
  262.             }
  263.  
  264.             // if field is TextBOX or TextBOX_INT or TextAREA
  265.             if (item.FieldType == "TextBOX" || item.FieldType == "TextBOX_INT" || item.FieldType == "TextAREA")
  266.             {
  267.                 FieldTextValue.SetSingleLine(true);
  268.  
  269.                 FieldTextValue.Visibility = view.Visibility == ViewStates.Visible ? ViewStates.Visible : ViewStates.Visible;
  270.  
  271.                 SpinnerValue.Visibility = view.Visibility == ViewStates.Gone ? ViewStates.Gone : ViewStates.Gone;
  272.             }
  273.  
  274.             // if field is TextAREA
  275.             if (item.FieldType == "TextAREA")
  276.             {
  277.                 FieldTextValue.InputType = InputTypes.ClassText;
  278.  
  279.                 FieldTextValue.SetSingleLine(false);
  280.             }
  281.  
  282.             // if field is ComboBOX or OptionBox
  283.             if (item.FieldType == "ComboBOX" || item.FieldType == "OptionBOX")
  284.             {
  285.                 FieldTextValue.Visibility = view.Visibility == ViewStates.Gone ? ViewStates.Gone : ViewStates.Gone;
  286.  
  287.                 SpinnerValue.Visibility = view.Visibility == ViewStates.Visible ? ViewStates.Visible : ViewStates.Visible;
  288.                 List<string> entries = new List<string>();
  289.  
  290.                 String rawXML = item.OptBox_Options;
  291.  
  292.                 StringReader stream = null;
  293.                 XmlTextReader reader = null;
  294.  
  295.                 DataSet xmlDS = new DataSet();
  296.                 stream = new StringReader(rawXML);
  297.                 // Load the XmlTextReader from the stream
  298.                 reader = new XmlTextReader(stream);
  299.                 xmlDS.ReadXml(reader);
  300.  
  301.                 DataSet myOPTvalues = new DataSet();
  302.                 myOPTvalues = xmlDS;
  303.  
  304.                 foreach (DataRow row in myOPTvalues.Tables[0].Rows)
  305.                 {
  306.                     var optItem = new PrevzemSpin();
  307.                     optItem.FieldValue = row["FieldValue"].ToString();
  308.                     if (optItem.FieldValue.Equals(""))
  309.                         optItem.FieldValue = null;
  310.  
  311.                     optItem.FieldTextValue = row["FieldTextValue"].ToString();
  312.                     if (optItem.FieldTextValue.Equals(""))
  313.                         optItem.FieldTextValue = null;
  314.  
  315.  
  316.                     entries.Add(optItem.FieldTextValue);
  317.                     SpinnerValue.Tag = optItem.FieldValue;
  318.                 }
  319.  
  320.                 var adapter = new ArrayAdapter<string>(p_context, Android.Resource.Layout.SelectDialogItem, entries);
  321.                 adapter.SetDropDownViewResource(Android.Resource.Layout.SelectDialogSingleChoice);
  322.                 SpinnerValue.Adapter = adapter;
  323.                 SpinnerValue.SaveEnabled = true;
  324.                 if (SpinnerValue.Adapter.Count.Equals(2))
  325.                 {
  326.                     SpinnerValue.SetSelection(1);
  327.                 }
  328.             }
  329.  
  330.             // if field is Picture_REQ
  331.             if (item.FieldType == "Picture_REQ")
  332.              {
  333.             ButtonValue.Visibility = view.Visibility == ViewStates.Visible ? ViewStates.Visible : ViewStates.Visible;
  334.             CamImage.Visibility = view.Visibility == ViewStates.Visible ? ViewStates.Visible : ViewStates.Visible;
  335.             FieldTextValue.Visibility = view.Visibility == ViewStates.Gone ? ViewStates.Gone : ViewStates.Gone;
  336.             SpinnerValue.Visibility = view.Visibility == ViewStates.Gone ? ViewStates.Gone : ViewStates.Gone;
  337.  
  338.             ButtonValue.Click += delegate
  339.             {
  340.                 pa = new PrevzemVozila();
  341.                 if (pa != null)
  342.                 {
  343.                     pa.OnGetCam(this.AvailIntent, this.AvailActivities);
  344.                 }
  345.             };
  346.             }
  347.  
  348.             return view;
  349.         }
  350.  
  351.         public IList<ResolveInfo> AvailActivities
  352.         {
  353.             set { this.availableActivities = value; }
  354.             get { return this.availableActivities; }
  355.         }
  356.  
  357.         public Intent AvailIntent
  358.         {
  359.             set { this.availIntent = value; }
  360.             get { return this.availIntent; }
  361.         }
  362.     }
  363. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement