RatingView 2.0.2
dotnet add package RatingView --version 2.0.2
NuGet\Install-Package RatingView -Version 2.0.2
<PackageReference Include="RatingView" Version="2.0.2" />
paket add RatingView --version 2.0.2
#r "nuget: RatingView, 2.0.2"
// Install RatingView as a Cake Addin #addin nuget:?package=RatingView&version=2.0.2 // Install RatingView as a Cake Tool #tool nuget:?package=RatingView&version=2.0.2
RatingView (PDRatingView)
RatingView 允许你在 Xamarin.iOS 应用程序中显示平均评分,并且可以收集用户的评分提交。
- 自定义评分图像。
- 自定义评分刻度。
- 透明背景进行组合。
示例
你可以使用任何你想要的照片以及任何你需要的缩放尺寸。许多人使用五星级。
其他人则有完全不同的东西。也许你想要一个 10 个番茄的评分。
无论你需要什么,你只需提供一个适合的矩形,它将相应地调整大小。
评分显示屏保持简洁。如果你需要将评分视图组合进其他内容中,它会很好地覆盖。
使用方法
在任何代码基础上的 UIView
或 UIViewController
中,你可以像其他任何视图一样添加一个 PDRatingView
到显示界面。
using PatridgeDev;
...
PDRatingView ratingView;
public override void ViewDidLoad() {
// Gather up the images to be used.
RatingConfig ratingConfig = new RatingConfig(
emptyImage: UIImage.FromBundle("empty"),
filledImage: UIImage.FromBundle("filled"),
chosenImage: UIImage.FromBundle("chosen")
);
// Create the view.
decimal averageRating = 3.25m;
ratingView = new PDRatingView(new CGRect(0f, 0f, View.Bounds.Width, 125f), ratingConfig, averageRating);
// [Optional] Do something when the user selects a rating.
ratingView.RatingChosen += (sender, e) => {
(new UIAlertView("Rated!", e.Rating.ToString() + " stars", null, "Ok")).Show();
};
// [Required] Add the view to the
View.Add(ratingView);
}
其他配置选项
项目之间的空隙
在你的评分项之间需要一些空间吗?只需在构建 PDRatingView
所使用的 RatingConfig
对象中设置 ItemPadding
即可。
// Put a little space between the rating items.
ratingConfig.ItemPadding = 5f;
只读(不接受用户评分输入)
如果你仅仅是为了展示评分,并没有打算收集用户的评分,你可以使用默认的 iOS 设置来阻止评分视图接收用户输入。结果,这将阻止它引发 RatingChosen
事件。
// Only display the rating; don't allow user rating.
ratingView.UserInteractionEnabled = false;
不同的评分刻度尺寸
比如说,你需要用户对事物进行 10 级的评分。这可以在构建 PDRatingView
所使用的 RatingConfig
对象中进行更改。默认是 5 项的评分刻度。
// Allow rating on a scale of 1 to 10.
ratingConfig.ScaleSize = 10;
评分四舍五入到整颗或半颗星
如果您希望平均评分以半星或整星增量显示,那么在PDRatingView
系统中并没有直接构建这样的功能,但您可以使用.NET轻松地进行适当的四舍五入,然后在设置视图的AverageRating
之前重建相同的结果。
decimal rating = 3.58m;
decimal halfRoundedRating = Math.Round(rating * 2m, MidpointRounding.AwayFromZero) / 2m;
decimal wholeRoundedRating = Math.Round(rating, MidpointRounding.AwayFromZero);
StarRating.AverageRating = wholeRoundedRating;
此包没有依赖项。
NuGet包
此包没有被任何NuGet包使用。
GitHub仓库
此包没有被任何流行的GitHub仓库使用。
版本 | 下载 | 最后更新 |
---|---|---|
2.0.2 | 28,201 | 4/24/2018 |
v2.0.2: 修正了命名空间(破坏性更新,但内部没有更改)。
v2.0.1: 更新组件和示例以支持Xamarin.iOS统一API(在最新统一API发布中的破坏性更改之后再次进行)。
v2.0.0: 更新组件和示例以支持Xamarin.iOS统一API。