Problem beim zuweisen eines Image zum Button

L

LordPalm

Neues Mitglied
Thread Starter
Dabei seit
05.04.2011
Beiträge
19
Reaktionspunkte
0
Hi Leute,

ich habe ein kleines problem ich möchte ein button mit einem kleinem Icon belegen und wenn ich diesen drücke soll ein andere button eine etwas grösser version des bildes haben (der grund warum es ein butten sein soll ist der das ich auf diesen button eine funktion habe die mich dann in eine weitere auswahl leiten soll[switch view]. Was kann ich tun oder gibt es eine möglichkeit einem ImageView die Funktionalität eines button zu geben ?

LG
 
Nun ich habe versuch ein ImageView drüber zu legen was auch erstmal funktioniert was hier aber nicht die lösung sein kann da ich das bild was drunter liegt brauche um in die detailansicht zu dem bild kommen muss:


- (IBAction)swichtView {
HouseView *house = [[HouseView alloc] initWithNibName:nil bundle:nil];
house.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
[self presentModalViewController:house animated:YES];
[house release];
}


- (IBAction)loadPic {
UIImage *img = [UIImage imageNamed:mad:"Haus.png"];
[viewImage setImage:img];
//[img release];

}

ok hier mal mein 2 methoden.


Ich habe mir ein button1 erstellt der ein kleines Haus darstellt wenn ich nun auf diesen knopf drücke soll button2 eine grössere Variante diese bildes Zeigen.
Sinn ist es das ich eine kleine vorschau habe. So und nun soll dieser button2 wenn ich ihn drücke mir eine detailauswahl des angezeigen objektes geben(bsp. ich habe ein Haus und nun möchte ich auf der nächsten seite verschiedene Häuser sehen die ich dann per click in 3D sehen kann).

Soweit so gut nun habe ich view2 und 3 fertig und die funktionieren auch auch das wechsel der views funktionier normal.
Nur das mit dem bild wechsel will nicht so wie ich es will.

Rainer

nachtrag um deine frage genauer zu beantworten :

"• Beschreibe, welche Versuche du unternommen hast, um das Problem zu verstehen, bevor du gefragt hast.

so ganz habe ich das problem denke ich nicht verstanden da ich erst seit gestern in Objective C programmiere und vorher nur Java kennengelernt habe (Azubi AE).
 
OK, ich glaube (mit allem nötigen Respekt) Du hast ein paar ganz grundsätzliche Dinge noch nicht verstanden.

Verstehe ich es richtig, dass Du einen klassischen "Master/Detail" View aufbauen willst? Also erst eine Vorschau, dann die vollen Daten?

Dazu musst Du ja insb. dem Detail Controller (ich vermute das ist der HouseView die entsprechenden Daten mitgeben. Ich sehe nicht, dass Du das tust.

Alex
 
  • Gefällt mir
Reaktionen: Christian1313
Ok erstmal zur Grundfunktionalität des Programmes:

Ich habe eine MainView dort wird im Hintergrund irgendein Image angezeigt.
- auf der linken seite habe ich ein paar kleine button1-4 mit (bsp Haus, Auto, Boot, Fahrad) zur auswahl
- auf der rechten seite habe ich ein grösseren ButtonVorschau der mir nun ein image anzeigt von button 1-4 wenn ich denn gedrückt habe.
- So ButtonVorschau zeigt mir das bild nur ein wenig grösser an. Wenn ich nun diesen drücke komme ich auf mein View2 für bsp. Autos. dort habe ich ein überblick von verschiedenen autos.
- Und zu guter letzt habe ich ein View3 der mir nach der auswahl in View2 ein 3D Modell zeigt.

View 2 und 3 funktionieren erstmal mit festen bilder die ich hinterlegt habe sowohl die auswahl als auch das 3D Modell.
 
Ah, OK. Und was funktioniert nicht?

Alex
 
Die zuweisung von button1 mit eine haus als icon zu buttonVorschau.
Man könnte ja ein imageView drunter legen und dort das bild anzeigen (was meiner meinung nach ein schlecht programierstil ist) dort hätte ich dann aber das problem das ich ja wissen muss welcher button gedrückt wurde bzw. welches bild gerade angezeigt wird um das entsprechend View anzeigen zu können.

Ich habe momentan für jede der 4 möglichkeiten ein eigenes view(AutoView, HouseView, GebaeudeView und MoebelView).
 
In UIButton kann doch einfach ein Bild haben, das ist Dir schon klar?

Alex
 
Ja klar nur das wechsel der bilder geht nicht ganz so einfach wie mit einem ImageView (zumindest für mich nicht tue mich da wohl ein wenig schwer mit).

Wenn es die möglichkeit gibt das Ganze mit einem ImageView zu machen wäre mir das auch recht es muss hinter her halt nur so sein das ich per klick weiter komme zu der nächste view.
 
- (IBAction)loadPicCar {

UIImage *img = [UIImage imageNamed:mad:"Audi.png"];
//[viewImage setImage:img];


[switchButton setImage:img forState:UIControlStateNormal];

[img release];
}

das bild wird aber nich auf dem Button angezeigt!
 
Natürlich nicht. Mich wundert, warum Dein Programm nicht abstürzt. Warum ruftst Du "[img release]" auf?

Alex
 
Ja ok nach der Zigarette habe ich nun endlich den fehler gefunden :

man sollte wohl auch dem button sagen das er switchButtton heist und nicht drauf hoffen das er hellsehen kann *omg.
Ich danke dir für deine hilfe beim nächsten mal schaue ich dann lieber öffters hin .

LG Rainer
 
weil ich den retainCount wieder auf 1 setzen möchte oder muss ich das hier nicht tun ??

ThreeD *threeD = [[ThreeD alloc] initWithNibName:nil bundle:nil];
threeD.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
[self presentModalViewController:threeD animated:YES];
[threeD release];

hier muss ich das ja auch machen
 
weil ich den retainCount wieder auf 1 setzen möchte oder muss ich das hier nicht tun ??

So so. Und warum glaubst Du, dass das nötig ist? Bitte unbedingt mehr über Memory Management in Cocoa lesen!

Alex
 
Ok damit habe ich auf jedenfall noch meine probleme mit in Java brauchste dich um sowas nicht zu kümmer dank garb aber leider ist dies unter IOS nicht möglich.
 
Zurück
Oben Unten