Tôi hiện có chế độ xem danh sách hiển thị thông tin về những việc phải thực hiện.cách biết khi nào danh sách xem xong tải dữ liệu trên android
Khi người dùng nhấp vào mục trên danh sách xem, sau đó ứng dụng sẽ kiểm tra mục nào đã được nhấp và đặt là xong.
Nếu mục đã được đặt là xong, nó sẽ hiển thị số lần xem hình ảnh với séc; imageview này là một phần của mục của chế độ xem danh sách.
mọi thứ hoạt động tốt. Nếu tôi cuộn, thoát hoạt động và mở lại, bỏ chọn mục, mọi thứ hoạt động tốt và hiển thị hoặc ẩn số lần xem ảnh của mục listview tương ứng.
NHƯNG vấn đề của tôi là:
Tôi có 2 nút để sắp xếp các mục xem danh sách, theo thứ tự bảng chữ cái và theo thứ tự ngày tháng. Khi tôi nhấp vào chúng, chúng hoạt động rất tốt. NHƯNG, ứng dụng không hiển thị số lần xem hình ảnh của các mục đã được chọn.
Tôi biết điều này là do để kiểm tra xuất hiện, tôi cần danh sách xem được tải đầy đủ. Ý tôi là, hiển thị trong hoạt động với tất cả thông tin.
Câu hỏi của tôi là:
Làm thế nào tôi có thể biết khi xem danh sách được thực hiện Populating hoặc tải, vì vậy mà tôi có thể gọi phương thức đó đảm bảo các mục đã được kiểm để hiển thị các điểm ảnh?
Tôi đã sử dụng hàm isfocused(), onfocuschanged(), onWindowChangeState() và tất cả các loại phương pháp đó, nhưng không có phương thức nào hoạt động để kích hoạt phương thức của tôi.
Có cách nào để có thể biết khi nào chế độ xem danh sách được điền để kiểm tra xuất hiện trên các mục được hiển thị mà không có bất kỳ tương tác người dùng nào không?
Cảm ơn bạn đã dành thời gian và trợ giúp.
PD: Tôi đã có một phần nơi người dùng cuộn danh sách, phần đó sẽ được xử lý.
Tôi đang sử dụng SimpleCursorAdapter để điền vào chế độ xem danh sách.
Đây là nơi tôi vào chế độ xem danh sách:
public void mostrarLista(){
Cursor c = admin.obtenerCursorGastosFijos(ordenadoPor);
// The desired columns to be bound
String[] columnas = new String[] {"_id", "Descripcion", "Costo_Estimado", "Fecha_Pago"};
// the XML defined views which the data will be bound to
int[] views = new int[] {R.id.IdGstFijo, R.id.DescGstFijo, R.id.CostoGstFijo, R.id.FechaGstFijo };
// create the adapter using the cursor pointing to the desired data
//as well as the layout information
dataAdapter = new SimpleCursorAdapter(this, R.layout.lista_gastos_fijos, c, columnas, views, 0);
listaGastos = (ListView) findViewById(R.id.listaGastosFijos1);
// Assign adapter to ListView
listaGastos.setAdapter(dataAdapter);
listaGastos.setOnItemLongClickListener(new OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> Listview, View v,
int position, long id) {
// TODO Auto-generated method stub
Cursor cursor = (Cursor) Listview.getItemAtPosition(position);
String idGst=cursor.getString(cursor.getColumnIndexOrThrow("_id"));
dialogoOpcionesGst(Integer.parseInt(idGst), v).show();
return true;
}
});
listaGastos.setOnScrollListener(new OnScrollListener(){
@Override
public void onScroll(AbsListView arg0, int arg1, int arg2,
int arg3) {
// TODO Auto-generated method stub
}
@Override
public void onScrollStateChanged(AbsListView arg0, int arg1) {
// TODO Auto-generated method stub
mostrarItemsPagados(listaGastos);
}
});
}
Đây là phương pháp mà tôi đã để di chuyển các mục mà có thể nhìn thấy và xem họ đã được kiểm tra hay không
public void mostrarItemsPagados(ListView lista){
for (int i = 0; i <= lista.getLastVisiblePosition() - lista.getFirstVisiblePosition(); i++){
View item = (View)lista.getChildAt(i);
ImageView img = (ImageView)item.findViewById(R.id.imgPagado);
if(admin.existeGstFijoReal(Integer.parseInt(((TextView)item.findViewById(R.id.IdGstFijo)).getText().toString()))){
img.setImageResource(R.drawable.img_check);
}
else
img.setImageDrawable(null);
}
}
này là phương pháp tôi sử dụng để sắp xếp danh sách:
public void ordenarNombre(View v){
ordenadoPor=1;
mostrarLista();
}
và bố cục của mục trong danh sách i s:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
>
<TextView
android:id="@+id/IdGstFijo"
android:layout_height="match_parent"
android:layout_width="0dp"
android:layout_weight="2"
android:visibility="gone"
android:gravity="center"
android:lines="4" />
<TextView
android:id="@+id/DescGstFijo"
android:layout_height="match_parent"
android:layout_width="0dp"
android:layout_weight="2"
android:gravity="center"
android:lines="4" />
<TextView
android:id="@+id/CostoGstFijo"
android:layout_height="match_parent"
android:layout_width="0dp"
android:layout_weight="2"
android:gravity="center"
android:lines="4"/>
<TextView
android:id="@+id/FechaGstFijo"
android:layout_height="match_parent"
android:layout_width="0dp"
android:layout_weight="2"
android:gravity="center"
android:lines="4" />
<ImageView
android:id="@+id/imgPagado"
android:layout_height="match_parent"
android:layout_width="0dp"
android:layout_weight="1"
/>
quá dài giữ cho nó sắp xếp để bạn muốn một cái gì đó ở cuối danh sách – Trikaldarshi
Một điều nó không bao giờ kết thúc tải chỉ những mục được tải hiện đang được hiển thị khi bạn cuộn sau đó các mục khác đang được tải – Trikaldarshi
Xin chào :) và cách thế nào để tôi biết khi nào các mục hiện đang được hiển thị, được tải xong? Đó là những gì tôi cần để tôi có thể gọi phương thức của mình và đặt dấu kiểm vào các mục mà người dùng đã chọn trước đó. – user2549221