在iOS中定义UITableView Cell模板的简单方法类似于在Android中使用MvxListView的方式

时间:2018-01-06 18:52:47

标签: android ios xamarin data-binding mvvmcross

目前有一种非常简单的方法可以定义add_action( 'woocommerce_thankyou', 'custom_woocommerce_auto_complete_paid_order', 999, 1 ); function custom_woocommerce_auto_complete_paid_order( $order_id ) { // Only for 'woo_credits' payment gateway if ( ! $order_id || 'woo_credits' != get_post_meta($order_id, '_payment_method', true) ) return; // Get an instance of the WC_Order object $order = wc_get_order( $order_id ); // Update order status back to 'processing' $order->update_status( 'processing' ); } 并在Android中处理它:

MvxItemTemplate

就是这样。没有其他适配器,没有并发症。仅为单元格分隔 <MvxListView android:id="@+id/grdEvents" android:layout_width="fill_parent" android:layout_height="fill_parent" android:textSize="40dp" local:MvxItemTemplate="@layout/eventslistcell" local:MvxBind="ItemsSource Events; ItemClick GoEventDetails" /> 个文件。

iOS项目有类似的方法吗? (MvvmCross文档仍然非常糟糕)。

1 个答案:

答案 0 :(得分:1)

是的!您可以定义自己的MvxTableViewCell派生自定义类,它提供用于单个单元格的布局。有关完整示例,请参阅GitHub上的WorkingWithCollections sample

简而言之,您首先将自定义单元格定义为MvxTableViewCell。您可以执行with a xib file以及without it

然后,您需要创建MvxSimpleTableViewSourceMvxStandardTableViewSource的实例,并将自定义单元格nib的名称或自定义单元格类的类型传递给它:

var tableViewSource = 
    new MvxSimpleTableViewSource( tableView, typeof( MyCustomCell ), "MyCustomCell" );

第三个参数指定了一个单元格类型标识符,如果在一个表视图中使用多个不同类型的单元格,这将非常方便。然后,系统使用它来回收所需的正确类型的单元格。

最后,您将实例设置为表格视图的Source

tableView.Source = tableViewSource;