2011-07-13 7 views
0

私はPHPスクリプトから数値を取得したいと思っていますか?この番号は、ビューに追加する必要があるラベルを決定します。 PHPスクリプトは、非常に簡単であり、以下の通りです:viewdidloadでUILabelsを書くObjective-C

<?php 

echo (int)5; 

?> 

にObjCスクリプトが数を決定しなければならないとPHPスクリプトを記述するなど、多くのラベルのALSを書き込む必要があります。文字列が別のラベルに表示されているので、その番号が返されていることを確認しています。これらのラベルを私のビューにどのように書き込むのですか?

- (void)viewDidLoad 
{ 
    NSString *post = @""; 
    NSData *postData = [post dataUsingEncoding:NSISOLatin1StringEncoding allowLossyConversion:NO]; 
    NSMutableURLRequest *urlRequest = [[[NSMutableURLRequest alloc] init] autorelease]; 
    [urlRequest setURL:[NSURL URLWithString:@"http://......./testGet.php"]]; 
    [urlRequest setHTTPMethod:@"POST"]; 
    [urlRequest setHTTPBody:postData]; 


    NSData *urlData; 
    NSURLResponse *response; 
    NSError *error; 
    urlData = [NSURLConnection sendSynchronousRequest:urlRequest returningResponse:&response error:&error]; 
    if(!urlData) { 
     NSLog(@"No connection!"); 
    } 

    NSString *aStr = [[[NSString alloc] initWithData:urlData encoding:NSUTF8StringEncoding]autorelease]; 


    int i; 
    i = [aStr intValue]; 
    status.text = [NSString stringWithFormat:@"%d",i]; 

    for (int i; i <= 10; i++) 
    { 

     UILabel *mijnlabel = [[UILabel alloc] initWithFrame:CGRectMake(50, 100, 200, 100)]; 

     mijnlabel.text = @"Loremipsum"; 
     [self.view addSubview:mijnlabel]; 
    } 

    [super viewDidLoad]; 
} 
+0

? – sergio

+0

これまでのところ問題はありませんでした。しかし、私はかなり客観的に新しいです - CとPHPスクリプトから返された値を取得する方法を知らなかったし、ループでそれを使用します。 –

答えて

2

をあなたのラベルは、あなたがビューに[self.view addSubview:mijnlabel];を送信することによって、そうする権利同じ位置に全て表示されますが、次のように

は、私はいくつかのコードを得ました。

あなたはこれらのいくつかのことに注意する必要があります:あなたは右のあなたのループは、カウンタ、別の変数ではなく、あなたが文字列から解析された値として使用

  1. 方法。
  2. ビューに追加した直後に初期化したUILabelをリリースすることを忘れないでください。
  3. 最初にviewDidLoadをスーパービューに送信します。

だからあなたは、になる可能性があります:あなたはあなたが投稿コードを持っているどのような問題

// first 
[super viewDidLoad]; 

... 

NSString *aStr = [[[NSString alloc] 
        initWithData:urlData 
         encoding:NSUTF8StringEncoding]autorelease]; 
int labelsCount = [aStr intValue]; 
status.text = [NSString stringWithFormat:@"%d",labelsCounts]; 
// another way, in order to display the label under each other 
// this will display labelsCount labels 
int i; 
for(i = 0; i < labelsCount; i++) { 
    CGFloat yCoord = i * 100; 
    UILabel *mijnlabel = [[UILabel alloc] 
          initWithFrame:CGRectMake(50, yCoord, 200, 100)]; 
    mijnlabel.text = @"Loremipsum"; 
    [self.view addSubview:mijnlabel]; 
    [mijnLabel release]; 
} 
+0

そして、どのように私はお互いの下にすべてのラベルを表示するのですか? –

+0

初期化子は 'CGRect'をとり、' UILabel'のフレームを定義します。ここではラベルを(50,100)とwidth = 200、height = 100に作成しています。たとえば、カウンタを使用できます。私は答えを更新する –

+0

Thnx!それは完璧に働いた。 –