- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在工作 BaseAdapter.i 有自定义 ArrayList.i 成功地在我的 ListView 中调整了我的自定义 ListView 这是我的基本适配器源
public class TransactionAdapter extends BaseAdapter {
private Context context;
private List<Transaction> transactionList;
public TransactionAdapter(Context context, List<Transaction> values) {
this.context=context;
this.transactionList=values;
}
@Override
public int getCount() {
return transactionList.size();
}
@Override
public Object getItem(int position) {
return transactionList.get(position);
}
@Override
public long getItemId(int position) {
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View v = LayoutInflater.from(context).inflate(R.layout.view_transaction_item, parent, false);
Transaction transaction = transactionList.get(position);
if (transaction != null) {
final TextView transactionName=(TextView)v.findViewById(R.id.u_transaction_name);
transaction.setAmount(transaction.getAmount().replace("-", ""));
transactionName.setText(transaction.getName());
((TextView) v.findViewById(R.id.u_transaction_status)).setText(transaction.getStatus());
((TextView) v.findViewById(R.id.u_transaction_ago)).setText(transaction.getPassedTime());
TextView date = (TextView) v.findViewById(R.id.u_transaction_date);
date.setText(UniPAYDateUtils.formatToDayMonthInWordAndYear(transaction.getDate()));
}
return v;
}
}
<ListView
android:id="@+id/u_dashboard_transactions_list"
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:divider="@null"
/>
现在我想编写 setOnScrollListener 方法,并且我想检查滚动的最后位置(如加载更多),但我无法检查最后位置这是我的 setOnScrollListener 方法
customListview.setOnScrollListener(new AbsListView.OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
currentScrollState = scrollState;
if (currentVisibleItemCount > 0 && currentScrollState == SCROLL_STATE_IDLE && totalItemCount == (currentFirstVisibleItem + currentVisibleItemCount)) {
if (!loadingMore) {
loadingMore = true;
Log.e("TAGGGGGGGGGGGGGGGGGGGGGGGGGGG","Visible Load More");
}
}
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
currentFirstVisibleItem = firstVisibleItem;
currentVisibleItemCount = visibleItemCount;
}
});
我的 setOnScrollListener 方法有什么问题?如果有人知道解决方案请帮助我谢谢大家
最佳答案
将您的滚动监听器更新为:
customListview.setOnScrollListener(new AbsListView.OnScrollListener() {
private int visibleThreshold = 5;
private int currentPage = 0;
private int previousTotal = 0;
private boolean loading = true;
@Override
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount) {
if (loading) {
if (totalItemCount > previousTotal) {
loading = false;
previousTotal = totalItemCount;
currentPage++;
}
}
if (!loading && (totalItemCount - visibleItemCount) <= (firstVisibleItem + visibleThreshold)) {
// load more items
loading = true;
}
}
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
}
});
关于java - android listview setOnScrollListener 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33822347/
我的 setOnScrollListener 有问题。每当我滚动到 ListView 的底部时,它就会一直调用我的异步任务。如何将 setOnScrollListener 设置为仅在到达底部后加载。
每次我向上或向下滚动列表时,我都会使用 OnScrollListener 隐藏(或取消隐藏)一些 View 。这是附加到我的 ListView 的代码。 lv.setOnScrollListener(
我尝试实现教程中描述的粘性标题 ListView http://javatechig.com/android/listview-header-parallax-with-sticky-view-in-
当新数据在循环中连续加载而无需用户滚动时,我在 gridview 中实现 setOnScrollListener 时遇到问题。我想等待用户滚动到末尾然后才加载新数据。如何做到这一点?这是给我无限循环而
我正在工作 BaseAdapter.i 有自定义 ArrayList.i 成功地在我的 ListView 中调整了我的自定义 ListView 这是我的基本适配器源 public class Tran
我想在用户向下滚动 >90% 时做一些事情,所以我想我可以像在 ListView 中那样添加一个 onScrollListener。不幸的是,ScrollView 似乎没有类似的方法。有什么办法可以做
当用户到达列表中可见的项目时,如何在底部显示进度条。 我编写了一段代码,我在其中使用 Web 服务获取数据,现在我想填充部分记录,因为我的 JSON 中有大约 630 条记录。 这是我用来从 JSON
setOnScrollListener 已弃用。阅读文档 from here它告诉使用 addOnScrollListener(OnScrollListener) 和 removeOnScrollLi
下面是一个代码,其中数据将在滚动时出现,但有一个错误,即类转换异常。请帮我解决这个错误。现在我已经添加了整个 fragment 类Similar_Matchs_Tab,我们可以在其中从服务器获取。 j
这是我第一次使用 onscroll 监听器。我的问题是每次向下滚动时如何获取 20 个新行?。 我知道当我向下滚动 GridView 时将执行此代码。 public void onScroll(Abs
我是一名优秀的程序员,十分优秀!