Upgrade to Pro — share decks privately, control downloads, hide ads and more …

PhoneGap intro (Greek)

PhoneGap intro (Greek)

Μια μικρή εισαγωγή στην πλατφόρμα ανάπτυξης εφαρμογών για κινητές συσκευές.

Avatar for Fotis Adamakis

Fotis Adamakis

April 03, 2013

Other Decks in Programming

Transcript

  1. Απόφοιτος Πληροφορικής ΤΕΙ Αθήνών Front End developer @Netrobe απο 6/2011

    @fadamakis linkedin.com/in/fadamakis fadamakis.com github.com/galher Φώτης Αδαμάκης
  2. ΔΥΣΚΟΛΗ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΗΣ ΣΕ ΟΛΕΣ ΤΙΣ ΠΛΑΤΦΟΡΜΕΣ == @implementation SpeakersListViewController

    - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection: (NSInteger)section { if(section == 0) { return [[[contentProvider valueForKeyPath:@"content"] asArray] count]; } else return 0; } - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { id item = [self.items objectAtIndex: indexPath.row]; IPContentProvider *provider = [(itemisAppProviders*)contentProvider.providers providerForSpeakerByName: [item valueForKeyPath:@"name"]]; SpeakerDetailsViewController *controller = [[SpeakerDetailsViewController alloc] init]; controller.contentProvider = provider; [self.navigationController pushViewController: controller animated: TRUE]; [controller release]; }
  3. ΔΥΣΚΟΛΗ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΗΣ ΣΕ ΟΛΕΣ ΤΙΣ ΠΛΑΤΦΟΡΜΕΣ == public partial

    class SpeakerDetailsDetailsView : PhoneApplicationPage { public SpeakerDetailsDetailsView() { InitializeComponent(); } protected override void OnNavigatedTo(NavigationEventArgs e) { string selectedIndex = ""; if (NavigationContext.QueryString.TryGetValue("itemByIndex", out selectedIndex)) { int index = int.Parse(selectedIndex); DataContext = App.RootViewModelProvider.BlogpostsModelProvider().BlogItems[index]; } } }
  4. ΔΥΣΚΟΛΗ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΗΣ ΣΕ ΟΛΕΣ ΤΙΣ ΠΛΑΤΦΟΡΜΕΣ == public class

    SpeakersList extends GenericListActivity<Speaker> { List<Speaker> speakers; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setTitle("Speakers"); speakers = getItemsFromProvider(); ArrayList<AbstractRowAdapter> rowAdapters = new ArrayList<AbstractRowAdapter>(); Iterable<Speaker> items1 = speakers; for (Speaker i : items1) rowAdapters.add(new Cell1(i)); setListAdapter(new GenericItemAdapter(this, rowAdapters)); finishCreation(); }
  5. @media  screen  and  (max-­‐width:  480px){        /*  code

     for  smaller  screens  */ } @media  screen   and  (min-­‐device-­‐width:  768px){ and  (max-­‐device-­‐width:  1024px)        /*  custom  styles  */ } Responsive Web Design
  6. webkit browser σε όλη την οθόνη του κινητού χωρίς controls

    και address bar αναπτυξη σε τεχνολογίες web πρόσβαση σε πόρους της συσκευής