Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Ein ListView-Element als ProgressBar anzeigen.
TBMSam
myCSharp.de - Member



Dabei seit:
Beiträge: 9
Herkunft: Friedrichshafen, Germany

Themenstarter:

Ein ListView-Element als ProgressBar anzeigen.

beantworten | zitieren | melden

Hallo Freunde,

Ich versuche gerade, eine simple Xamarin.Android-App zu erstellen, die eine Tabelle anzeigt. Sie zeigt nebst dem Table-Head ein ListView, der mehrere Elemente enthält.

Ist es möglich, dass bei Klick auf eines der Elemente die entsprechende Zeile als Ladebalken angezeigt wird, der gleichmäßig innerhalb eines bestimmten Zeitintervalls (bspw. 30 sec) von links nach rechts läuft?

Ich habe unten einen Screenshot angefügt, ich hoffe dieser zeigt die Tabelle etwas deutlicher, bzw., was ich zu tun versuche.

Zuletzt noch etwas Code, vielleicht hilft dieser auch ein wenig. Ich habe ihn etwas gekürzt, wenn ich zu viel rausgelöscht habe oder irgendetwas dadurch unverständlich wurde, lasst es mich wissen:

public class TableActivity : Activity
{
    ListView lv;
    ListAdapter adapter = null;
    protected override void OnCreate(Bundle bundle)
    {
        base.OnCreate(bundle);
        //...
        lv = FindViewById<ListView>(Resource.Id.geraeteListView);
        adapter = new ListAdapter(this, Resource.Layout.List, geraeteliste.CurrentGeraeteliste, Intent.GetStringExtra("ServerIP"))
        {
            parentActivity = this
        };
        lv.Adapter = adapter;
    }

    private async void OnItemClick(object sender, AdapterView.ItemClickEventArgs e)
    {
        if (geraeteliste.CurrentGeraeteliste[e.Position].bespielt == "J") return;
        //…
        await Task.Delay(0);
    } 
}

public class ListAdapter : ArrayAdapter
{
    //...
    public override View GetView(int position, View convertView, ViewGroup parent)
    {
        View v = convertView;
        if (v == null)
        {
            LayoutInflater inflater = (LayoutInflater)Context.GetSystemService(Context.LayoutInflaterService);
            v = inflater.Inflate(Resource.Layout.List, parent, false);
        }
        //...
        v.FindViewById<ImageView>(Resource.Id.typeImageView).SetImageResource(Resource.Drawable.Icon);
        v.FindViewById<TextView>(Resource.Id.numberTextView).Text = Geraetelist[position].geraeteplatz;
        v.FindViewById<TextView>(Resource.Id.descriptionTextView).Text = Geraetelist[position].geraeteinformation;
        ImageView iv = v.FindViewById<ImageView>(Resource.Id.bspImageView);
        iv.SetImageResource(Geraetelist[position].bespielt == "N" ? Resource.Drawable.greenPoint : Resource.Drawable.redPoint);
        //…
        return v;        
    }
}

Wäre wirklich dankbar für jeden Hinweis / jede noch zu kleine Antwort/Hilfe.^^

Liebe Grüße :)
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von TBMSam am .
Attachments
private Nachricht | Beiträge des Benutzers