使用Xamarin.Forms快速滚动ListView

时间:2018-01-06 19:14:44

标签: android listview xamarin xamarin.forms xamarin.android

我想要我的Xamarin.Forms ListView(XAML)FastScroll。 我已经为Android编写了一个CustomRenderer并设置了Control.FastScrollEnabled = true;。但遗憾的是,这还不足以使其发挥作用。如上所述,here适配器需要实现ISectionIndexer

在我的情况下,ListView上的适配器没有(HeaderViewListAdapter)。 有没有人知道如何解决这个问题?我已经尝试为适配器编写一个包装器,但无法使它工作(从未调用过,因为我认为ListView的适配器在设置一次后无法切换)。

谢谢!

1 个答案:

答案 0 :(得分:0)

好的,我能够让它运转起来。我必须在XF中创建一个继承ListView的CustomView。在CustomRenderer中,我能够创建一个实现<?php class hidemysite_security{ public function __construct() { if (is_admin()) { register_activation_hook(__FILE__, array(&$this, 'activate')); register_deactivation_hook( __FILE__, 'my_plugin_remove_database' ); } } public function activate() { global $wpdb; $table = $wpdb->prefix . 'md_things'; $charset = $wpdb->get_charset_collate(); $charset_collate = $wpdb->get_charset_collate(); $sql = "CREATE TABLE $table ( id mediumint(9) NOT NULL AUTO_INCREMENT, time datetime DEFAULT '0000-00-00 00:00:00' NOT NULL, name tinytext NOT NULL, text text NOT NULL, url varchar(55) DEFAULT '' NOT NULL, PRIMARY KEY (id) ) $charset_collate;"; require_once( ABSPATH . 'wp-admin/includes/upgrade.php' ); dbDelta( $sql ); } public function my_plugin_remove_database() { global $wpdb; $table_name = $wpdb->prefix . 'md_things'; $sql = "DROP TABLE IF EXISTS $table_name"; $wpdb->query($sql); //delete_option("jal_db_version"); } // }

的新适配器