2013-02-15 10 views
11

Mam przykładową aplikację na iOS, która generuje wiele raportów przy użyciu danych w aplikacji. Te raporty wyglądają dokładnie tak samo jak arkusze kalkulacyjne Microsoft Excel.Tworzenie arkuszy kalkulacyjnych MS Excel za pomocą funkcji -c dla aplikacji iOS

enter image description here

Jak można wygenerować za pomocą podobnego Cel C. Nie mam pojęcia, jak utworzyć taki widok siatki. Czy mamy jakikolwiek framework wspierany przez Object-c lub jakkolwiek podobny do UITableView do tworzenia takiego arkusza kalkulacyjnego.

Każda pomoc jest bardzo doceniana.

Odpowiedz

12

Nigdy nie widziałem czegoś takiego, jak to open source, i nie sądzę, że istnieje. Więc spróbowałbym to zrobić. Myślę, że są trzy drogi:

  • HTML: To powinno być łatwiejsze do zrobienia. Używając interfejsu UIWebView do renderowania wygenerowanego wcześniej kodu HTML/CSS, możesz łatwo utworzyć ten arkusz kalkulacyjny (lub nawet użyć biblioteki JS).

  • Korzystanie z widoku siatki: albo stosując roztwór Apple (UICollectionView, ponieważ iOS 6.0) lub osoby trzeciej (AQGridView, GMGridView itp Istnieje kilka, użyłem tylko AQGridView, a jej dość kompletne) . Złożoność tutaj polega na tym, że biblioteki te są zwykle tworzone w celu wyświetlania siatki UIViews, więc nie jest łatwo sprawić, aby wyglądały one jak arkusz kalkulacyjny, który chcesz.

  • CoreGraphics: Jest to o wiele bardziej skomplikowane, ponieważ trzeba narysować wszystkie linie, a następnie narysować pola, ale jest o wiele bardziej elastyczny. Opracowałem bibliotekę do wykreślania wykresu radarowego (RPRadarChart) za pomocą Core Graphics i nie było to takie trudne. Mam repo GitHub ze wszystkimi kodu, które użyłem, aby dowiedzieć się rdzeń graficzny, jeśli chcesz, spójrz na to: RPCGSandbox

powodzenia, a jeśli okaże się lepsze rozwiązanie, proszę dać nam znać .

+0

fantastyczna odpowiedź gość .. pod wrażeniem wyjaśnienia .. Zaakceptowano, wznowiono i oferowano nagrodę za odpowiedź. :) Wspaniała praca. tak trzymaj. Pozdrawiam kodowanie –

+0

Nie ma za co, cieszę się, że się przydaje. Którą drogą weźmiesz? – Raspu

+0

Zostanie przyjęta na pierwszy sposób najlepiej .. ale zdecyduje po rozmowie z zespołem .. BTW Mogę cię szturchnąć ponownie, jeśli potrzebuję jakiejkolwiek pomocy w przyszłości: p haha ​​ –

0

Być może zechcesz zagłębić się w UICollectionView, UICollectionViewFlowLayout, a także warto przyjrzeć się ograniczeniom AutoLayout w iOS6. Pomocny odsyłacz: http://www.raywenderlich.com/20881/beginning-auto-layout-part-1-of-2

+0

Przeszedłem przez "UICollectionView" trochę, ale nie znajdując ich wygodne. Chciałem wiedzieć, czy istnieje coś podobnego do 'UITableView', gdzie określamy liczbę rzędów i sekcji z funkcją nagłówka sekcji. Określę liczbę wierszy i kolumn, nagłówków kolumn, a następnie mogę po prostu utworzyć arkusz kalkulacyjny zgodnie z moimi wymaganiami.Jeśli jest to dostępne, to byłoby to rozwiązanie dla programisty. –

+0

@Bikramjit Singh To rozwiązanie jest przeznaczone tylko dla systemu iOS 6. – SAPLogix

0

Użyj wielu tabel jako kolumn i podczas przewijania przewijaj także pozostałe. Tworzę siatkę, używając tego i było wydajne do około 10000 wierszy i 20 kolumn. Jeśli chcesz, mogę cię poprowadzić, jak to się stanie.

+0

Ummm .. Prawdę mówiąc, nie jestem zadowolony z rozwiązania, ale nadal chciałbym otrzymać od Ciebie wskazówki, ponieważ Powiedziałem, że * działało sprawnie dla ciebie *. –

+0

@hpiOSCoder Nie ma nic, co można znaleźć po wyjęciu z pudełka, możesz utworzyć, aby zaspokoić swoje potrzeby, które będą robić to, czego szukasz. – SAPLogix

3

szukałem innego rozwiązania tego problemu, ale do tej pory znalazłem: https://github.com/mochidev/MDSpreadView

Wygląda na arkuszu kalkulacyjnym i ma podobny interfejs do czego wykorzystuje UITableView. Szukałem alternatywy, ponieważ MDSpreadView nie używa ARC, ma kilka ostrzeżeń kompilatora, a kiedy stworzyłem dla niego projekt biblioteki, zauważyłem, że używa on wielu obrazów, które domyślnie nie są kopiowane.

+0

Głosowano za Twoją pomoc. Ale jak korzystać z tej biblioteki? Nie ma komentarzy poniżej, jak korzystać z –

+0

Możesz zajrzeć na https://github.com/mochidev/MDSpreadViewDemo dla wersji demonstracyjnej. – Anuj

Powiązane problemy