Tìm hiểu về thư viện trong Xamarin

Gallery (thư viện) là một kiểu view được sử dụng để hiển thị các mục trong danh sách có thể cuộn ngang. Các mục đã chọn sau đó được hiển thị ở trung tâm. Trong ví dụ này, bạn sẽ tạo một thư viện chứa các hình ảnh có thể cuộn theo chiều ngang. Một hình ảnh khi nhấp vào sẽ hiển thị một số cho hình ảnh được chọn.

Trước hết, tạo một dự án mới và đặt tên cho nó, ví dụ: Gallery App Tutorial (Hướng dẫn ứng dụng Thư viện). Trước khi bạn bắt đầu code, dán 7 hình ảnh vào esource /drawable folder. Điều hướng đến main.axml trong resources folder và thư viện ở giữa các thẻ linear layout (bố cục tuyến tính).

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
   android:orientation="vertical" 
   android:layout_width="fill_parent" 
   android:layout_height="fill_parent" 
   android:background="#d3d3d3"> 
   <Gallery 
      android:id="@+id/gallery" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:padding="10dp" /> 
</LinearLayout>

Tạo một lớp mới gọi là ImageAdapter. Lớp này sẽ được sử dụng để liên kết các hình ảnh với thư viện chúng ta đã tạo ở trên.

Bước đầu tiên là để thêm một lớp có chứa một ví dụ cont mà chúng ta sử dụng để lưu trữ các lĩnh vực.

public class ImageAdapter : BaseAdapter { 
   Context cont; 
   public ImageAdapter(Context ct) { 
      cont = ct; 
   } 
}

Tiếp theo, chúng ta đếm danh sách mảng chứa hình ảnh và trả về kích thước của nó.

public override int Count {  
   get {  
      return imageArraylist.Length;  
   }  
}

Trong bước tiếp theo, chúng ta có được vị trí của item (mục). Code sau đây cho thấy làm thế nào để làm điều đó.

public override Java.Lang.Object GetItem(int position) { 
   return null; 
}  
public override long GetItemId(int position) { 
   return 0; 
}

Trong bước tiếp theo, chúng ta tạo ra một ImageView cho các mục tham chiếu bởi adapter.

public override View GetView(int position,View convertView, ViewGroup parent) { 
   ImageView img = new ImageView(cont); 
   img.SetImageResource(imageArraylist[position]); 
   img.SetScaleType(ImageView.ScaleType.FitXy); 
   img.LayoutParameters = new Gallery.LayoutParams(200, 100); 
   return img; 
}

Trong bước cuối cùng, chúng ta tạo một tham chiếu đến các hình ảnh mà đã thêm trong thư mục resource.drawable. Để làm điều này, chúng ta tạo ra một mảng để chứa thư viện hình ảnh. Code sau đây giải thích làm thế nào để làm điều đó.

int[] imageArraylist = { 
   Resource.Drawable.img1, 
   Resource.Drawable.img2, 
   Resource.Drawable.img3, 
   Resource.Drawable.img4, 
   Resource.Drawable.img5,
   Resource.Drawable.img6, 
  }; 
}

Tiếp theo, chúng ta truy cập mainActivity.cs và chèn đoạn code sau theo phương thức OnCreate ().

Gallery myGallery = (Gallery)FindViewById<Gallery>(Resource.Id.gallery); 
myGallery.Adapter = new ImageAdapter(this); 
myGallery.ItemClick += delegate(object sender, AdapterView.ItemClickEventArgs args) { 
   Toast.MakeText(this, 
      args.Position.ToString(), ToastLength.Short).Show(); 
}

Cuối cùng, biên dịch và chạy ứng dụng của bạn để xem đầu ra.

Gallery

 

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *