Wpis z mikrobloga

Mam pytanie odnośnie tworzenia layouta pod #iosdev w #xcode . Mam taką aplikację ala grę - własne tło + własne przyciski + jakaś grafika. Aplikacja ma wspierać iphone oraz ipady. Jeśli nie używam "Use Size Classes" - to ładnie aplikacja wygląda, projektuję pod iPhone, jednak na iPadzie myślałem, że wygląd się automatycznie powiększy (czyli np. grafiki razy 2 itd), ale tak się nie dzieje (wygląd jest za mały i znajduje się on w lewym górnym rogu). Używając "Use Size Classes" - projektowanie wyglądu mi schodzi dłużej, fakt, że te elementy są porozmieszczane lepiej, ale się nie skalują na iPada (nie są większe, ponieważ ustalam z góry height/width).
Moje pytanie brzmi - jak w takim razie zrobić nie używając "Size Classes" aby wygląd automatycznie się skalował do rozdzielczości na iPada?
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@mateus02: nie ustawiaj height i width tylko odstępy od berzegu ekranu/innych elementów. Ogólnie jest kilka podejść, możesz też sprawdzić stack view controller czy Ci w niektórych miejscach nie pomoże
  • Odpowiedz
@wczoraj @JeaDay: Dzięki za odpowiedź! Ustawiałem height i width, ponieważ jeśli tego nie ustawiłem to miałem odwrotny skutek: obrazek był za duży, a nie znalazłem nigdzie wartości max-height czy max-width (wgl jest coś takiego w #xcode ?). Wiem, że w folderze asset mogę dopasować obrazki do różnych rozdzielczości, jednak łatwiej mi było je scroolować.
Nie ma w iOS możliwości ustawienia np. osobnego layoutu dla iPada? Coś na
  • Odpowiedz
@wczoraj: O widzisz, nawet nie wiedziałem, dzięki :) A co z tym auto scroolowaniem? Nie da się np. pominąć "Use Size Classes" i zrobić sztuczne dopasowanie do ekranu?
  • Odpowiedz
@mateus02: da sie ustawic uzywanie innego xib'a w różnych sytuacjach w inicie mozna zmienic:

NSString *nibName = UIUSERINTERFACE_IDIOM() == UIUserInterfaceIdiomPad ? @"iPadNib" : @"iPhoneNib";
initWithNibName:nibName bundle:nil
  • Odpowiedz
@wczoraj: O widzisz, o to mi chodziło! :) Tylko jak to będzie wyglądało dokładniej: tworzę nowy ViewController (nowy widok), dodaję na nowo wszystkie obrazki dostosowane pod iPada i później implementuję ten kod w incie starego ViewControllera? Czy muszę do nowego ViewControllera zrobić jeszcze raz wszystkie akcje przycisków itd? No bo tak myślę skąd iOS będzie wiedział, że wygląd ma wziąć z nowego dostosowanego do iPada ViewControllera, a logikę ze starego
  • Odpowiedz
@mateus02: mozesz zrobic 2 xiby na jednym view controllerze i podpiąc odpowiednie guziki czy inne rzeczy do tych samych outletów w kodzie, button "a" na jednym i drugim xibie do tego samego outletu w viewcontroller
  • Odpowiedz