簡體   English   中英

iPhone上的大活動指示器

[英]Big activity indicator on iPhone

有誰知道如何用旋轉活動指示器顯示圓角平方? 它在許多應用程序中使用。 如果您不知道我在說什么,當您在Mac上更改音量但背景較暗時,它看起來像指示器。 我不確定它是內置於iOS還是有人制作它。

就像這篇文章中的那個但不是全屏只是活動指示器如何在iPhone上創建全屏模態狀態顯示?

這是我想要顯示那種指標時使用的內容。

UIView *loading = [[UIView alloc] initWithFrame:CGRectMake(100, 200, 120, 120)]; 

loading.layer.cornerRadius = 15;
loading.opaque = NO;
loading.backgroundColor = [UIColor colorWithWhite:0.0f alpha:0.6f];

UILabel *loadLabel = [[UILabel alloc] initWithFrame:CGRectMake(20, 25, 81, 22)];

loadLabel.text = @"Loading";
loadLabel.font = [UIFont boldSystemFontOfSize:18.0f];
loadLabel.textAlignment = UITextAlignmentCenter;
loadLabel.textColor = [UIColor colorWithWhite:1.0f alpha:1.0f];
loadLabel.backgroundColor = [UIColor clearColor];

[loading addSubview:loadLabel];
[loadLabel release];

UIActivityIndicatorView *spinning = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];
spinning.frame = CGRectMake(42, 54, 37, 37);
[spinning startAnimating];

[loading addSubview:spinning];
[spinning release];

loading.frame = CGRectMake(100, 200, 120, 120);

然后,您只需將“加載”視圖添加到您選擇的視圖中即可。

希望這是你需要的。

您的屏幕截圖可能是David Sinclair的DSActivityView模塊的用法。 具體來說,它的DSBezelActivityView組件。 或者如果沒有,它是一個密切的副本。

http://www.dejal.com/developer/dsactivityview

我一直使用DSActivityView。 很棒的圖書館 在提取數據的同時拋棄這一點,讓用戶和客戶滿意。

一個選項: MBProgressHUD

我不認為截圖是我的DSBezelActivityView ; 指標看起來有點不同。 但它非常相似。

注意,DSActivityView及其子類不使用任何圖像或筆尖; 他們是純粹的代碼。

要回答原始問題,可以輕松修改DSBezelActivityView以省略全屏灰色背景。 您可以通過子類化和重寫-setupBackground方法來實現:

- (void)setupBackground;
{
    [super setupBackground];

    self.backgroundColor = [UIColor clearColor];
}

希望這可以幫助!

嘗試這個簡單的方法,它對我有用....

UIActivityIndicatorView *activityIndicator= [[UIActivityIndicatorView alloc]initWithFrame:CGRectMake(0, 0, 50, 50)];
activityIndicator.layer.cornerRadius = 05;
activityIndicator.opaque = NO;
activityIndicator.backgroundColor = [UIColor colorWithWhite:0.0f alpha:0.6f];
activityIndicator.center = self.view.center;
activityIndicator.activityIndicatorViewStyle = UIActivityIndicatorViewStyleGray;
[activityIndicator setColor:[UIColor colorWithRed:0.6 green:0.8 blue:1.0 alpha:1.0]];
[self.view addSubview: activityIndicator];

您實際上正在考慮使用兩個UIView子類和一個自定義的.png圖像來獲得您想要的外觀。 灰色半透明框將是一個UIImageView對象,為了獲得您正在尋找的效果,您需要一個帶圓角的灰色正方形的.png文件,它不需要是最終尺寸,只要至少有角落之間的直邊的一個像素,它將工作正常。 然后,您將使用UIImage stretchableImageWithLeftCapWidth:topCapHeight:方法將其加載為UIImage,這樣您可以指定圖像的頂部和左側部分必須保持不變,並且每個方向上的1像素切片將被拉伸要填寫你使用圖像的UIImage視圖.http://www.bit-101.com/blog/? p = 2275有一個很好的例子說明它的工作原理。 因此,創建一個UIImage,然后使用此圖像創建一個UIImageView,將其opaque屬性設置為NO,將alpha屬性設置為看起來不錯的東西。 添加此當前視圖的子視圖。 現在您只需要添加旋轉進度指示器,這就更容易了,只需創建一個新的UIActivityIndi​​catorView並將其添加為您已經創建的UIImageView的子視圖。 相同的基本方法用於在iOS應用程序中創建幾乎任何可調整大小的元素。 在Apple的UICatalog示例代碼中有一些將它們用於按鈕的示例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM