想学用C#开发iphone 的就加入 QQ群:178290571 ,让我们共同进步吧!
C# MonoTouch for iphone 开发blog http://blog.csdn.net/ssihc0/
MonoDevelop 版本:2.8.0
MonoTouch 版本:4.2.2
UIActivityIndicatorView 向用户提供一个具有未知持续时间的任务进程的进度反馈,我称它为菊花,会旋转的菊花,用户不与活动指示器交互。
常用属性:
HidesWhenStopped 确定当控件没有动画的时候是不否显示该控件。
ActivityIndicatorViewStyle 使用
public enum UIActivityIndicatorViewStyle
{
WhiteLarge,
White,
Gray
}
枚举选择三种样式。
下面是方法和属性:
新建一个工程名为ActivityLndicator 打开ActivityLndicatorViewController
添加下面代码
namespace ActivityLndicatorView
{
public partial class ActivityLndicatorViewViewController : UIViewController
{
UIActivityIndicatorView ActivityIndicatorView;
public ActivityLndicatorViewViewController (string nibName, NSBundle bundle) : base (nibName, bundle)
{
}
public override void DidReceiveMemoryWarning ()
{
// Releases the view if it doesn't have a superview.
base.DidReceiveMemoryWarning ();
// Release any cached data, images, etc that aren't in use.
}
public override void ViewDidLoad ()
{
base.ViewDidLoad ();
ActivityIndicatorView= new UIActivityIndicatorView (new System.Drawing.RectangleF(30f,150f,60f,60f));
ActivityIndicatorView.HidesWhenStopped=true;
ActivityIndicatorView.ActivityIndicatorViewStyle=UIActivityIndicatorViewStyle.White;
this.View.AddSubview(ActivityIndicatorView);
var button =UIButton.FromType(UIButtonType.RoundedRect);
var frame=new System.Drawing.RectangleF(35f,30f,250f,40f);
button.Frame=frame;
button.SetTitle("start",UIControlState.Normal);
button.TouchUpInside += (sender, e) => {
button.SetTitle("start",UIControlState.Normal);
ActivityIndicatorView.StartAnimating();
};
this.View.AddSubview(button);
var button1 =UIButton.FromType(UIButtonType.RoundedRect);
var frame1=new System.Drawing.RectangleF(35f,80f,250f,40f);
button1.Frame=frame1;
button1.SetTitle("stop",UIControlState.Normal);
button1.TouchUpInside += (sender, e) => {
button1.SetTitle("stop",UIControlState.Normal);
ActivityIndicatorView.StopAnimating();
};
this.View.AddSubview(button1);
//any additional setup after loading the view, typically from a nib.
}
public override void ViewDidUnload ()
{
base.ViewDidUnload ();
// Release any retained subviews of the main view.
// e.g. myOutlet = null;
}
public override bool ShouldAutorotateToInterfaceOrientation (UIInterfaceOrientation toInterfaceOrientation)
{
// Return true for supported orientations
return (toInterfaceOrientation != UIInterfaceOrientation.PortraitUpsideDown);
}
}
}
代码分析:
ActivityIndicatorView=new UIActivityIndicatorView (new System.Drawing.RectangleF(30f,150f,60f,60f));
ActivityIndicatorView.HidesWhenStopped=true;
ActivityIndicatorView.ActivityIndicatorViewStyle=UIActivityIndicatorViewStyle.White;
这里建了一个样式为White,没有动画的时候不显示控件。
添加了两个UIbutton 一个是开始动画,ActivityIndicatorView.StartAnimating();
一个是结束动画,ActivityIndicatorView.StartAnimating();
运行结果:
源代码:
下载后把gif 改成zip