2009-11-08 67 views
0

我有20個HTML文件好嗎?搖iphone查看隨機html文件

我要晃動iphone,震驚之後,20個html文件之一顯示爲隨機。 我不知道目標C上的隨機值。你能幫我嗎 ?這裏是我的代碼:

#pragma mark - 
- (void)accelerometer:(UIAccelerometer *)accelerometer 
     didAccelerate:(UIAcceleration *)acceleration { 
    { 
     if (acceleration.x > kAccelerationThreshold 
      || acceleration.y > kAccelerationThreshold 
      || acceleration.z > kAccelerationThreshold) { 
      // image hidden 
      shakeIcon.hidden = YES; 

      //Random HTML view But here show only one . 
      NSString *path = [[NSBundle mainBundle] pathForResource:@"webViewContent" ofType:@"html"]; 
      NSFileHandle *readHandle = [NSFileHandle fileHandleForReadingAtPath:path]; 

      NSString *htmlString = [[NSString alloc] initWithData: [readHandle readDataToEndOfFile] encoding:NSUTF8StringEncoding]; 

      [self.falView loadHTMLString:htmlString baseURL:nil]; 
      [htmlString release]; 


     } 
    } 
} 

例如我的HTML文件名是: MYWEB 1,MYWEB 2,3,4,5,6,7,8,9 .......... ..

回答

1

我從SO或網上的某個地方挑選了這段代碼,對不起原始作者,我無法正確地歸因源代碼。沒想到我會重新發布它。我沒有進行廣泛的測試,以確保它實際上會產生

#define MYRAND(from, to) ((int)from + arc4random() % (to-from+1)) 
... 

編輯//

if (acceleration.x > kAccelerationThreshold 
    || acceleration.y > kAccelerationThreshold 
    || acceleration.z > kAccelerationThreshold) { 
    // image hidden 
     shakeIcon.hidden = YES; 

     //expect html files to be at top level of main bundle. 
     NSString *bundlePath = [[NSBundle mainBundle] bundlePath]; 

     // choose one of your html files at random 
     NSString *localPath = [[NSString stringWithFormat:@"%@/Myweb%d.html", 
      bundlePath, MYRAND(1,20)]; 

     NSURL *fileURL = [NSURL fileURLWithPath:localPath]; 
     [self.falView loadRequest: [[NSURLRequest alloc] initWithURL:fileURL]]; 

} 
+0

非常感謝你親愛的wkw ...作品很棒:) – Momi 2009-11-11 20:49:13

+0

親愛的wkw ..我又有一個問題!我想iphone震動一次沒有幾次。這意味着當iPhone震動時,其中一個html文件出現,之後我不想再次重複搖動操作。看到這部電影:http://www.momeks.com/HafezDemo.mp4 – Momi 2009-11-13 09:13:32

+0

任何答案? : - ? – Momi 2009-11-15 20:08:32

2

您可以通過使用rand()來獲得一個隨機數。看看generating random numbers in objective c

+2

+1,任何你可以在C你可以在Objective-C做。 – 2009-11-08 18:20:53

+1

我明白'arc4random()'是一個更好的隨機數發生器 – mga 2009-11-08 21:37:52

+1

哦,當然,如果你正在構建一個加密工具,你需要非常好的隨機數,但是呈現的域很小,根本就不重要。 – stimms 2009-11-08 21:56:50