Hướng dẫn load ảnh lên listview bằng c
Mã: Show private void listView1_Click(object sender, EventArgs e) { try { ListViewItem i = listView1.SelectedItems[0]; Image a = Image.FromFile(i.SubItems[0].Text); pictureBox1.Image = a; } catch { } } -
http://img820.imageshack.us/img820/299/errorimage.png -
Quyền viết bài
Nội quy - Quy định ListView là phần tử View được dùng để hiện thị dữ liệu là một danh sách (mảng) từ một nguồn cấp gọi là listViewProduct = findViewById(R.id.listproduct); listViewProduct.setAdapter(productListViewAdapter); 0, các bước để tạo và sử dụng ListView gồm có: Khai báo ListView trong Layout Tương tự như các View khác, ví dụ:
Xây dựng một Adapter cho ListView ở phần dưới, sau khi có Adapter cần thiết lập cho ListView, ví dụ trong onCreate của Activity: listViewProduct = findViewById(R.id.listproduct); listViewProduct.setAdapter(productListViewAdapter); Khi đã gán Adapter vào ListView, thì ListView sẽ dùng Adapter này xác định cần hiện thị bao nhiêu phần tử, mỗi phần tử có View như thế nào do Adapter tạo và đính vào ListView, mỗi khi dữ liệu Adapter quản lý thay đổi, cần thông báo cho ListView biết mà cập nhật bằng cách gọi: adapter.notifyDataSetChanged(); Xây dựng Adapter cho ListViewNhư đã nói trên, Adapter là mô hình cung cấp dữ liệu cho ListView, nó có chức năng tạo các View phần tử, gán dữ liệu vào phần tử View con trong ListView. Để tạo ra một Adapter riêng chỉ cần kế thừa triển khai lớp trừu tượng listViewProduct = findViewById(R.id.listproduct); listViewProduct.setAdapter(productListViewAdapter); 1, trong đó cần overrided các phương thức như dưới đây (Ví dụ xây dựng lớp listViewProduct = findViewById(R.id.listproduct); listViewProduct.setAdapter(productListViewAdapter); 2): class MyAdapter extends BaseAdapter { } Ví dụ ListView trong AndroidNội dung Ví dụỨng dụng hiện thị một danh sách các sản phẩm đơn giản, sản phẩm được trình bày trong một layout có các thông tin như ID, tên sản phẩm, giá. Khi bấm vào chọn một sản phẩm, Pop up lên thông báo tên sản phẩm đó. Có chức năng cho phép xoá phần tử đầu tiên của danh sách (sau khi xoá ListView cập nhật lại) Khởi tạo Ví dụChạy Android Studio và tạo ứng dụng đặt tên, ví dụ XTLabListView bằng mẫu listViewProduct = findViewById(R.id.listproduct); listViewProduct.setAdapter(productListViewAdapter); 3, sau đó thay nội dung listViewProduct = findViewById(R.id.listproduct); listViewProduct.setAdapter(productListViewAdapter); 4 thành giao diện đơn giản, riêng có ListView như sau:
Model dữ liệu sản phẩmMỗi sản phẩm đơn giản hiện thị ID, tên sản phẩm, giá nên ta tạo ra một mô hình dữ liệu của nó như sau: //Model phần tử dữ liệu hiện class Product { }
Trong MainActivity tạo ra một mảng chứa dữ liệu mẫu các Product (dùng ArrayList), ví dụ:ArrayList Tạo Adapter cho ListView hiện thị sản phầmAdapter này xây dựng để liên kết với mảng dữ liệu sản phẩm ở trên ( listViewProduct = findViewById(R.id.listproduct); listViewProduct.setAdapter(productListViewAdapter); 5), Adapter tạo ra các View để hiện thị sản phẩm, nên đầu tiên tạo ra layout hiện thị một sản phẩm trong listview, layout này được inflate khi cần thiết. listViewProduct = findViewById(R.id.listproduct); listViewProduct.setAdapter(productListViewAdapter); 6 (bạn có thể trành bày layout theo cách đẹp đẽ, phức tạp của bạn).
Giờ là lúc tạo ra Adapter, đặt tên lớp là listViewProduct = findViewById(R.id.listproduct); listViewProduct.setAdapter(productListViewAdapter); 7, nội dung code như sau class ProductListViewAdapter extends BaseAdapter { }
Quay trở lại áp dụng, trong onCreate tạo ra đối tượng từ lớp ProductListViewAdapter (dữ liệu khởi tạo là mảng danh sách sản phẩm listViewProduct = findViewById(R.id.listproduct); listViewProduct.setAdapter(productListViewAdapter); 8), biến Adapter này đặt tên là listViewProduct = findViewById(R.id.listproduct); listViewProduct.setAdapter(productListViewAdapter); 9, sau đó gán nó cho ListView, đến đây thì ListView sẵn sàng hiện thị danh sách các sản phẩm của bạn! Ngoài ra có thêm một số đoạn code tuỳ chọn như adapter.notifyDataSetChanged(); 0 để bắt sự kiện khi bấm chọn một phần tử và bấm vào nút bấm để xoá phần tử đầu tiên. Code đầy đủ tổng hợp hoàn chỉnh lại của ứng dụng như sau: adapter.notifyDataSetChanged(); 1 package net.xuanthulab.xtlablistview; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.BaseAdapter; import android.widget.ListView; import android.widget.TextView; import android.widget.Toast; import java.util.ArrayList; public class MainActivity extends AppCompatActivity { }Ví dụ này lưu tại https://github.com/xuanthulabnet/android-listview-example, có thể tải vể bằng lệnh Git: adapter.notifyDataSetChanged(); 2 |