• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Was gibt es Schöneres als den Mai draußen in der Natur mit allen Sinnen zu genießen? Lasst uns teilhaben an Euren Erlebnissen und macht mit beim Thema des Monats Da blüht uns was! ---> Klick

Anfängerfrage - Welche Komponenten muss ich benutzen?

Piro299

Tokyo Rose
Registriert
03.02.10
Beiträge
70
Schönen guten Abend,

ich blutiger Anfänger mit Xcode 5. Programmiere aber schon seit 10 Jahren im Windowsbereich.

Am meisten interessiere ich mich für das Panel mit dem Bild und den Infos rechts daneben. Sowie für die Textbox darunter.
iOS7-Layout.png

Wie macht man das?

Danke im Voraus.
Sven
 

frostdiver

Zwiebelapfel
Registriert
19.06.12
Beiträge
1.285
Das sind keine Standard-iOS-Elemente. Also selber "malen".
 

Piro299

Tokyo Rose
Registriert
03.02.10
Beiträge
70
Was meinst du genau mit malen? Via Code oder eine Grafik, die ich dann in TableView packe, um es ggf. öfters anzuzeigen?
Sorry aber XCode Programmierung ist neu für mich und ich möchte den besten Weg finden.
 

frostdiver

Zwiebelapfel
Registriert
19.06.12
Beiträge
1.285
Mit malen meinte ich, dass du dir das aus verschiedenen UIViews zusammenstellst. Entweder im Code oder mit dem Storyboard. Grafiken brauchst du nicht.

Ansätze:
Die grünen Felder: Einfache Views mit grünem Hintergrund und weißen Labels, dann halt mit abgerundeten Ecken. (layer.cornerRadius=6.0 z.B. im Storyboard unter "User Defined Runtime Attributes, dann brauchste kein Code)

Für das zweigeteilte obere Hauptelement brauchste dann aber Subclasses (denke ich). Du könntest zwei Views draus machen, wenn du mit dem Storyboard-Editor flexibel bleiben willst.
In einem View malst du in der drawRect: Methode entweder mit CoreGraphics oder UIKit Graphics.
z.B. (rechter Teil), mal dir mit dem Storyboard einen View in der richtigen Größe und dann z.B.:

Code:
- (void)drawRect:(CGRect)rect
{
    UIColor* color = [UIColor colorWithRed: 0.667 green: 0.667 blue: 0.667 alpha: 1];
    CGFloat aLineWidth=2;

    UIBezierPath* rightRectPath = [UIBezierPath bezierPathWithRoundedRect: CGRectInset(self.bounds, aLineWidth, aLineWidth) byRoundingCorners: UIRectCornerTopRight | UIRectCornerBottomRight cornerRadii: CGSizeMake(4, 4)];
    [rightRectPath closePath];
    [color setStroke];
    rightRectPath.lineWidth = aLineWidth;
    [rightRectPath stroke];
}
 

Piro299

Tokyo Rose
Registriert
03.02.10
Beiträge
70
Cool. Vielen Dank für die ausführliche Erklärung. Jetzt habe ich ein besseres Verständnis.

Schönen Abend noch.
 

MaNa

Golden Delicious
Registriert
06.04.14
Beiträge
8
Ich finde mich mit dem Storyboard nicht so gut zurecht. Mit Code würde es dann ca. mit den folgenden Elementen funktionieren:

Code:
menu = [[UIImageView alloc] initWithFrame:[[UIScreen mainScreen]
                                                 applicationFrame]];
   
    menu.image = [UIImage imageNamed:@"menu.png"];
    menu.userInteractionEnabled = YES;
   
    self.view = menu;
    [self.view setMultipleTouchEnabled:YES];

    // Jetzt eine View darauf
    Screen = [[UIView alloc]
                            initWithFrame:CGRectMake(0,210,225,156];
   
    // Screen.backgroundColor= [UIColor colorWithRed:255/255.0f green:255/255.0f blue:255/255.0f alpha:1.0f];
   
    [menu addSubview:Screen];
   
   
    Label = [[UILabel alloc]
                                 initWithFrame:CGRectMake(0,0,260,40];
    Label.text=[NSString stringWithFormat:NSLocalizedString(@"Ein Text", @"Text")];
    //textInScreen.textAlignment = NSTextAlignmentCenter;
    Label.font = [UIFont fontWithName:@"Helvetica" size: 22.0];
    Label.textColor = [UIColor blackColor];
    [Screen addSubview:Label];