iphone app 開發 (四十一) random number 亂數

【如果覺得文章寫的好的話希望能按一下讚或分享喔】

本篇文章將會研究亂數的使用方法

案例非常簡單 ~

最主要就是有一個按鈕

按下去之後,上面有一個標籤就會顯示改變的數字

螢幕快照 2011-01-27 上午9.35.23

要完成這個簡單的 App

主要有三個步驟

 

第一步驟:撰寫程式碼

請先開啟一個  View-Based Application

假設命名為 random

 

接下來開始設定標頭檔,因為我們主要有一個標籤和一個按鈕

還有一個亂數值,按下按鈕後就會告訴主程式去產生一個亂數值,並顯示在 label 上面

所以 randomViewController.h 的內容如下

 

#import <UIKit/UIKit.h>

@interface randomViewController : UIViewController {
    UILabel *randomNumberText;
    int randomNumber;
}

@property(nonatomic,retain) IBOutlet UILabel *randomNumberText;  //顯示亂數值的 label

-(IBAction)buttonPressed:(id)sender; //即產生亂數的方法

@end

 

再來實做它

#import "randomViewController.h"

@implementation randomViewController

@synthesize randomNumberText;

-(IBAction)buttonPressed:(id)sender{
    int randomNumber = 1+ arc4random() %(6); //顯示從 1~6 的亂數,為 int
    randomNumberText.text =   [NSString stringWithFormat:@"%d",randomNumber];   
}

 

如果你希望一開始就先預設產生一個亂數,則可以在 viewDidLoad 裡面加上

- (void)viewDidLoad {
    [super viewDidLoad];
    randomNumber = 1+ arc4random() %(6);
    randomNumberText.text = [NSString stringWithFormat:@"%d",randomNumber];
}

 

還要記得釋放記憶體

- (void)viewDidUnload {
    self.randomNumberText = nil;
}

- (void)dealloc {
    [randomNumberText release];
    [super dealloc];
}

 

 

第二步驟:安排畫面元件

再來打開你的 xib 檔案,安排畫面如下,一個 UILabel 與一個 UIButton

螢幕快照 2011-01-27 上午9.36.15

再來請按著 ctrl 並做下面兩件事情

(1) 從 File’s Owner 拉線到 Label 上面,選擇 randomNumberText

(2) 從 Button 拉線到 File’s Owner ,選擇 buttonPressed

 

完成後,我們點 File’s Owner 應該會看到下面的安排畫面,代表設定完成

螢幕快照 2011-01-26 下午6.26.56 

 

 

第三步驟:編譯

再來就編譯看看吧,就會就會是當 View Load 的時候就自動先產生一個亂數

然後繼續按按扭,就會不斷產生其他亂數

你也可以改變 arc4random() %(6) 為其他數字,以改變亂數產生的範圍

螢幕快照 2011-01-27 上午9.35.23

 

今天測試了一下把 App 上傳到網路硬碟

所以你也可以按 這裡 下載此專案檔

Related Posts Plugin for WordPress, Blogger...
【如果覺得文章寫的好的話希望能按一下讚或分享喔】

彭其捷

想要做出很棒的產品,所以我寫程式,也研究介面 (UI) 與使用者經驗 (UX),並思考管理的法則。

【Profile】http://about.me/divaka

twitter facebookgooglepluslinkedinbloggertumblrflickryoutubedribbblerssemail


Fatal error: Uncaught Exception: 12: REST API is deprecated for versions v2.1 and higher (12) thrown in /home/content/63/7692663/html/blog/wp-content/plugins/seo-facebook-comments/facebook/base_facebook.php on line 1273