2012-06-20 90 views
2

我使用iOS 5,我一直在搜索,並沒有找到如果我可以使用UIProgressView與UIImage的厚進度欄。我如何使用一個小的.png文件,基本上使用UIProgressView進行擴展,使其看起來像一個進度條,或者它有可能嗎?是否有可能使.png較高,還是僅限於UIProgressView的高度?在此先感謝您的幫助!UIProgressView與UIImage自定義進度欄

回答

2

我已經找到了如何做到這一點。首先在iPhone屏幕上放置一個UIProgressView。我把它放在x:86 y:272。我將它連接到視圖控制器的.h文件,將其命名爲progView,然後將它合成到.m文件中。我把下面的代碼在viewDidLoad方法:

// Select the images to use 
UIImage *track = [[UIImage imageNamed:@"trackBar"] resizableImageWithCapInsets:UIEdgeInsetsMake(1, 1, 1, 1)]; 
UIImage *progress = [[UIImage imageNamed:@"progBar"] resizableImageWithCapInsets:UIEdgeInsetsMake(1, 1, 1, 1)]; 
// Set the track and progress images 
[self.progView setTrackImage:track]; 
[self.progView setProgressImage:progress]; 
[self.progView setProgressViewStyle:UIProgressViewStyleDefault]; // we don't need anything fancy 
// Create a bound where you want your image. This places the attached .png bars so that the bar drains downward. I was using this as a countdown bar on the iPhone. 
self.progView.frame = CGRectMake(-70, 70, self.view.bounds.size.height/1.00, 100); 
// A normal progress bar fills up from left to right. I rotate it so that the bar drains down. 
self.progView.transform = CGAffineTransformMakeRotation((90) * M_PI/180.0); 

這需要將圖像和從中間伸展它,在每一側上保留像素。儘管如此,圖像的寬度必須使用圖像編輯器進行更改。我認爲不可能拉伸寬度。

progBar.png: progBar.png trackBar.png: trackBar.png