7 namespace MonoDroid.Dialog
11 const int TYPE_SECTION_HEADER = 0;
13 LayoutInflater inflater;
17 this.context = context;
18 this.inflater = LayoutInflater.From (context);
27 int typeOffset = TYPE_SECTION_HEADER + 1;
29 foreach (var
s in Root.Sections) {
33 int size = s.Adapter.Count + 1;
39 typeOffset += s.Adapter.ViewTypeCount;
45 public override int Count {
50 foreach (var s
in Root.Sections) {
51 count += s.Adapter.Count + 1;
58 public override int ViewTypeCount {
67 foreach (var s
in Root.Sections) {
69 return this.Root.Sections [sectionIndex];
72 int size = s.Adapter.Count + 1;
73 if (position < size) {
74 return this.Root.Sections [sectionIndex].Elements [position - 1];
83 public override Section this [
int position] {
84 get {
return this.Root.Sections [position]; }
95 int typeOffset = TYPE_SECTION_HEADER + 1;
97 foreach (var s
in Root.Sections) {
99 return (TYPE_SECTION_HEADER);
101 int size = s.Adapter.Count + 1;
104 return (typeOffset + s.Adapter.GetItemViewType (position - 1));
107 typeOffset += s.Adapter.ViewTypeCount;
118 public override View
GetView (
int position, View convertView, ViewGroup parent)
120 int sectionIndex = 0;
122 foreach (var s
in Root.Sections) {
123 if (s.Adapter.Context == null)
124 s.Adapter.Context = this.context;
127 return s.GetView (context, convertView, parent);
129 int size = s.Adapter.Count + 1;
132 return (s.Adapter.GetView (position - 1, convertView, parent));
144 this.NotifyDataSetChanged ();
override int GetItemViewType(int position)
override long GetItemId(int position)
Element ElementAtIndex(int position)
override bool IsEnabled(int position)
override View GetView(int position, View convertView, ViewGroup parent)
DialogAdapter(Context context, RootElement root)
override bool AreAllItemsEnabled()
Sections contain individual Element instances that are rendered by MonoDroid.Dialog ...
_In_ size_t _In_ size_t size