gpt4 book ai didi

ios - 如何添加幻灯片动画?

转载 作者:行者123 更新时间:2023-11-29 05:37:26 25 4
gpt4 key购买 nike

我可以制作这样的动画:滑动到顶部隐藏 View 并展开表格 View 。向下滑动显示 View 。

我在下面的屏幕截图中说明了我想要的内容:

screenshot

最佳答案

在Xamarin IOS中,你可以尝试使用UIScrollView,将PagingEnabled设置为true,就可以实现你想要的。(在中ScrollView也是全屏的> Storyboard)

ScrollView.ContentSize = new CGSize(UIScreen.MainScreen.Bounds.Size.Width, 2*ScrollView.Bounds.Size.Height);
ScrollView.PagingEnabled = true;

TableView代码:

UITableView uITableView = new UITableView(new CGRect(0, ScrollView.Bounds.Size.Height, UIScreen.MainScreen.Bounds.Size.Width, ScrollView.Bounds.Size.Height));
string[] tableItems = new string[] { "Vegetables", "Fruits", "Flower Buds", "Legumes", "Bulbs", "Tubers", "Vegetables", "Fruits", "Flower Buds", "Legumes", "Bulbs", "Tubers"};
uITableView.BackgroundColor = UIColor.Cyan;
uITableView.Source = new TableSource(tableItems);

public class TableSource : UITableViewSource
{
string[] TableItems;
string CellIdentifier = "TableCell";

public TableSource(string[] items)
{
TableItems = items;
}
public override UITableViewCell GetCell(UITableView tableView, NSIndexPath indexPath)
{
UITableViewCell cell = tableView.DequeueReusableCell(CellIdentifier);
string item = TableItems[indexPath.Row];

//---- if there are no cells to reuse, create a new one
if (cell == null)
{ cell = new UITableViewCell(UITableViewCellStyle.Default, CellIdentifier); }

cell.TextLabel.Text = item;

return cell;
}

public override nint RowsInSection(UITableView tableview, nint section)
{
return TableItems.Length;
}
}

自定义向上 View :

UIView upView = new UIView(new CGRect(0, 0, UIScreen.MainScreen.Bounds.Size.Width, ScrollView.Bounds.Size.Height));
upView.BackgroundColor = UIColor.DarkGray;

最后将它们添加到ScrollView中:

ScrollView.Add(upView);
ScrollView.Add(uITableView);

图片如下:(为了更好地在ScrollView中显示不同的页面,为upView和uITableView设置背景颜色)

enter image description here enter image description here

进入该 Controller 时,将ContentOffSet设置为第二页,则将首先显示tableview,向下滚动时,将显示upView。

ScrollView.SetContentOffset(new CGPoint(0, ScrollView.Bounds.Size.Height), true);

如果想在滚动时添加动画,添加一个Delegate来监听DraggingStarted

ScrollView.Delegate = new ScrollViewDelegate();

public class ScrollViewDelegate :UIScrollViewDelegate
{


public override void DraggingStarted(UIScrollView scrollView)
{
//base.DraggingStarted(scrollView);
if(scrollView.ContentOffset.Y == scrollView.Bounds.Size.Height)
{
//Add Animation herer
}
}
}

关于ios - 如何添加幻灯片动画?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56905997/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com