スクロール後にさらにデータを読み込むためにRecyclerView
のcustomAdapterを作成しています。だから私はAddScrollListner
にRecycleView
にしなければならない。しかし私の公的コンストラクターではそれは見つかりませんでした。LinearLayoutManagerはAndroid(Xamarin)のRecycleViewでは動作しません
のAndroidコード:
public UserAdapter() {
final LinearLayoutManager linearLayoutManager = (LinearLayoutManager) mRecyclerView.getLayoutManager();
mRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
totalItemCount = linearLayoutManager.getItemCount();
lastVisibleItem = linearLayoutManager.findLastVisibleItemPosition();
if (!isLoading && totalItemCount <= (lastVisibleItem + visibleThreshold)) {
if (mOnLoadMoreListener != null) {
mOnLoadMoreListener.onLoadMore();
}
isLoading = true;
}
}
});
}
しかし、とき、私はXamarinに動作していないLinearLayoutManager
を翻訳します。
Xamarinコード:私のRecycleView
が見つからない、上のコードで
LinearLayoutManager linearLayoutManager = (LinearLayoutManager) mRecyclerView.getLayoutManager();
。
アップデート:私はこのよう
mRecyclerView. = FindViewById<RecyclerView>(Resource.Id.inventory_recycleView);
var manager = new LinearLayoutManager(this);
mRecyclerView. SetLayoutManager(manager);
mInventoryAdapter = new InventoryAdapter();
this.mRecyclerView.SetAdapter(mInventoryAdapter);
を設定している
しかし、その後も、私のアダプタクラスを使用することはできませんという。
class InventoryAdapter : RecyclerView.Adapter
{
private const int VIEW_TYPE_ITEM = 0;
private const int VIEW_TYPE_LOADING = 1;
private OnLoadMoreListener mOnLoadMoreListener;
private bool isLoading;
private int visibleThresold = 5;
private int lastVisibleItem, totalItemCount;
public override int ItemCount
{
get
{
throw new NotImplementedException();
}
}
public InventoryAdapter()
{
var layoutmanger = (LinearLayoutManager) mRecyclerView..GetLayoutManager();
}
}
ご了承ください。
LinearLayoutManager linearLayoutMgr =新しいLinearLayoutManager(getActivity()); recyclerView.setLayoutManager(linearLayoutMgr);これを試してください – Ritesh