MujMAC.cz - Apple, Mac OS X, Apple iPod

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:

Soutěž

Sponzorem soutěže je:

IDIF

 

Kde se narodil známý fotograf František Drtikol?

V dnešní soutěži hrajeme o:

Seriály

Více seriálů



Pridavani radku do UITable postupne

Seznam témat     Nová odpověď

Přihlásit se     Registrace     Zapomenuté heslo

Re: Pridavani radku do UITable postupne

Autor: MarrLiss

12:31:12 26.09.2011

UITableView se chová poměrně inteligentně a tak nikdy neobsahuje víc řádků, než kolik jich je vidět (konkrétně je to v metodě tableView:cellForRowAtIndexPath:indexPath, kde správně používá dequeueReusableCellWithIdentifier:, které slouží k použití UITableViewCell, které jsou mimo viditelnou část). Pokud máš to xml již nahrané, tak není důvod aby si stránkoval. To má smysl, jenom kdyby si ta data načítal po částech.

Citovat příspěvek

 

Re: Pridavani radku do UITable postupne

Autor: vosy

23:11:31 22.09.2011

tak jse vyplodil kus koduu


//
// tableAddRemoveViewController.m
// tableAddRemove
//
// Created by Vosy on 9/22/11.
// Copyright 2011 __MyCompanyName__. All rights reserved.
//

#import "tableAddRemoveViewController.h"

@implementation tableAddRemoveViewController

@synthesize myTable, listOfItems;

- (void)dealloc
{
[myTable release];
[listOfItems release];
[next5item release];
[super dealloc];
}

- (void)didReceiveMemoryWarning
{
// Releases the view if it doesn't have a superview.
[super didReceiveMemoryWarning];

// Release any cached data, images, etc that aren't in use.
}

#pragma mark - View lifecycle


// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad
{
next5item = [[NSArray alloc] initWithObjects:@"next Item1", @"next Item2", @"next Item3", @"next Item4", @"next Item5", nil];

[self showItems];
[super viewDidLoad];
}


- (void)viewDidUnload
{
[super viewDidUnload];
// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
}

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
// Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}


-(NSInteger) tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return [listOfItems count];
}

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return 1;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}

cell.textLabel.text = [listOfItems objectAtIndex:indexPath.row];

return cell;
}

-(void) showItems
{
NSLog(@"Button Pressed");

listOfItems = [[NSMutableArray alloc] initWithObjects:@"item1", @"item2", @"item3", @"item4", @"item5", @"item6", @"item7", @"item8", @"item9", @"item10", @"item11", @"item12", @"item13", @"item14", @"item15",@"show next 5 items", nil];

NSMutableArray *indexPathsToInsert = [[NSMutableArray alloc] init];

for (NSInteger i = 0; i < [listOfItems count]; i++) {
[indexPathsToInsert addObject:[NSIndexPath indexPathForRow:i inSection:0]];
}

[myTable beginUpdates];
[myTable insertRowsAtIndexPaths:indexPathsToInsert withRowAnimation:UITableViewRowAnimationLeft];
[myTable endUpdates];
}

-(void) removeLastRow
{
NSLog(@"removeLastRow");

NSIndexPath *myIP = [NSIndexPath indexPathForRow:8 inSection:0];
NSArray *myArray = [[NSArray alloc] initWithObjects:myIP, nil];

[listOfItems removeObjectAtIndex:8];

[myTable beginUpdates];
[myTable deleteRowsAtIndexPaths:myArray withRowAnimation:UITableViewRowAnimationFade];
[myTable endUpdates];

[self insertNextItems];
}

-(void)scrollViewDidScroll:(UITableView *)tableView
{
NSLog(@"scrolled");

CGPoint offset = myTable.contentOffset;
CGRect bounds = myTable.bounds;
CGSize size = myTable.contentSize;
UIEdgeInsets inset = myTable.contentInset;
float y = offset.y + bounds.size.height - inset.bottom;
float h = size.height;
float reload_distance = 5;

if(y > h + reload_distance)
{
[self removeLastRow];
}

}

-(void) insertNextItems
{
NSLog(@"insertNextItems");


[listOfItems addObjectsFromArray:next5item];

NSMutableArray *indexPathsToInsert = [[NSMutableArray alloc] init];

for (NSInteger i = 0; i < [listOfItems count]; i++)
{
[indexPathsToInsert addObject:[NSIndexPath indexPathForRow:i inSection:0]];
}

[myTable beginUpdates];
[myTable insertRowsAtIndexPaths:indexPathsToInsert withRowAnimation:UITableViewRowAnimationLeft];
[myTable endUpdates];
}


@end




ale fce
-(void) removeLastRow
-(void) insertNextItems

my hazou chybu :(

Citovat příspěvek

 

Pridavani radku do UITable postupne

Autor: vosy

12:33:32 22.09.2011

Ahoja, potreboval bych trochu nasmerovat, uff :)

v iPhone aplikaci mam tabulku s daty nactene z xml.
dat z xml bude hodne napr 200radku a chtel bych udelat to aby se nacetlo prvnich 10 (coz mam udelane)

ale pak nevim jak udelat to aby kdyz uzivatel najede na konec tabulky tak aby se nacetlo dalsich 10 radku a pridaly se do tabulky, nejlepe animovane :)

jde mi o cast detekovani konce tabulky a donahrani dalsich radku.

mozna neco jako insertRowsAtIndexPaths ale nevim jak zakomponovat.

dix za smer

Citovat příspěvek

 

 

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: