• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

Add a UitableView in UIalert

  • Ersteller Mini-mc
  • Erstellt am

Mini-mc

Gast
Hallo,

Ich habe folgendes Problem. Ich möchte ein TableView und ein TextField in ein ViewAlert einfügen. Ich habe dazu folgenden Programmcode erstellt:
Code:
        UIAlertView *Daten = [[UIAlertView alloc]init];
        eNR = [[UITextField alloc]init];
        eNR.frame = CGRectMake(20, 45, 245, 25);
        [eNR setBackgroundColor:[UIColor blueColor]];
        [eNR setPlaceholder:@"Auftragsnummer"];
        [eNR setTag:1];
        tableFZ = [[UITableView alloc]init];
        tableFZ.delegate = self;
        tableFZ.dataSource =self;
        tableFZ.tag =1;
        tableFZ.frame = CGRectMake(20, 70, 300, 200);
        [tableFZ setBackgroundColor:[UIColor clearColor]];

        [Daten setTitle:@"Transportiert"];
        [Daten setMessage:@"Hier Details eingeben:"];
        Daten.autoresizesSubviews = YES;
        
        Daten.delegate = self;
        [Daten addButtonWithTitle:@"Ok"];
        [Daten addSubview:eNR];
        [Daten addSubview:tableFZ];
        [Daten show];

Was mache ich falsch?
Es wird zwar ein Alert angezeigt jedoch nur mit Titel und Message.
Vielen Dank im voraus!
 

frostdiver

Zwiebelapfel
Registriert
19.06.12
Beiträge
1.285
Du kannst keine subViews zu einem UIAlertView hinzufügen (seit iOS7?).
Die sinnvollste Methode ist wohl einen eigenen View zu bauen.
 
  • Like
Reaktionen: Mini-mc

Mini-mc

Gast
Meinst du View als Klasse oder Instanz in der Klasse ?
 

frostdiver

Zwiebelapfel
Registriert
19.06.12
Beiträge
1.285
Ich meinte eigentlich einen ganz eigenen AlertView. (Subclassing von UIAlertView funktioniert übrigens auch nicht)
Es gibt wohl auch noch einen View in UIAlertView, den man für eigene Zwecke gebrauchen könnte. Der scheint aber nicht public zu sein.
Deshalb:
Code:
[alertView setValue:myOwnView forKey:@"accessoryView"];
Habe ich allerdings noch nicht getestet.
 
  • Like
Reaktionen: Mini-mc

Mini-mc

Gast
Okay, vielen Dank.
Weist du zufällig ob man dann noch mal eine eigene Header und Main Datei erstellen muss?
und diese dann in den AlertView implementiert ?
Vielen Dank!
 

frostdiver

Zwiebelapfel
Registriert
19.06.12
Beiträge
1.285
Ich weiß leider nicht genau, was du jetzt wissen möchtest.

Zunächst einmal eine Anmerkung. Es hat schon seinen Grund, dass ein UIAlertView nicht beliebig erweiterbar ist. Ich denke in deinem Fall (den ich nicht so ganz verstehe) ist ein ganzseitiger modaler View vielleicht sinnvoller.

Wenn es denn doch ein AlertView sein soll, musst du ihn selberbauen oder gucken, ob es nicht vielleicht schon andere gemacht haben:
https://github.com/wimagguc/ios-custom-alertview

Von meiner oben angegebenen "Lösung" mit dem "accessoryView" kann ich dir jetzt definitiv abraten. ;)
Ich habe es mal getestet. Funktioniert bei einem normalen AlertView ganz ok. Aber schon mit einem AlertView vom Stil UIAlertViewStylePlainTextInput (den du ja offensichtlich brauchst) kommt es zu Problemen.