//

Audio afspelen incl. plist + buttons + uislider

Audio afspelen incl. plist + buttons + uislider discussie in Ontwikkelen voor iOS forum; ( verdwijnt na registratie ) Hallo, In mijn vorige topic over dit onderwerp wilde ik graag weten hoe: - UITableView (didselectrow) - .plist - Afspelen audio bestand (.mp3) Een rij ...



Ga terug   iPhone, iPod touch, iPad en Apple TV forum > Development > Ontwikkelen voor iOS
Wachtwoord vergeten? Registreren!
Registreer FAQ Ledenlijst Kalender Zoeken Berichten van vandaag Markeer forums als gelezen
  #1  
Oud 29-12-11, 10:10
gobelz gobelz is offline
• iOS 5.1.1
• 5.1.1
• Besturingssysteem: Mac OS X
 
Geregistreerd: Mar 2008
Berichten: 95
Standaard Audio afspelen incl. plist + buttons + uislider

Hallo,

In mijn vorige topic over dit onderwerp wilde ik graag weten hoe:
- UITableView (didselectrow)
- .plist
- Afspelen audio bestand (.mp3)

Een rij wordt geselecteerd en de bijbehorende audiobestand wordt afgespeeld.

Dit heb ik opgelost met:
Code:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
	    
	NSUInteger section = [indexPath section];
	NSUInteger row = [indexPath row];
	
    NSString *key = [keys objectAtIndex:section];
    NSArray *nameSection = [names objectForKey:key];
	
	DetailViewController *detailController = [[DetailViewController alloc] initWithNibName:@"DetailViewController" bundle:[NSBundle mainBundle]];
    [self.navigationController pushViewController:detailController animated:YES];

	detailController.titel.text = [[nameSection objectAtIndex:row] objectForKey:@"name"];
	detailController.omschrijving.text = [[nameSection objectAtIndex:row] objectForKey:@"description"];
	detailController.title = [[nameSection objectAtIndex:row] objectForKey:@"name"];

    NSString *filename = [[nameSection objectAtIndex:row] objectForKey:@"sound"];
    NSLog(@"Filename equals: %@", filename);
    NSString *path = [[NSBundle mainBundle] pathForResource:filename ofType:@"mp3"];
    NSLog(@"Path equals: %@", path);
    
	NSError *error;
	//audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:&error];
	
    AVAudioPlayer *newAVAudioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:&error];    
    [self setAudioPlayer:newAVAudioPlayer];
    [newAVAudioPlayer release];
    
	audioPlayer.delegate = self;
    [audioPlayer prepareToPlay];
    [audioPlayer setNumberOfLoops:0];
    [audioPlayer play];
    
	[detailController release];

}
Nu wil ik hieraan een aantal knopjes toevoegen en een UISlider om het geluid te kunnen beheren.

Laten we zeggen:
Code:
- (IBAction) stopSound {
[audioPlayer stop];
}
Ik heb dit zowel in mijn rootview als detailview aangeroepen, maar er wordt hier niet op gereageerd.

Het aanroepen van de audio doe ik dus d.m.v. een .plist en in de 'didselectforrow' in de rootviewcontroller.

Heeft er iemand misschien tips, omdat het mij niet lukt om het met een standaard aanroep te doen.

Groet,
__________________
---- Med. iOS Developer ----
Advertentie
Advertentie Gesponsorde links (verdwijnt na registratie)

  #2  
Oud 24-01-12, 20:03
gobelz gobelz is offline
• iOS 5.1.1
• 5.1.1
• Besturingssysteem: Mac OS X
 
Geregistreerd: Mar 2008
Berichten: 95
Standaard

Iemand nog een reactie hierop? Ik ben er nog steeds niet uit..

Graag jullie hulp..
  #3  
Oud 25-01-12, 14:05
Whacko Whacko is offline
• iOS 7.1.2
• 5.1.1
• Besturingssysteem: Mac OS X
 
Geregistreerd: Jan 2009
Berichten: 484
Standaard

Weet je zeker dat de method stopSound wordt aangeroepen?
__________________
Software Engineer
iPhone Developer
  #4  
Oud 25-01-12, 14:36
gobelz gobelz is offline
• iOS 5.1.1
• 5.1.1
• Besturingssysteem: Mac OS X
 
Geregistreerd: Mar 2008
Berichten: 95
Standaard

Ik heb het anders aangepakt. Ik kwam hier gister laat in de avond nog uit.

Enkele voorbeelden:
Code:
    detailController.detailItem = [self.sur objectAtIndex: indexPath.row];
vanuit de didselectrow in de root.

Vervolgens in de detailview:
Code:
- (void)setDetailItem:(id)newDetailItem {
    
    if (detailItem != newDetailItem) {
        [detailItem release];
        detailItem = [newDetailItem retain];
        
        // Update the view.
        sur.text = [detailItem objectForKey:@"sur"];
        an.text = [detailItem objectForKey:@"an"];
        
        NSString *filename = [detailItem objectForKey:@"ar"];
        NSLog(@"Filename equals: %@", filename);
        NSString *path = [[NSBundle mainBundle] pathForResource:filename ofType:@"mp3"];
        NSLog(@"Path equals: %@", path);
        //Check of de NSLog outputs kloppen!!!!
        
        NSError *error;
        //audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:&error];
        
        AVAudioPlayer *newAVAudioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:&error];    
        [self setAudioPlayer:newAVAudioPlayer];
        [newAVAudioPlayer release];
        
        audioPlayer.delegate = self;
        [audioPlayer prepareToPlay];
        [audioPlayer setNumberOfLoops:0];
        audioPlayer.volume = 0.5;

    }
}
en vervolgens werken de actions (play en stop) zoals het hoort..

Zoals je kan zien, ik heb al het troep van didselectrow in de root overgegooid naar de detailview.. Dit werkt voor mij prettiger.. Misschien dat andere hier goeds mee hebben..

Nogmaals, bedankt voor je reactie. Kan jij hier misschien een aanvulling op geven. Is dit goed aangepakt?

Groet,

Citaat:
Oorspronkelijk geplaatst door Whacko Bekijk bericht
Weet je zeker dat de method stopSound wordt aangeroepen?
Reageren



Er zijn 1 actieve gebruikers die momenteel deze discussie bekijken (0 leden en 1 gasten)

 
Discussietools
Weergave

Soortgelijke discussies

Discussie Auteur Forum Reacties Laatste bericht
Audio/sound .plist cellforrow gobelz Ontwikkelen voor iOS 19 01-10-11 12:44
Audio afspelen via bluetooth wytsedevries Jailbreak apps en thema's 4 28-04-11 17:02
gezocht nl.plist & en.plist Semmm Jailbreak apps en thema's 3 09-04-09 14:41
Muziek van IPhone afspelen via audio installatie yves47 Muziek, foto & video 6 09-11-08 12:04
audio automatisch afspelen phpConsult Ontwikkelen voor iOS 0 13-06-08 18:06

Regels voor berichten
Je mag geen nieuwe discussies starten
Je mag niet reageren op berichten
Je mag geen bijlagen versturen
Je mag niet je berichten bewerken

BB code is Aan
Smileys zijn Aan
[IMG]-code is Aan
HTML-code is Uit
Trackbacks are Aan
Pingbacks are Aan
Refbacks are Uit



Alle tijden zijn GMT +2. Het is nu 17:01.