функция веб-сервиса cmpleted event - PullRequest
0 голосов
/ 22 февраля 2019

это мой код для отображения моих объявлений

пространство имен AbdoAdmin {[Activity (Label = "@ string / app_name", Theme = "@ style / AppTheme", MainLauncher = true)] открытый класс AllAdverises:AppCompatActivity {List tableItems;Advertise_HomeScreenAdapter adb;

    protected override void OnCreate(Bundle savedInstanceState)
    {
        base.OnCreate(savedInstanceState);
        // Set our view from the "main" layout resource
        SetContentView(Resource.Layout.AllAdvertises);

        AbdoService.abdo_service AbdoService = new AbdoService.abdo_service();
        AbdoService.selectAllAdvertisesCompleted += AbdoService_selectAllAdvertisesCompleted;
        AbdoService.selectAllAdvertisesAsync();



    }

    private void AbdoService_selectAllAdvertisesCompleted(object sender, AbdoService.selectAllAdvertisesCompletedEventArgs e)
    {
        ListView listview = FindViewById<ListView>(Resource.Id.Advertise_listView);
        tableItems = new List<Advertise_TableItem>();


        foreach (DataRow item in e.Result.table.Rows)
        {



            tableItems.Add(new Advertise_TableItem(item[1].ToString(), item[2].ToString(), item[3].ToString(), item[0].ToString()));
            adb = new Advertise_HomeScreenAdapter(this, tableItems);
            listview.Adapter = adb;
            //adb.NotifyDataSetChanged();
        }

        //listview.ItemClick += Listview_ItemClick;
    }




    private void Listview_ItemClick(object sender, AdapterView.ItemClickEventArgs e)
    {
        //var intent = new Intent(this, typeof(EditContacts));
        //intent.PutExtra("Id", tableItems[e.Position].Id);
        //StartActivity(intent);
    }







}
public class Advertise_TableItem
{
    public string pic;
    public string Discription;
    public string Title;
    public string Id;

    public Advertise_TableItem(string pic, string Discription, string Title,string Id)
    {
        this.pic = pic;
        this.Discription = Discription;
        this.Title = Title;
        this.Id = Id;

    }
}
public class Advertise_HomeScreenAdapter : BaseAdapter<Advertise_TableItem>
{
    List<Advertise_TableItem> items;
    Activity context;
    Bitmap bitmap;
    AbdoService.abdo_service AbdoService;

    public Advertise_HomeScreenAdapter(Activity context, List<Advertise_TableItem> items)
        : base()
    {
        this.context = context;
        this.items = items;
    }
    public override long GetItemId(int position)
    {
        return position;
    }
    public override Advertise_TableItem this[int position]
    {
        get { return items[position]; }
    }
    public override int Count
    {
        get { return items.Count; }
    }
    private void convert_pic(string pic)
    {
        AbdoService = new AbdoService.abdo_service();
        AbdoService.GetByteImageCompleted += AbdoService_GetByteImageCompleted;
         AbdoService.GetByteImageAsync(pic);

    }
    private void AbdoService_GetByteImageCompleted(object sender, AbdoService.GetByteImageCompletedEventArgs e)
    {
        //ImageView imageView = FindViewById<ImageView>(Resource.Id.imgView_download);
        bitmap = BitmapFactory.DecodeByteArray(e.Result.ByteImage, 0, e.Result.ByteImage.Length);
        //imageView.SetImageBitmap(bitmap);

        Toast.MakeText(context, e.Result.StatusMessage, ToastLength.Long).Show();
    }
    public override View GetView(int position, View convertView, ViewGroup parent)
    {
        var item = items[position];
        View view = convertView;
        int RealPosition = position + 1;
        if (view == null) // no view to re-use, create new
            view = context.LayoutInflater.Inflate(Resource.Layout.AllAdvertises_Ticket, null);
        convert_pic(item.pic);
        view.FindViewById<TextView>(Resource.Id.txt_Title).Text = item.Title;
        view.FindViewById<TextView>(Resource.Id.txt_Discription).Text = item.Discription;
        view.FindViewById<ImageView>(Resource.Id.imgDisAll).SetImageBitmap(bitmap);


        view.FindViewById<TextView>(Resource.Id.txt_Advertise).Text ="Advertise Num : " + RealPosition;
        return view;
    }

}}

проблема заключается в том, что функция `private void AbdoService_GetByteImageCompleted (отправитель объекта, AbdoService.GetByteImageCompletedEventArgs e) {// ImageView imageView = FindViewByIdimg; Resource.g) (Resource)bitmap = BitmapFactory.DecodeByteArray (e.Result.ByteImage, 0, e.Result.ByteImage.Length);//imageView.SetImageBitmap(bitmap);

        Toast.MakeText(context, e.Result.StatusMessage, ToastLength.Long).Show();
    }`

реализовать после того, как весь код реализован не после этой функции AbdoService.GetByteImageAsync(pic); спасибо, но почему он реализует поздно

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...