Counter

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Bin ich jetzt hier auf dem richtigen weg ?


    Quellcode

    1. #import <UIKit/UIKit.h>
    2. @interface ViewController : UIViewController{
    3. IBOutlet UILabel *NumberLabel;
    4. int Number;
    5. }
    6. -(IBAction)Plus:(id)sender;
    7. @end
    Alles anzeigen




    Quellcode

    1. #import "ViewController.h"
    2. @interface ViewController ()
    3. @end
    4. @implementation ViewController
    5. -(IBAction)Plus:(id)sender{
    6. Number += 1;
    7. int Number = [[NumberLabel text] integerValue];
    8. NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    9. [defaults setInteger:Number forKey:@"Number"];
    10. [defaults synchronize];
    11. }
    12. - (void)viewDidLoad{
    13. NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    14. int Number = [defaults integerForKey:@"Number"];
    15. NSString *NumberString =[NSString stringWithFormat:@"%d, Number"];
    16. NumberLabel.text = NumberString;
    17. [super viewDidLoad];
    18. }
    19. - (void)didReceiveMemoryWarning
    20. {
    21. [super didReceiveMemoryWarning];
    22. }
    23. @end
    Alles anzeigen
  • in deinem Label müsste dann stehen

    %d, Number
    weil du das machst

    Quellcode

    1. NSString *NumberString =[NSString stringWithFormat:@"%d, Number"];


    es sollte aber eher wie folgt sein

    Quellcode

    1. NSString *NumberString =[NSString stringWithFormat:@"%d", Number];
    Ich weiß nicht immer wovon ich rede aber ich weiß das ich Recht habe. :saint:
  • Quellcode

    1. Number += 1;
    2. int Number = [[NumberLabel text] integerValue];



    wieso erstellst du hier eine neue variable Number und speicherst die neue Variable in den UserDefaults? lass mal die 2. Zeile weg


    // Edit
    Irgendwie vermiss ich ja manchmal schon das 'Lies was Einführendes' :rolleyes:
    Knowing is not enough, we must apply.
    Willing is not enough, we must do.
  • So jetzt hab ich das problem das beim start eine 7 stellige zahl dort steht und nicht mehr null


    Quellcode

    1. ​#import "ViewController.h"
    2. @interface ViewController ()
    3. @end
    4. @implementation ViewController
    5. -(IBAction)Plus:(id)sender{
    6. Number += 1;
    7. NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    8. [defaults setInteger:Number forKey:@"Number"];
    9. [defaults synchronize];
    10. }
    11. - (void)viewDidLoad{
    12. NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    13. int Number = [defaults integerForKey:@"Number"];
    14. NSString *NumberString =[NSString stringWithFormat:@"%d", Number];
    15. NumberLabel.text = NumberString;
    16. [super viewDidLoad];
    17. }
    18. - (void)didReceiveMemoryWarning{
    19. [super didReceiveMemoryWarning];
    20. }
    21. @end
    Alles anzeigen
  • Liest du die Antworten überhaupt? Es wurden bereits alle nötigen Snippets genannt. Ich habe dir doch geschrieben, wie man den Wert einliest?! Und du schreibst wieder "i weis ned wie"... Es hat keinen Zweck, hier seitenweise gerateten Code zu posten, wenn du die Antworten nicht liest. Kauf dir ein gutes Buch mit den Basics und lies dir den gesamten Thread noch einmal durch, dann solltest du dein Problem in kürzester Zeit gelöst haben.
  • So jetzt bleibt es gespeichert
    Aber nach dem neuen Programm start, geht der Button nicht mehr und der App stürzt ab.

    Fehler (lldb)


    Quellcode

    1. ​#import "ViewController.h"
    2. @interface ViewController ()
    3. @end
    4. @implementation ViewController
    5. - (id) init {
    6. self = [super init];
    7. if (self) {
    8. Number = 0;
    9. }
    10. return self;
    11. }
    12. - (void)viewDidLoad{
    13. NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    14. [defaults setInteger:Number forKey:@"Number"];
    15. [defaults synchronize];
    16. [super viewDidLoad];
    17. }
    18. -(IBAction)Plus:(id)sender{
    19. Number += 1;
    20. NumberLabel.text = [NSString stringWithFormat:@"%D", Number];
    21. NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    22. [defaults setInteger:Number forKey:@"Number"];
    23. [defaults synchronize];
    24. }
    25. - (void)didReceiveMemoryWarning{
    26. [super didReceiveMemoryWarning];
    27. }
    28. @end
    Alles anzeigen
  • Also es kommt kein Fehler mehr, aber den wert speichern tut er auch nicht

    Quellcode

    1. ​#import "ViewController.h"
    2. @interface ViewController ()
    3. @end
    4. @implementation ViewController
    5. - (id) init {
    6. self = [super init];
    7. if (self) {
    8. Number = 0;
    9. }
    10. return self;
    11. }
    12. -(IBAction)Plus:(id)sender{
    13. Number += 1;
    14. NumberLabel.text = [NSString stringWithFormat:@"%D", Number];
    15. NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    16. [defaults setInteger:Number forKey:@"Number"];
    17. [defaults synchronize];
    18. }
    19. - (void)viewDidLoad{
    20. NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    21. [defaults setInteger:Number forKey:@"Number"];
    22. [defaults synchronize];
    23. /*[super viewDidLoad];*/
    24. }
    25. - (void)didReceiveMemoryWarning{
    26. [super didReceiveMemoryWarning];
    27. }
    28. @end
    Alles anzeigen