void InitViews()
        {
            RvRepos = FindViewById <RecyclerView>(Resource.Id.rvRepos);
            Adapter = new ReposAdapter();
            RvRepos.SetAdapter(Adapter);
            RvRepos.SetLayoutManager(new LinearLayoutManager(this));



            button        = FindViewById <Button>(Resource.Id.btnLoad);
            button.Click += delegate
            {
                Disposable = reposUseCase
                             .Get("jetruby")
                             .SubscribeOn(new TaskPoolScheduler(new TaskFactory()))
                             .ObserveOn(new UiThreadScheduler(handler, UiThreadId))
                             .Subscribe(
                    list => Adapter.addItems(list),
                    error =>
                {
                    Toast.MakeText(this, ((System.Exception)error).ToString(), ToastLength.Short).Show();
                    //Toast.MakeText(this, Resource.String.failed, ToastLength.Short).Show();
                },
                    () => { }
                    );
            };
        }
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            using (var scope = AppDelegate.Container.BeginLifetimeScope())
            {
                reposUseCase = scope.Resolve <GetReposUseCase>();
            }

            // Perform any additional setup after loading the view, typically from a nib.
            //Button.AccessibilityIdentifier = "myButton";
            //Button.TouchUpInside += delegate
            //{
            //    var title = string.Format("{0} clicks!", count++);
            //    Button.SetTitle(title, UIControlState.Normal);
            //};

            table_repos.RegisterNibForCellReuse(RepoCell.Nib, "cell_repo");
            table_repos.ReloadData();

            btn_load.TouchUpInside += delegate
            {
                Disposable = reposUseCase
                             .Get("jetruby")
                             .SubscribeOn(ThreadPoolScheduler.Instance)
                             .ObserveOn(new NSRunloopScheduler())
                             .Subscribe(
                    list => {
                    table_repos.Source = new RepoTableSource(list);
                    table_repos.ReloadData();
                },
                    error => {},
                    () => {}
                    );
            };
        }