我在Mac mini设备上使用Visual Studio(iOS 13)中的xamarin.ios创建了一个项目。我删除了故事板文件。
我有Main.cs、AppDelegate.cs、TableView.cs和TableSource.cs文件。
Main.cs:
using System;
using UIKit;
namespace LabelWrap
{
public class Application
{
// This is the main entry point of the application.
static void Main(string[] args)
{
// if you want to use a different Application Delegate class from "AppDelegate"
// you can specify it here.
//UIApplication.Main(args, null, typeof(AppDelegate));
try
{
UIApplication.Main(args, null, "AppDelegate");
}
catch (Exception e)
{
Console.WriteLine(e.ToString());
}
}
}
}
字符串
AppDelegate.cs:
using System;
using Foundation;
using UIKit;
namespace LabelWrap
{
[Register("AppDelegate")]
public class AppDelegate : UIApplicationDelegate
{
UIWindow window;
public override bool FinishedLaunching(UIApplication app, NSDictionary options)
{
window = new UIWindow(UIScreen.MainScreen.Bounds);
window.MakeKeyAndVisible();
window.RootViewController = new TableView();
return true;
}
}
}
型
TableSource.cs:
using System;
using Foundation;
using UIKit;
namespace LabelWrap
{
public class TableSource : UITableViewSource
{
string[] TableItems;
string CellIdentifier = "TableCell";
public TableSource(string[] items)
{
TableItems = items;
}
public override nint RowsInSection(UITableView tableview, nint section)
{
return TableItems.Length;
}
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;
}
}
}
型
TableView.cs:
using Foundation;
using UIKit;
namespace LabelWrap
{
public partial class TableView : UITableViewController
{
UITableView table;
public override void ViewDidLoad()
{
base.ViewDidLoad();
View.BackgroundColor = UIColor.Green;
table = new UITableView(View.Bounds); // defaults to Plain style
string[] tableItems = new string[] { "Vegetables", "Fruits", "Flower Buds", "Legumes", "Bulbs", "Tubers" };
table.Source = new TableSource(tableItems);
table.BackgroundColor = UIColor.Yellow;
Add(table);
}
}
}
型
我的项目运行成功,但iOS模拟器(iOS 13),当我打开应用程序,显示一个黑色的屏幕.当我把一个断点在我的代码似乎一切都正确执行,但我没有看到屏幕上的任何差异.
是我在代码中遗漏了什么还是有错误?这样我在tableView中编写的结果就可以在屏幕上看到了
1条答案
按热度按时间6vl6ewon1#
你的意思是你想要这个effect?
1.打开VS for MAC并创建新项目(选择iOS Application)
1.将您的程式码移至这个项目。
1.打开info.plist并删除
Launch screen interface file base name
的值,如this。1.然后,您可以选择是否删除脚本文件。