2011-11-11 43 views
0

我需要一些標籤的alpha屬性更改爲隨機數生成的結果,我不知道熱,以確定爲了這些標籤在代碼中調用它們。更改alpha屬性一些標籤作爲結果的隨機數的Xcode

例如: 如果生成的數字是1,請更改包含文本「1」的標籤的alpha或hidden屬性等等。

我不知道是否存在類似的JavaScript函數的getElementById()在Xcode。

謝謝!

回答

0

您可以設置UIView的標籤屬性(這是一個NSInteger),然後使用該標識的界面元素。另外,如果你想設置爲根據的UILabel文本的α,你可以這樣做

NSInteger generatedNumber = 5; 

if ([label.text integerValue] == generatedNumber) 
    // set your alpha value 

但是請注意(NSString的integerValue方法)認爲:

的NSInteger的價值接收機文本,假設一個十進制 表示並跳過字符串開頭的空格。 返回0,如果接收器不與一些有效的十進制文本表示 開始。

如果這是一個問題,您可以使用NSScanner將NSString轉換爲NSInteger,這將允許您檢測轉換失敗。

0

想üwant3隨機no..then寫這樣的事情...

int counter = random() %3; 
if(counter == 0) 
{ 
//change alpha according to ur requirement 
} 
if(counter == 1) 
{ 
//change alpha according to ur requirement 
} 
if(counter == 2) 
{ 
//change alpha according to ur requirement 
} 
0

商店標籤在一個NSMutableArray,所以你後來有一個參考。或者,如果你真的不想把它們放在一個數組出於某種原因,你可以通過你的主視圖的子視圖迭代,並找到合適的標籤,就像這樣:

for (UIView *subview in [mainView subViews]) 
    { 
     if ([subview isKindOfClass:[UILabel class]]) 
     { 
       if ([[(UILabel *)subview text] isEqualToString:@"1"]) 
       { 
        [subview setHidden:YES]; 
       } 
     } 
    } 
2

我認爲你可以使用標籤,你可以試試下面的例子:

UILabel * aLabel = [[UILabel alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 160.0f, 30.0f)]; 
[aLabel setTag:1]; // Set tag here 
[aLabel setText:@"1"]; 
[self.view addSubview:aLabel]; 
[aLabel release]; 

UILabel * newLabel = (UILabel *)[self.view viewWithTag:1]; // Get the label here whit tag=1 
NSLog(@"%@",newLabel.text); // Print the label text with right tag 
[newLabel release]; 

但標籤只能是數字。

+0

如果你想設置的α,只是做它用正確的標籤。 ;) – Kjuly